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

Store tags in the licenses.json index? #1

Closed
goneall opened this issue Oct 20, 2017 · 14 comments
Closed

Store tags in the licenses.json index? #1

goneall opened this issue Oct 20, 2017 · 14 comments

Comments

@goneall
Copy link
Contributor

goneall commented Oct 20, 2017

Please add a field on the JSON representing if an FSF license is considered Free / Libre.

The licenses listed on the Free Software Foundation License List have the following designations:

  1. Free licenses compatible with the GNU GPL
  2. Free licenses compatible with the FDL
  3. Free licenses incompatible with the GNU GPL and FDL
  4. Nonfree licenses
  5. Licenses for work stating a viewpoint

The Free / Libre designation would be a license identified as 1, 2, or 3 in the above list.

@wking
Copy link
Owner

wking commented Oct 20, 2017 via email

@wking
Copy link
Owner

wking commented Oct 20, 2017

Please re-open if there's still something missing, or if you just want to kick around how/where to store this information.

@wking wking closed this as completed Oct 20, 2017
@goneall
Copy link
Contributor Author

goneall commented Oct 20, 2017

Got it - I was just looking at the index. Would you be OK adding the tags to the index? It would save me quite a few file opens and a bit of code complexity.

@goneall
Copy link
Contributor Author

goneall commented Oct 20, 2017

Now, if only I could figure out how to re-open ;)

@goneall
Copy link
Contributor Author

goneall commented Oct 20, 2017

From the Stack Overflow post it looks like I can't re-open the issue if I didn't close it.

@wking wking reopened this Oct 20, 2017
@wking
Copy link
Owner

wking commented Oct 20, 2017 via email

@wking wking changed the title Add FsfFree designation Store tags in the licenses.json index? Oct 20, 2017
@goneall
Copy link
Contributor Author

goneall commented Oct 21, 2017

I'm planning on updating the License Generator to read the JSON file from the repository.

The files is in the middle of some major refactoring (it has gotten a bit out of hand with the addition of several new output formats).

I'll add a comment once I check in the refactored code.

I'll also add a hook for updating the FSF Libre flag.

@goneall
Copy link
Contributor Author

goneall commented Oct 21, 2017

Just updated the code repository for the tools. I added a class specifically to parse any FSF data FsfDataParser. Not much in the class yet - just a hook. I also added hooks to pull external data for both licenses and exceptions during the license processing, which should make it easier to add OSI checking later.

@goneall
Copy link
Contributor Author

goneall commented Oct 21, 2017

BTW - I don't mind doing a file by file parsing if you're opposed to adding the tags in the index. It would just be easier for me to process one file (and it may be easier for other users of the metadata as well).

@wking
Copy link
Owner

wking commented Oct 25, 2017

I added a class specifically to parse any FSF data FsfDataParser. Not much in the class yet - just a hook.

I've filed spdx/tools#112 filling that in.

It would just be easier for me to process one file…

I agree, and as you point out in #5, the size increase by including tags is only around 55%. I'm less concerned about that specific bump, and more concerned about starting down a slippery slope. Scoping the index as “only what you need to find FSF ID(s) (for a given name or SPDX ID)” is more objective than trying to decide on a per-property basis which properties will be needed by aggregators. Of course, I may have already started down that slippery slope by including name and identifiers. I've filed #6 pulling those out. How does that look to you?

@goneall
Copy link
Contributor Author

goneall commented Oct 26, 2017

Note: Moving conversation from spdx/tools#112 (comment)

I understand the desire to have a "clean" implementation of an API, but the same argument could even be made for storing the SPDX ID. That being said, my opinion is that we should include the flag in the index for practical reasons.

Can you describe any practical issues with including the flag in the index (e.g. performance or maintenance issues)? And do you believe these issues outweigh the practical issues with not including the information in the index?

There are several examples of indexes and file system directory structures where metadata is stored in the index itself.

One other consideration, the fsfLibre is a core piece of FSF information and, in my opinion, the main reason for the FSF list. Therefore it should be included in the index.

@wking
Copy link
Owner

wking commented Oct 26, 2017 via email

@goneall
Copy link
Contributor Author

goneall commented Oct 27, 2017

My issue with including tags (or as in #6, even names and SPDX IDs),
is that it's very hard to draw a clear line about what information is
important enough to go into the index, and what information is
peripheral enough to be kept out. If we let tags in now, we have to
repeat this discussion for each property when someone else comes along
asking to have it added to the index.

I don't think drawing the line is that difficult. If the information is small and is high use, it should be included in the index (and also in the details). If the information is large, it should only be present in the details. I concede that small and large are judgement calls, but I don't see that being a big issue. License text is clearly a large amount of data and should not be in an index.

This is the approach we took on the license list JSON format and I have not heard any of the users of that format raising concerns on the information stored at the index or detail level once the detail level was added for capturing the license text and template data.

We could take another approach and have 2 indexes - one small and one large containing the extra data. I still would not include the license text in the larger file, but all other metadata could be added.

@wking
Copy link
Owner

wking commented Nov 12, 2017

We could take another approach and have 2 indexes...

Done via #6.

@wking wking closed this as completed Nov 12, 2017
CAM-Gerlach pushed a commit to CAM-Gerlach/fsf-api that referenced this issue Sep 8, 2021
Add BSD-2-Clause to the FreeBSD GNU Identifier
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants