Skip to content
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

Restructure licensing profile #399

Merged
merged 6 commits into from
Jul 27, 2023
Merged

Conversation

armintaenzertng
Copy link
Contributor

This PR summarizes the discussion we had on the tech team call yesterday (June 27).
This moves all classes used for more in-depth modeling of licenses into the ExpandedLicensing profile, keeping only AnyLicenseInfo, LicenseExpression as well as a new SimpleCustomLicense class in the LicensingProfile.

The new structure is open to discussion. I believe some descriptions have to be rewritten.

@zvr
Copy link
Member

zvr commented Jun 28, 2023

I propose SimpleCustomLicense be renamed to SimpleLicensingText or something.

Then this can be used for License texts as well as for Addition texts. Otherwise, we would need a SimpleCustomAddition in the Licensing profile, which will be identical to SimpleLicense (only a string property for the text).

model/Licensing/Classes/SimpleCustomLicense.md Outdated Show resolved Hide resolved
model/Licensing/Classes/SimpleCustomLicense.md Outdated Show resolved Hide resolved
model/Licensing/Classes/SimpleCustomLicense.md Outdated Show resolved Hide resolved
model/Licensing/Classes/SimpleCustomLicense.md Outdated Show resolved Hide resolved
Copy link
Member

@goneall goneall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More of a request for a discussion on my comments.

model/Licensing/Classes/SimpleLicensingText.md Outdated Show resolved Hide resolved
model/Licensing/Licensing.md Show resolved Hide resolved
model/Licensing/Classes/SimpleLicensingText.md Outdated Show resolved Hide resolved
@goneall
Copy link
Member

goneall commented Jun 28, 2023

@swinslow Some rather significant restructuring as a result of the last SPDX tech call. You can see the discussion in the minutes in the etherpad (probably not moved over to minutes yet). If you'd like to discuss real-time, just ping me and I can give you more context.

@goneall goneall requested a review from swinslow June 28, 2023 12:44
@goneall
Copy link
Member

goneall commented Jun 28, 2023

Thanks @armintaenzertng for creating this - overall structure looks good based on our discussion. A couple of review comments to consider / discuss.

@maxhbr
Copy link
Member

maxhbr commented Jul 11, 2023

A snapshot at a0dbc34:
Licensing Profile
ExpandedLicense Profile

@goneall goneall added this to the 3.0-rc2 milestone Jul 12, 2023
@goneall
Copy link
Member

goneall commented Jul 24, 2023

@armintaenzertng - Pinging you on this one - can you go back through the review comments and update what you agree with and (re)comment on any outstanding?

I just bumped into this in my java code generator and would like to merge.

…censing

also add the corresponding ProfileIdentifierTypes

Signed-off-by: Armin Tänzer <[email protected]>
@armintaenzertng
Copy link
Contributor Author

@goneall, @zvr, I implemented all outstanding change requests, please take another look.

Copy link
Member

@goneall goneall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@goneall goneall added the Profile:Licensing Licensing Profile and related matters label Jul 25, 2023
@armintaenzertng
Copy link
Contributor Author

Found and fixed another little bug.

@swinslow
Copy link
Member

I have a few concerns about the way this is currently addressed. I'm not going to stand in the way of merging it as a next draft, but from an initial read, these are the points that I think should be addressed prior to the actual 3.0 release:

  • As currently structured, it looks like for validation purposes the only requirement is that LicenseExpression should be an xsd:string. My assumption is that it additionally would only be valid if that string conforms to the License Expression Syntax. I'm not sure how we express that in the spdx-3-model repo syntax, but I think that's an important thing for us to retain if all the pieces of the model for license combinations are being moved to a separate profile.

  • Relatedly, I think part of the expression being valid is to be able to ensure that the license identifiers are valid, e.g. that any non-LicenseRef's are actual identifiers on the License List. I'm not sure whether that's feasible to do under the current structure without leveraging the ExpandedLicensing profile, if ListedLicense and ListedLicenseException are over in that profile.

  • I am worried that it's confusing to have a simpleLicensingText class in the SimpleLicensing profile which is comparable to, but distinct from, CustomLicense in the ExpandedLicensing profile.

@swinslow
Copy link
Member

On the first point above, I should note that @goneall has filed #440 to track clarifying this.

@goneall
Copy link
Member

goneall commented Jul 27, 2023

Per discussion with @swinslow - I'll go ahead and merge this PR and we can discuss the outstanding issues raised in the comment above after merging.

@goneall goneall merged commit 87e131f into spdx:main Jul 27, 2023
1 check passed
@armintaenzertng armintaenzertng deleted the reworkLicensing branch July 28, 2023 05:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Profile:Licensing Licensing Profile and related matters
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants