-
-
Notifications
You must be signed in to change notification settings - Fork 67
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
Feat: omit development dependencies from SBOM results #474
Comments
Very good description on what needs to be done. Proposal:
|
alternative:
Breaking changes? Then we just release a new major version. Embrace change, drive forward. |
Note that poetry now includes dependency groups, in fact the development dependencies option is deprecated in favor of using dependency groups |
noted, and already properly implmented: cyclonedx-python/cyclonedx_py/parser/poetry.py Lines 36 to 41 in e277819
cyclonedx-python/cyclonedx_py/parser/poetry.py Lines 76 to 79 in e277819
|
fixed by #605 |
This feature will be part of the next/upcoming major release. |
Some tools distinguish between regular runtime dependencies and other dependencies that are only needed during development phases (like building, linting, testing, etc.).
There should be an option to omit those non-runtime-dependencies from the SBOM.
This feature is seen as essential for this very tool, since this very tool analyses the source information in the first place, so it already should know the group/category of a dependency.
Scope:
poetry
- knows a "dev" categorypipenv
- knows a "develop" groupOut of scope:
environment
- no possible way to distinguish purpose of installationrequirements
- the file is already a whitelist. It's in it what is in it.conda
- does not support dev dependencies. Or does it?Solution:
--omit
which accepts (choices
) currently only one value:dev
.As more such options might come later, this option can be used multiple times (use
parser.add_argument(..., action='append')
)State that the "omit" might not be fully supported by all information sources.
CycloneDxCmd
omit
. Is also responsible for translating this option to the correct values of the respective*Parser
classes.PoetryParser
with the according value foromit_category
. If the option foromit
containeddev
then,dev
is added to theomit_group
.PipEnvParser
with the according value foromit_group
. If the option foromit
containeddev
then,develop
is added to theomit_group
.PoetryParser
omit_category: Set[str]
parameter.omit_category
.PipEnvParser
omit_group: Set[str]
parameter.omit_group
.README.md
&./docs/**
)Requirements to the tests:
omit
filters, and the results tests, that the unexpected results are not included.Supersedes #374
Supersedes #529
The text was updated successfully, but these errors were encountered: