-
Notifications
You must be signed in to change notification settings - Fork 20
Spec: Allow LICENSES as sub-directory to .reuse #117
Comments
I have a very strong opinion against this. Apart from From the technical PoV, in certain – quite common – cases when copying or moving (e.g. In addition, having more than one way to store this (important) information would make the spec much less predictable for both humans and machines. |
I understand your point, but IMHO it applies as well to the other attribution/copyright/license information that are allowed to be stored in |
Because certain files simply cannot be edited and that info needs to be stored somewhere. That is why And this is also the reason why the preference is: tags in $file > tags in $file.license > tags and $filename in reuse.dep5/reuse.yaml I see very little chance that a repository actually cannot have a |
Well, the
And yes, I absolutely agree - a REUSE-compliant project will always have a |
There is preference. See quoted spec (emphasis mine, notice also difference between MUST, SHOULD and MAY):
If the preference is not clearly enough emphasised, we should make that more clear in the documentation. |
I'm open to suggestions, but this is not really an actionable use case. If having this directory breaks stuff or causes other obvious issues, then I think we can talk about solutions to those problems, but 'it looks ugly' is a little too subjective. I also agree with @silverhook that caching away licences in a hidden directory probably isn't the best idea. REUSE is a rather opinionated specification/tool. It takes after Black in some regards. There are some things in Black that I really wish were different and/or configurable, but I can swallow those opinions in the knowledge that Black has largely ended code style discussions and just streamlined+standardised the whole thing, and adding more configurable settings would undermine that goal. REUSE's goal is to streamline and standardise upstream developers' communication of their copyright and licensing information. Because licensing is complex, and programming is complex, some workarounds for corner cases are needed here and there, but fundamentally, we try to resist the urge to add more configurable options and/or provide even more ways of doing the same thing. As an aside, the sentiment raised in this issue is so prominent that it is the first or second (depending on how you count) question in the FAQ: https://reuse.software/faq/#tradition I find myself having to say 'no' a lot, and it does pain me that I can't please everyone, but saying 'yes' too often would undermine the project's goals. |
I was just about to answer to @silverhook's latest comment, then I saw that the issue was already closed. Well, sad news, but let me add some words anyway. Of course, as project maintainers you need to balance wisely between several aspects and also say no to many of the received requests. I really appreciate that as it's much better than simply ignoring requests or keeping things in a limbo state. However, I kindly ask you to think about this particular one again for a while instead of closing it after not even 24 hours have passed. Some food for thought:
|
The Rust project recently came to us with a tangible use case in this issue. It took some umming and awwing and looking at the same thing from a few dozen angles, but we were able to work out a reasonable solution after arranging a meeting with them. (I'm not sure the solution made it back to the issue yet; communication is hard.) I'd be just as happy to do the same here, but I can't work with the issue as given, and the proposed solution has some serious flaws outlined by @silverhook.
It's really not. The sentiment is the same—REUSE does something eccentric, and some people dislike it for intangible reasons.
Because of real-world restrictions. Image files don't have comment headers, and thus the I'm really sorry, but 'it taints the directory structure' is not a tangible use case that requires a work-around. It's a matter of taste. I can forgive some of Black's strange formatting decisions and go with the flow. I hope the same can be done for REUSE. |
IMHO the flaws are nothing more serious than the ones that you already have in the specification. You already allow the use of dot files for vital metadata and you already provide a second alternative for specifying copyright statements and attribution. Nothing would be worse if you allowed to place
Well, they are very tangible as it's inconsistent. You allow alternatives for the one thing and don't allow it for the other thing while both aspects are vital for being REUSE compliant.
Build systems and technological restrictions are also made by human beings and therefore also a "matter of taste". In the end such things are no more real-world restrictions than team/company-internal guidelines how they structure their directories. Actually, allowing |
I can see the desire for a cleaner folder structure but I don't think hidden files will be of much help as most coders I know have their editor configured to list hidden files too, if only to show the IF we want to allow an alternative (hidden) path besides |
OK, if we return to the original proposal and interpret it in the same way as the REUSE headers … What is the technical (or other strong) reason that you cannot have a |
As mentioned in the OP: Separate actual content files and folders (directly related to the project) from metadata and administrative content. But if you allow the comment, the question is a little bit suggestive - of course, we can have a |
And just as from the OP, I still remain unconvinced that moving Sure, it would be conforming to the spec (and esp. tool) if you have an all-encompassing Ultimately, we all have pushback and specific concerns from our employers’ engineers/clients/colleagues, but not every pushback is reasonable enough to be included into a community-wide spec. Personally, I have a very strong opinion about the format of copyright statements, that I have produced solid legal arguments for, but for the sake of adoption it was decided to be (much) more lenient about that. Your proposal does not seem to benefit either the spec (quite the opposite!) nor its adoption (outside a few projects within SAP, and even there you said you could implement REUSE as is). |
As a thought experiment, if REUSE did not exist, where would you put the |
Alrighty. I'd say the arguments are exchanged. Let's see how things evolve.
Of course on root level - by (historic) convention. And yes, that's not a dot file and also would violate the proposal as well, but one thing after another. It's one thing to change a concrete spec and to change a convention that probably older than me... Actually, we still need to include the LICENSE file as GitHub (or more precisely Licensee) doesn't recognize REUSE (licensee/licensee#490 is still on |
Currently, the specification says:
Some of our project maintainers raised concerns about this strict handling of the LICENSES folder as it taints their directory structure too much in their opinion. They want to keep metadata (or anything that is not directly related to their docs, code etc.) in dot-directories such as
.reuse
.So the proposal would be that the spec could allow to place the LICENSES directory as a sub-directory underneath
.reuse
to allow teams to keep their dir structure clean if they want to do so. Of course, that should only be an additional option and not a change to the default.The text was updated successfully, but these errors were encountered: