slachiewicz opened a new issue, #316:
URL: https://github.com/apache/maven-remote-resources-plugin/issues/316
Templates receive each dependency's license exactly as its POM declares it
(`$license.name`, `$license.url`). The same license arrives under many
spellings ("Apache License, Version 2.0", "The Apache Software License, Version
2.0", "Apache 2.0" and so on), so a template that needs to ask "is this
Apache-2.0?" or group dependencies by license must carry its own alias table.
Apache XTable's bundled LICENSE template does: an Apache alias list plus a map
folding 23 declared spellings into 8 license families
([`release/license/bundled/META-INF/LICENSE.vm`](https://github.com/apache/incubator-xtable/pull/991)),
with `supplementalModels` for POMs that declare no license.
## Proposal
Resolve each declared license to an [SPDX license
ID](https://spdx.org/licenses/) by matching its name and URL against the SPDX
license list, and expose it to templates, for example `$license.spdxId`, empty
when nothing matches. A parameter would let a project map spellings the list
misses, alongside the existing `supplementalModels`. Templates such as the ASF
`jar` bundle's `DEPENDENCIES.vm` could then group by ID instead of by whatever
each POM declares.
MojoHaus `license-maven-plugin` already ships the SPDX license list, for its
`<spdx/>` file-name mapping, and normalises names with `licenseMerges`.
How reliably SPDX's names and `seeAlso` URLs match what real POMs declare is
unmeasured; XTable's bundles, with about 860 third-party artifacts, would make
a useful corpus to check it against.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]