Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Indy is a healthy project. Indy’s codebase has 23962 commits from 177 unique contributors. This represents an increase of 7 contributors this quarter and about 2,000 additional commits. We had commits from 41 different authors in the last three months. Forums and chat channels are monitored and a variety of participants are contributing helpful responses to questions.

...

We continue to track the same issues as in previous quarters.

Incompatible agent implementations

Update:

The launch of project Aries had the intended effect of focusing attention on standards for agent implementations. We will continue to support that effort as we migrate portions of Indy SDK into Aries core libraries. We will not be tracking this as an issue in our future quarterly reports.

Measuring the size and make-up of our user community

We are paying attention to key metrics, but have not yet established a formal method of tracking specific progress. This is an area where Hyperledger could assist.

Progress made:

Update:

We played a bit with tools for counting contributors, but no other significant progress.

...

Future work planned:

  • We expect that the Indy contributor community will continue to shrink as much of the attention shifts to Aries.
  • Work with Hyperledger to get analytics about web sites, and Rocket Chat usage. 
  • Begin measuring usage of the Sovrin forums: new contributors, questions asked, and questions answered
  • We will also explore the use of Githubs Github's contributor tool. 

Build Issues

Update:

Our We continue to transition to a the GitLab CI build pipeline using resources contributed by the developer community and managed by the Sovrin Foundation .

Progress made:

  • The team at the Sovrin Foundation is making progress reimplementing the pipeline for Indy-SDK using Gitlab CI.

Further remediation planned:

is going slower than expected. The Indy SDK pipeline is complex, and GitLab's integration with GitHub is not yet mature. We have found credible solutions to the problems we have seen, but the project has not had sufficient developer focus to come to completion. We are still relying on the Jenkins instance managed by the Sovrin Foundation for our production CI / CD pipeline.

Future work planned:

  • We need a new commitment from the various teams who have expressed interestOther teams are committed to help move the other Indy pipelines to the GitLab infrastructure.

Releases

August 2019:

Indy SDK 1.11.0

...

  • Minimal EXPERIMENTAL support of Fully-Qualified identifiers:
    • omit or set "1.0" to use unqualified identifiers.
    • set "2.0" to use fully qualified identifiers.
    • added correspondent did qualify command to Indy-CLI.
    • general format of fully-qualified identifier is <prefix>:<method>:<value>.
    • extended did_info parameter of indy_create_and_store_my_did function to accepts optional method_name filed. This field should be used to create fully qualified DID.
    • all functions can work with fully-qualified identifiers (new way) as well as with unqualified.
    • added a new function -- indy_to_unqualified -- that gets unqualified form of a fully qualified identifier.
    • proof requests now support versioning (ver field) -- now it specifies whether restrictions are full qualified or not.
    • omit or set "1
    • .
    • 0" to use unqualified identifiers.
    • set "2.0" to use fully qualified identifiers.
    • The same format of identifiers will be used in generated proof and must be used for proof verification.
    • added a new function -- indy_qualify_did -- that updates DID stored in the wallet to make it fully qualified, or to do other DID maintenance.
    • added correspondent did qualify command to Indy-CLI
    • .
    • all functions in Ledger API can accept fully-qualified identifiers but always return results in an unqualified form.
    • extended VCX provisioning config to accept optional did_method filed. This field should be used to create fully qualified DIDs.
  • Migrated Android onto the API v21 and NDK 20.
  • Supported MacOS builds for Indy CLI.
  • The default value of Protocol Version was changed on 2. Henceforth indy_set_protocol_version function should be called if you are going to work with Indy-Node 1.3 and less.
  • Bugfixes

...

Overall Activity in the Past Quarter

Key activity over the past quarter:

  • Migrating large parts of indy-agent, indy-hipe and indy-sdk to Aries, including infrastructure such as Jira issues.
  • Improving the ledger to make it more stable, performant, provably correct, and easy to maintain. We made a lot of progress and are really pleased with Plenum.

Our contributor community collaborates a lot on Jira issues, in pull requests, using Rocket Chat, and in weekly meetings. But we don't use the mailing list very much. We do not have clear analytics, but the majority of questions appear to receive answers within a few days.

Current Plans

  • We are increasingly pushing contributors who want to add new features to the Indy SDK to focus instead on the Aries libraries. This impacts the language wrappers the most.
  • However, we are continuing to maintain Indy SDK and wrappers for existing users to allow them a smooth transition, including adding compatibility for Aries protocols to LibVCX.
  • The next round of ledger work will remove the RBFT replicas, instead implementing Aardvark BFT. This addresses a number of issues we see with replicas, and should significant improve performance and scalability giving us headroom in the adoption of production Indy networks for some time to come.
  • Other initiatives include improving CI / CD (as described above), adding support for W3C DID and Verifiable Credential primitives, and adopting the new approach to revocation provided by Ursa's anoncreds 2.

Maintainer Diversity

The bi- weekly Indy Maintainers call continues to be the medium by which maintainers coordinate work, discuss critical issues to the Indy codebase, and agree on HIPEs. No new Indy maintainers were added in the last quarterIn the past quarter, the teams at the Sovrin Foundation and at Kiva have been much more involved in maintaining Indy. There is a proposal to start cross-organizational reviews of pull requests in order to increase knowledge sharing, but we don't yet have commitments from sufficient organizations.

Contributor Diversity

Fewer people work on Indy now that many contributors have moved their efforts to new projects like focus instead on Ursa and Aries that focus on their specific interests. Most Indy contributions are made by the Sovrin Foundation, Evernym, and the government of British Columbia. This quarter we saw an increased number of issues being opened by people trying to use the Indy code base, and we aim to nurture these users into contributors. Evernym still sponsors the majority of development, but the developers at the Sovrin Foundation are confident in the code base. Developers from the government of British Columbia, Deutsche Telekom, and Kiva are increasingly familiar with the code base on a deep level.

POCs, Pilots, Projects

There are now too many Indy projects to list them all here. Recent public disclosures include:

Additional Information

Reviewed by