-
Notifications
You must be signed in to change notification settings - Fork 697
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No valid value for license appropriate for proprietary code #5697
Comments
/cc @phadej IMO it makes sense to copy what |
IMO it doesn't make sense what
They aren't obvious to me. From the sdpx issue tracker, @23Skidoo linked (emphasis mine)
I recommend to close this issue as |
I opened this issue because when I tried to use I'll clarify that in the description. Sorry I wasn't clear. |
What is the syntax in a cabal file to get EDIT: So leaving the issue description for now. Unless there is some way to get |
@phadej That thread also mentions that |
iiuc, isn't |
“NONE” is not a license. It’s says there are no license. Same as omitting `license:` field (which is completely fine).
…Sent from my iPhone
On 17 Mar 2019, at 8.35, Spiros Boosalis ***@***.***> wrote:
iiuc, isn't NONE problematic as a license? even if they don't care about the licensing, the user should at least choose between a "all rights reserved" variant or a public domain variant.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
NONE is a fancy way to say Nothing. We don’t care to distinguish between “tried [to find a license] but gave up”, “did not try”, and “won't tell you”?. All flavours (i.e. `NONE`) mean the same: only copyright holder have rights
…Sent from my iPhone
On 17 Mar 2019, at 3.19, Mikhail Glushenkov ***@***.***> wrote:
LicenseRef-Foo works for me as an identifier with cabal-version: 2.4.
@phadej That thread also mentions that NOASSERTION is a valid value in addition to NONE, shouldn't we support it too?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
got it, thanks
…On Sun, Mar 17, 2019, 00:31 Oleg Grenrus ***@***.***> wrote:
NONE is a fancy way to say Nothing. We don’t care to distinguish between
“tried [to find a license] but gave up”, “did not try”, and “won't tell
you”?. All flavours (i.e. `NONE`) mean the same: only copyright holder have
rights
Sent from my iPhone
> On 17 Mar 2019, at 3.19, Mikhail Glushenkov ***@***.***>
wrote:
>
> LicenseRef-Foo works for me as an identifier with cabal-version: 2.4.
>
> @phadej That thread also mentions that NOASSERTION is a valid value in
addition to NONE, shouldn't we support it too?
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub, or mute the thread.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#5697 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ACNoMVx2itcmfPCDwA7NlePm0O4ju8Yaks5vXe80gaJpZM4YoCXh>
.
|
@phadej Aha, you can just omit the @sboosali Yes, NONE is problematic as a license. @phadej is talking about the machine-readable meaning of NONE. But in English, the simplest meaning of "License: NONE" is a problem. None of the various legal teams I have worked with would allow that wording to appear in this file. In a litigation context, the fact that you could eventually prove that "License: NONE" doesn't mean what it sounds like hardly reduces the legal cost. @23Skidoo are we using different versions of cabal? In my build of cabal 2.4.1.0 in |
Again, NONE is not a license. It’s a placeholder value, as `license: ` is (or at least should be) invalid syntax.
I think we could make `cabal init` be able to skip license information, or/and omit `license` field if its value is `NONE`.
…Sent from my iPhone
On 24 Mar 2019, at 12.00, ygale ***@***.***> wrote:
@phadej Aha, you can just omit the licesne: field? That works. But it's not one of the choices in cabal init. Can we add that? Or perhaps print a message when you select NONE that you can just delete the license field in the cabal file if you want. Or perhaps allow the empty string as a "valid SPDX license" for "Other" (which is arguably so), and change the prompt to "Other (specify or omit):".
@sboosali Yes, NONE is problematic as a license. @phadej is talking about the machine-readable meaning of NONE. But in English, the simplest meaning of "License: NONE" is a problem. None of the various legal teams I have worked with would allow that wording that to appear in this file. In a litigation context, the fact that you could eventually prove that "License: NONE" doesn't mean what it sounds like hardly reduces the cost.
@23Skidoo are we using different versions of cabal? In my build of cabal 2.4.1.0 in cabal init there is only a choice of LicenceRef-PublicDomain, which isn't usable for proprietary. I tried manually editing "license:" with various other syntax to put something besides PublicDomain, but I couldn't get it to work. See the error message above.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.
|
i think an omitted license field makes more sense.
…On Sun, Mar 24, 2019, 07:15 Oleg Grenrus ***@***.***> wrote:
Again, NONE is not a license. It’s a placeholder value, as `license: ` is
(or at least should be) invalid syntax.
I think we could make `cabal init` be able to skip license information,
or/and omit `license` field if its value is `NONE`.
Sent from my iPhone
> On 24 Mar 2019, at 12.00, ygale ***@***.***> wrote:
>
> @phadej Aha, you can just omit the licesne: field? That works. But it's
not one of the choices in cabal init. Can we add that? Or perhaps print a
message when you select NONE that you can just delete the license field in
the cabal file if you want. Or perhaps allow the empty string as a "valid
SPDX license" for "Other" (which is arguably so), and change the prompt to
"Other (specify or omit):".
>
> @sboosali Yes, NONE is problematic as a license. @phadej is talking
about the machine-readable meaning of NONE. But in English, the simplest
meaning of "License: NONE" is a problem. None of the various legal teams I
have worked with would allow that wording that to appear in this file. In a
litigation context, the fact that you could eventually prove that "License:
NONE" doesn't mean what it sounds like hardly reduces the cost.
>
> @23Skidoo are we using different versions of cabal? In my build of cabal
2.4.1.0 in cabal init there is only a choice of LicenceRef-PublicDomain,
which isn't usable for proprietary. I tried manually editing "license:"
with various other syntax to put something besides PublicDomain, but I
couldn't get it to work. See the error message above.
>
> —
> You are receiving this because you were mentioned.
> Reply to this email directly, view it on GitHub, or mute the thread.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5697 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ACNoMTk5EnqhwGvcEAwXDbc0TXQ2v5JQks5vZ4hrgaJpZM4YoCXh>
.
|
@Anton-Latukha: thank you for your comment. Could you summarise you proposal in terms of code changes in cabal? Would that only be |
It is a case that deletion of the |
Before closing, I guess we could clarify that omitting the field is allowed https://cabal.readthedocs.io/en/3.6/cabal-package.html#pkg-field-license |
What about
@ptkato, may one refuse to specify the license? I've just tried and I don't think so, but I'm a very unskilled
|
Yes, it is a bit counter-intuitive, but you need to select |
And then there would be no |
All right reserved / No license / NONE - is a default by law in all countries of the world, so it seems sound to have it on the front menu. |
I'm for the second suggestion:
ie. changing the prompt to ...and also so that foss licenses have a more prominent placement :D |
Having one action do two things at the same time - is puzzling as hell. Even literally, The FOSS licenses have 16 prominent placements in the list & the default case in the world does not. It is not a fanboy reasoning, it is a philosopher consideration to not be monadic in thought (relating to many obvious critiques of it, most well-known critiques on it are done in works of Gilles Deleuze & Nietzsche, for example, it is covered in https://www.philosophizethis.org/podcast/episode-158-the-creation-of-meaning-nietzsche-the-ascetic-ideal-f8k5h ~ on minute 17). I do not understand why to not just introduce case before the last |
edit: oops, that wasn't your point. yeah, |
I think something like |
I agree, it should be more explicit than |
Argue with SPDX people: spdx/spdx-spec#49 Don't invent your own, incompatible extensions. EDIT: If it's about how to show
then it's fine! |
If this issue is about And the original description issue is incorrect, that what I referred to by spdx/spdx-spec#49 link. |
Yes, this is even clearer. What It would be good if the docs could be more explicit, though: https://cabal.readthedocs.io/en/3.8/cabal-package.html#pkg-field-license
This should say that the meaning of NONE is good old "all rights reserved". ( |
The only non-SPDX value allowed in the
license
field isNONE
. But since cabal files are also human-readable, the textlicense: NONE
cannot be included in a cabal file for proprietary code for obvious legal reasons, no matter what the machine-readable meaning. Nor can any SPDX-compliant value be used. Without alicense
field at all, cabal refuses to build the package.By comparison,
npm
is also SPDX-compliant. There are several reasonable options for proprietary code innpm
:{ "license": "UNLICENSED"}
- not great, but much better thanNONE
.{ "license": "Proprietary", "private": true }
- this disables the ability to upload the package to the public distribution channel, which is fine for truly proprietary code.{ "license": "SEE LICENSE IN <filename>"}
- allows upload with a custom license, possibly proprietary. We might not want to allow that for Hackage.See also #2141. Now "AllRightsReserved" has not two meanings, but zero meanings, which is much worse. Not that we should necessarily resurrect "AllRightsReserved", but there needs to be some reasonable alternative.
The text was updated successfully, but these errors were encountered: