Seeking clarification about licensing

Hi. It’s unclear whether certain parts of CockroachDB’s source repository are Apache- or CCL-licensed. This includes helper scripts, some tests, and whatnot.

What is the licensing status of files which are neither explicitly marked Apache or CCL (or some other license)?

It would be pretty reasonable to assume “LICENSE” at the root directory (which is CCL) covers everything, except for anything with their own licensing info, like directories with a LICENSE file or individual files with a license comment.

Is most of the stuff in these directories CCL licensed? Is all the typescript code in pkg/ui/ CCL licensed?

cloud/
docs/
scripts/
pkg/cli/interactive_tests/
pkg/sql/logictest/testdata/logic_test/
pkg/sql/logictest/testdata/parallel_test/
pkg/ui/
pkg/acceptance/terraform/
pkg/util/leaktest/
monitoring/
build/

You should also note that some files refer to a “BSD-style” license in a “LICENSE” file where it’s not instantly clear what the license is because there is no such file – e.g. in pkg/util/interval/llrb_based_interval.go, pkg/util/syncutil/int_map.go, and pkg/sql/parser/.

It would be pretty reasonable to assume “LICENSE” at the root directory (which is CCL) covers everything, except for anything with their own licensing info, like directories with a LICENSE file or individual files with a license comment.

That’s a reasonable assumption, but it was not actually our intention. We put the CCL in the LICENSE file so that github would no longer mark the entire repo as Apache licensed (and because the binary that results from the default make build includes CCL-licensed code). Source files under the CCL should be clearly marked with a license header and be contained in directories named *ccl; anything else (including all the directories you named) is intended to be under the Apache license by default. A few files have been copied from other projects with their own “BSD-style” licenses; as you noted we need to copy the respective license files from those projects and update the references. We’ll update the license files and comments in the repo so you have something more authoritative to go by than this forum post.

1 Like