https://authzed.com logo
Search · github.com/cockroachdb/cockroac...
e

ensonic

04/11/2023, 12:54 PM
The zed tool uses the treeprinter from couchdb (https://github.com/authzed/zed/search?q=github.com%2Fcockroachdb%2Fcockroach%2Fpkg) in 3 places. Would it make sense to replace this, since the couchdb license has changed? I've found a bunch of alternatives and one could even consider to just implement your own pretty printer (without an additional dependency). Shall I file a ticket?
v

vroldanbet

04/11/2023, 12:55 PM
couchdb != cockroachdb
what's the license that concerns you?
e

ensonic

04/11/2023, 12:56 PM
typo -> cockroachdb, the code is now BSL
v

vroldanbet

04/11/2023, 12:59 PM
in which way does BSL license prevent you from adopting SpiceDB? are you in the business of running CockroachDB as a service?
genuinely want to understand the concern
e

ensonic

04/11/2023, 1:11 PM
the zed binary is marked as
Apache-2.0 license
, but it links BSL which is imho not compatible
I was trying to add
zed
into a mirror for our CI/CD pipeline and the license review flagged it.
v

vroldanbet

04/11/2023, 1:16 PM
I'm definitely not an expert in OSS licenses. Is that tool you used that flagged the license as incompatible an internal tool or widely available?
we double checked and CockroachLabs uses Apache 2.0 after the "Change Date". The file was first published in 2017. https://github.com/cockroachdb/cockroach/blob/master/pkg/util/treeprinter/tree_printer.go#L1-L9 The license describes 4 years after publication, so at this point that file would be Apache 2.0 license: https://github.com/cockroachdb/cockroach/blob/master/licenses/BSL.txt#L45-L49 We understand most tools won't go figure out these nitty-gritty details, and we also understand that even if BSL can be compatible in specific scenarios, it's additional friction that hurts adoption. So we think it's a good idea to move away from BSL licensed code 👍🏻
e

ensonic

04/11/2023, 2:36 PM
I git cloned zed, then entered the dir and run:
~/go/bin/go-licenses report ./... >/tmp/licenses.csv
To sort by license I run:
sort /tmp/licenses.csv -t ',' -k 3 | column -s, -t
the problem is that there were changes after the re-licensing and you are pulling this new version: https://github.com/cockroachdb/cockroach/commits/master/pkg/util/treeprinter/tree_printer.go
You'd basically need to mirror a 4 year old version of the file, right?
There are numerous alternative tree printers that are MIT licensed.
j

jzelinskie

04/11/2023, 3:10 PM
Agreed -- we're looking into replacing it now since it's such a simple library and it's not worth having any weird legal edge-cases when it's easy enough to avoid
e

ensonic

04/11/2023, 3:43 PM
Awesome. I will not file a bug then, especially all I did is google searching for
golang pretty print tree
v

vroldanbet

04/12/2023, 12:57 PM
e

ensonic

04/12/2023, 1:31 PM
Thanks! saw it already. Super helpful