License complexity issues
- Lingua principale
- Java
- Stelle
- 5.6k
- Fork
- 559
- Merge medio
- 1g 14h
- PR unite (30g)
- 43
Descrizione
This is kind of hard to describe... licensing is broken (or at least hard) as soon as you need to mix licenses or attribution
ratcheting doesn't work will on CI, remotes aren't usually set up properly, not enough information pulled down, running on the same branch that you're comparing to (like main/master). spotless check will fail then when a license doesn't match what you've put in.
So, if you have a file that you've copied (following the rules) from another repo, spotless check will fail, and/or try to overwrite.
If you're changing your license it's "impossible" to retain the header until such time that the file has changed.
If you need to concatenate your license with another (clone and own), that's also difficult.
The rest of spotless check is probably fine, I mean, I want to ensure formatting always. Licensing is where the problem comes in, because it's not the same as a formatting issue. I definitely want it to update, but I need it to not change the terms, or remove other notices.
I suppose for clone/own I can use spotless off:on? but if I've only cloned (say an upcoming patch that I need today, or because guava is bloated...), then I'm going to assume it would still inject my own header.
I feel like what I need is a way to specify copyright, and license separately, as well as a better way to ignore/addendum. Also a way to tell spotless check to ignore licensing (text, not matching) altogether (I still want spotlessApply to update in most cases, but even that I feel like I need something simple).
a `.spotlessignore` file would help for clone only, espcially since you would want to ignore formatting too.
Thoughts?
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia riproducendo il comportamento segnalato relativo a ratcheting, remotes, spotless check e spotlessApply, inclusi i file copiati e le modifiche alla licenza. Confronta la separazione richiesta tra copyright e licenza, il comportamento di addenda o ignore e .spotlessignore con la configurazione e i test attuali; il lavoro è completato quando il testo della licenza viene preservato o aggiornato intenzionalmente senza interrompere i controlli di formattazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- git, java
- Ambito
- build-system, tooling
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100