Participate in open sourcing code to the Apache Software Foundation

Hey folks,

We are moving to donate Cava ( to the Apache Software Foundation.

Here is the original mailing list thread:

Here is the proposal on the incubator wiki:

We’re looking for volunteers to join the project and help build a vibrant community around this code.

Please ask away any questions here and consider joining the mailing list to signal interest.

Thank you!

1 Like

Probably of interest to @ligi who does lots of Kotlin stuff.

Thanks for the ping. I am aware of cava and respect the work (especially the devp2p implementation).
That said:I do not see myself joining this community directly. Background: I started KEthereum with a similar scope around one year before cava was born. The KEthereum project has more contributors and more stars. Also I am not sure about the name - I like KEthereum (Kotlin + Ethereum) better than Cava (Consensys + Java)
On a last note: cava is java focused. So you can use it with Kotlin through the java/kotlin interoperability - but only in JVM projects. With KEthereum I try to keep everything pure Kotlin so it could (in the future) also be used in MutiPlatform projects.
Still I respect the work on cava - the above are just reasons why I do not see myself joining the cava community as I see the intention of this call.
Wonder if a merge of cava into web3j could be another way to go?


Hi @ligi, thanks for your reply!

We have a few ways you can participate with the Apache processes.

You can be listed as an interested developer. It will help signal that the project is of interest to you yet you do not want at this time to contribute.

You can be listed as an initial committer. In exchange for initial commit rights, we expect as a volunteer that you will care for the project, by contributing, voting releases and new committers, and providing feedback on the project mailing list.

Yes, part of the proposal covers changing the name. We welcome any feedback in reviewing this proposal.

Well understood. More power to you.

That’s not what’s being discussed here, but I’d be happy to engage with the web3j community and see if they’d be interested in contributing to Cava, of course!

@ligi If you’re going to include others code, you should at least credit the source.


IANAL - but this is only the documentation/definition of base58. The code is a complete different programming language.

You don’t need to be a lawyer, you just need to read the license and follow what it says. It isn’t magical or difficult to understand.

Here is the relevant sections:

“Derivative Works” shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.

4. Redistribution . You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:

  1. You must give any other recipients of the Work or Derivative Works a copy of this License; and
  2. You must cause any modified files to carry prominent notices stating that You changed the files; and
  3. You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
  4. If the Work includes a “NOTICE” text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.

You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

Thanks for pointing this out. Was not aware it also applies to documentation. Just credited bitcoinj for this.
My thinking was that this is the definition was base58 is - so it is OK - but you are right - this should also be credited. Is now done.
Will give Andreas Schildbach a mate next time I see him for the late attribution of this and think this should be OK.

1 Like

Thanks so much @ligi. Licenses are important, otherwise we wouldn’t bother putting them on our work at all. Respecting each others hard work and giving / getting credit for everything we contribute is part of what keeps open source so fun and exciting.

1 Like