licensezero / licensezero-questions

questions about License Zero
https://licensezero.com/questions
7 stars 1 forks source link

Reuse of identifiers and licensing across repositories #20

Open daveaglick opened 5 years ago

daveaglick commented 5 years ago

I like the flexibility afforded by the use of identifiers, but it doesn't seem to scale well across multiple projects or repositories. What I'd like is to license multiple repositories at a particular point in time (probably tied to a universal major version number). As I understand it, that would require me to apply a particular identifier to each repository rather than have one generated. Is this possible?

kemitchell commented 5 years ago

It is certainly possible to reuse identifiers across packages, but it's not something the CLI currently automates. To stop an identifier from including future work on a project, you can simply remove the identifier, or add a new one.

Perhaps you could sketch out in just a little bit more detail what you want to cover, and how the licensing situation will change over time?

Related: #12

daveaglick commented 5 years ago

Certainly, and #12 certainly looks like almost the same issue.

Specifically, I'm developing an application called Statiq. It's a CLI tool that I'm planning to license under Prosperity. My current thought is that I'll tie a major version to a project identifier and have a license cover all releases under that major version (the next major version will require a new license).

This CLI tool also uses a framework called Statiq Framework. The framework is a library intended for use in other application that want to do something similar to the actual Statiq application but with customization. I'm planning on syncing major versions between the two projects, Statiq and Statiq Framework, and would like to license them as a unit (or bundle as the other issue put it). If someone licenses Statiq v3 it makes sense that license also covers Statiq Framework v3. Basically, they're licensing the Statiq ecosystem of tools under a specific version and not just a single tool.

One complication might be that neither of these projects have anything to do with JavaScript or npm. While a package.json can certainly be added to the repositories, it'll do nothing but drive L0. Maybe that actually makes it easier?

kemitchell commented 5 years ago

@daveaglick License Zero comes from the JavaScript/npm era, but is not specific to that platform. Are you working in C#? I'd love to improve the License Zero CLI's support for that ecosystem.

If you used the same License Zero ID for CLI and framework, would that work, from your point of view?

daveaglick commented 5 years ago

Are you working in C#? I'd love to improve the License Zero CLI's support for that ecosystem.

Yep. Hoping to get everything rigged up later today and happy to provide feedback after using it a bit.

If you used the same License Zero ID for CLI and framework, would that work, from your point of view?

Yes - as I understand it that should work perfectly.

kemitchell commented 5 years ago

If you’re knowledgeable about C# package management and can weigh in on how the CLI should identify L0 dependencies of C# projects, I’d be grateful for your guidance there. Right now the CLI does nothing C#-specific. It just recurses the current working directory for licensezero.json files.