Add support for file-based dependency readers in LicenseCheckMojo
- Add
ReaderTypeenum for supported reader types - Introduce
ReaderConfigfor reader type and file patterns - Update
LicenseCheckMojoto handle file-based dependencies
What is the of process to go further with that
@HannesWell @waynebeaton can you take a look?
@HannesWell @waynebeaton can you take a look?
Sorry, I'm currently overwhelmed with other tasks and this isn't the an area of core experience of mine.
My primary concern with this patch is that we are already having trouble keeping up with the various file readers.
AFAIK, not specification exists that describes the PNPM/NPM/Yarn lockfile formats, for example. These formats change over time, and we're already unable to keep pace with that rate of change (see #415 #500 #507).
I hesitate to commit further to supporting these formats.
My thinking is that at some point in the future, we will support just flat files and popular SBOM formats. My thinking is that everybody has to create SBOM builders, so we should just leverage that good work. Either that, or we get commitment from folks to support the various formats in perpetuity.
FWIW, my preference is to use configuration via dependency injection to build the set of file formats rather than hard coding them in an enumeration. At least in part this project serves an an example, and making it as easily extendable as possible by adopters is a goal.