This is a list of considerations TSC members apply to inbound project contributions.
(Arun) Goal: Provide space under Hyperledger for a project that has high potential to grow in the community. The project shall be conceptually implemented and in use. Otherwise Hyperledger Labs is the place to grow up before incubation under the Hyperledger.
Codebase
- (Danno) Code should exist as open source software in some form
- Some projects come up from labs (Cactus, others?)
- Some projects have stand alone governance prior to joining (Besu ... others?)
- (Danno) Codebase should be Apache 2 licensable, without encumbrances
- Non-apache 2 licensed code is possible, but requires Governing board approval (Section 12 subsection d of the Hyperledger Charter)
- Required patent licensing issues have prevented projects from entering incubation
- Special examination should be given to copyleft and non-licensed code.
- (Arun) Answer the checklist (TODO: come up with a checklist) for a new project's proposal in terms of license/copyright, DCO requirements, file structure/repo requirement, CI/CD requirement, release process.
Maintainers
- (Danno) The project should have multiple maintainers
- These maintainers need not be from different companies
- However, having maintainers from different companies is seen as a positive sign (Hart)
- Proposals with only one maintainer have been rejected by prior TSCs.
- These maintainers need not be from different companies
- (Arun) Come up with a plan to promote contributors into maintainers. Get this plan published as part of project proposal.
- (Arun) The project either has demonstrable examples of POC/production uses publicly available or has backing of more than one organization/individuals (should be able to demonstrate significant contribution in codebase, should also be able to demonstrate that this engagement is long term ~ex: 3 months long or at least 35% of the codebase contributions).
Legal
- (Tracy) Trademark concerns – project names should not be trademarked by a contributing company or if it is, then the trademark will need to be handed over to Hyperledger.
...
- (Tracy) The TSC has mentioned that they are not interested in bringing in additional distributed ledger projects. There should be a distinct advantage for a new distributed ledger project.
- (Tracy) Based on the HIP template, dependent project's maintainers must sign off on the proposal before it is considered by the TSC.
- (Danno) What is a dependent project? What is the difference between a dependent project and one used as a library vs. an optional integration? What if multiple projects are integrated, can one block admission?
- (Arun) https://hyperledger.github.io/hyperledger-hip/ lists that a new project proposal must be floated in mailing list such as TSC's before submitting a HIP.
Charter
- (Arun) The project at the time of proposal must meet Hyperledger's charter as defined and amended on time to time.
- (Arun) TSC may decide to go through in depth and understand the project, ask for special sessions. There is no fixed timeline as to when TSC makes a decision. Project proposal can bring the topic back to TSC if there are no action items pending and all questions are answered with documents to demonstrate the completion.
- (Arun) Publish the project's charter in advance through Hyperledger channels (maybe a blog, an article, social media promotion). Call for public review comments on project's charter.
Documents
- (Arun) Make existing source code and relevant documentations, design discussions available in public. Keep them in review before bringing for discussion in TSC meeting.
Proposal Process
- (Arun) Follow the guidelines listed at https://hyperledger.github.io/hyperledger-hip/
- (Arun) Update checlist items for tools/website/writing blogs/marketing etc. (TODO: come up with a checklist). This becomes important as the community and number of projects grow.