ZIP 1014 allowed for a continuation of block reward allocation to the ECC and ZF beyond the original termination date.
As a condition of the continued funding, ZIP 1014 included the following:
All substantial software whose development was funded by the Dev Fund SHOULD be released under an Open Source license (as defined by the Open Source Initiative 5), preferably the MIT license.
Clearly the intent was to push major development efforts to be released under the permissive MIT license. However, this was not strictly required.
Voters (including myself) viewed this as a reasonable statement. Surely good-faith actors would prefer to release code under the same MIT license as before, right?
Instead, we got a brand new, silly BOSL “open source” license that nobody wanted, and that is incompatible with every other open source project out there.
Lesson learned. ZIP 1014 should be far stricter if the ECC (or any other entity receiving funds from the block reward) are going to regularly act against community expectations for no clear reason. They are taking advantage of the fact that the MIT license is not a requirement to retain licensing power for the for-profit company.
I propose a simple, clear amendment. Additions in bold:
All substantial software whose development was funded by the Dev Fund SHOULD be released under an Open Source license (as defined and approved by the Open Source Initiative 5), preferably the MIT license. All software funded this way that will be used in any core Zcash implementation MUST be MIT licensed.
I believe SHOULD
was used primarily to protect the ZF if they sensibly issued a grant to design an interesting closed-source application with Zcash. No one reasonably wanted or expected the situation we have now with a core part of the Zcash consensus code being released under a restricted license that could result in legal actions against those who fork Zcash, Ycash style.
I’m open to better final wording. I’m just kicking off the discussion. This discussion is ultimately one of the only ways to hold the ECC accountable. Luckily, ZIP 1014 contains this interesting section (“conditions” includes the license condition paragraph):
BP, ECC, and ZF MUST contractually commit to each other to fulfill these conditions, and the prescribed use of funds, such that substantial violation, not promptly remedied, will permit the other party to issue a modified version of Zcash node software that removes the violating party’s Dev Fund slice, and use the Zcash trademark for this modified version. The slice’s funds will be reassigned to MG (whose integrity is legally protected by the Restricted Fund treatment).
This creates a possible real, legally enforceable pressure against the ECC to comply with this modified ZIP 1014.
It sucks that the ECC decided to add this unexpected restrictive license to community-funded code, but here we are. We’re well past the point where they could have backed down in good faith following the severe negative feedback. Continuing with this license strongly strays from the goodwill and flexibility currently permitted. ZIP 1014 thus should be changed to disallow this.