...
Category | Requirement | Besu Community Response |
Legal | All code has been made available under the Apache License and is free of incompatible dependencies | Complete. |
Project name has been checked for trademark issues | Complete. | |
DCO check | Besu Repo: (lftools) user@dev > ~/Projects/besu > (master) $ git id Run by David Huseby | |
License check | Notes for besu scan 2019-10-24:
Scan report: | |
Community Support | The project must have an active and diverse set of contributing members representing various constituencies | Hyperledger Besu has had an active community. We have 55 contributors (as of July 2019) and over 200 members of our public Gitter channel and 70 on RocketChat. There have been 28 external contributors since the projects’ inception in November 2018 with 111 external contributions total. |
The project is not highly dependent on any single contributor (there are at least 3 legally independent committers and there is no single company or entity that is vital to the success of the project) | While PegaSys is the main organization that is contributing to Besu, there are several organizations and contributors contributing to Besu, including web3labs. We have instituted a process for adding external maintainers with our first external maintainer being voted on these past few weeks. | |
Release plans are developed and executed in public by the community. | The releases of Pantheon and now Besu have been in a public forum available on the GitHub and the Gitter channel, and RocketChat. We also have set up a bi-weekly contributor call in which release activities are discussed. Meeting minutes and agendas are posted publicly on the Besu Wiki. | |
Test | Sufficient test coverage | See below. |
The project must include a comprehensive unit and integration test suite and document its coverage. Additional performance and scale test capability is desirable. | Currently there are comprehensive unit, integration and acceptance tests with Besu. Merges to master are prevented if there are failing tests. Performance and scale testing is under development through a partnership with WhiteBlock. | |
Documentation | Sufficient user documentation | Hyperledger Besu team maintains a robust documentation site here. |
The project must include enough documentation for anyone to test or deploy any of the modules. | Done. See above. | |
Alignment | Requirements fulfillment | Hyperledger Besu team maintains a robust Documentation site that provides details on requirements, use cases, and other expectations for the project. |
The project must document what requirements and use cases it addresses. | Hyperledger Besu team maintains a robust Documentation site that provides details on requirements, use cases, and other expectations for the project. | |
The project must document how it fits within the Hyperledger Architecture | Besu’s architecture can be seen in this blog post. Because it's a mainnet Ethereum client, Besu represents some new considerations and opportunities for the Architecture Working group which require further discussion. | |
Compatibility with other Hyperledger projects | This is a work in progress that we are excited to continue to engage with the community on. Our team attended the maintainer summit Oct. 8-9 to begin exploring these options. | |
Where applicable, the project should be compatible with other active projects. | This is a work in progress that we are excited to continue to engage with the community on. | |
Alignment | Release numbering: the project should use the Hyperledger standard release taxonomy, once that is agreed upon. | Besu uses the appropriate naming taxonomy. |
Project must make a release, even a “developer preview”, before graduation. | The past releases and the respective documentation for Hyperledger Besu can be found here. | |
Infrastructure | Gerrit or Github repo has been created | Done and code has been moved. https://github.com/hyperledger/besu |
Mailing lists have been created and are archived | ||
Other communication means used, such as slack channels, are set up | Done: | |
Project is set up with Continuous Integration | Done | |
All information necessary for someone to join the community and be able to start contributing is duly documented (location of repo, list of maintainers, mailing lists addresses, slack channels if used, etc) following the Hyperledger Project standard practice (CONTRIBUTING.md, MAINTAINERS.txt, SECURITY.md, etc) | We currently have documentation in the current Docs and Wiki site referenced above. | |
CII Badge | A team seeking to graduate from incubation shall have started the CII Badge application and be nearly complete with incomplete badge requirements referenced in their graduation proposal. 100% of the applicable criteria for the CII Badge is a requirement for releasing a 1.0 of the project. That does not mean the project must have 100% of all criteria, just 100% of the applicable criteria. This is to allow for projects such as test harnesses, that have “N/A” answers for questions that don't offer that as an option. | CII Badge was completed. Seen here. |
Other Considerations | Sufficient real world use The project should be used in real applications and not just in demos. Because not all real applications may be discussed publicly, in such cases statements providing as much detail as possible should be made. Sufficient scalability The project must demonstrate sufficient scalability and document its scalability over various dimensions such as:
Minimum test code coverage expected, such as, for example:
| Besu has several real world use cases. There are several that are not public. Here are links to a couple of public real world applications being developed using Hyperledger Besu: Scalability - PegaSys has performed several monitoring and benchmarking assessments of Besu. PegaSys also has a research & development team fully dedicated to the long-term scalability of Ethereum and Hyperledger Besu. |
...