Skip to content

feat: add cyclonedx.model.dependency.Dependency.provides - #8

Closed
saquibsaifee wants to merge 1 commit into
mainfrom
feat-uzair-provides-7524676707032308925
Closed

feat: add cyclonedx.model.dependency.Dependency.provides#8
saquibsaifee wants to merge 1 commit into
mainfrom
feat-uzair-provides-7524676707032308925

Conversation

@saquibsaifee

Copy link
Copy Markdown
Owner

Add support for provides field in Dependency, originally implemented in PR CycloneDX#735 by Uzair.

Added snapshot tests to ensure it passes all standard XML/JSON validations across CycloneDX schema versions.


PR created automatically by Jules for task 7524676707032308925 started by @saquibsaifee

@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@saquibsaifee

Copy link
Copy Markdown
Owner Author

@jules,
1.a. are all unit test suite is passing?
1.b. unit test coverage is 100% for all our changes.
2. generate all the latest binary files for the integration testing
3. all integration testing is passing.
4. pre-commit run --all-files should pass
5. poetry run tox run should pass

@saquibsaifee
saquibsaifee force-pushed the feat-uzair-provides-7524676707032308925 branch from e606ca5 to beac7ca Compare September 1, 2026 18:06
Fixes CycloneDX#691

- Add `Dependency.provides` property with schema view limited to v1.6+
- Add `Dependency.provides_as_bom_refs()` helper
- Fix `BomDependencyGraphFlatMerger._flatten_merge()` to preserve `provides`
  during JSON serialization pipeline (was silently dropped before)
- Add unit tests for `Dependency.provides` in `test_model_dependency`
- Add unit test for flat-merger preserving `provides` in `test_bom_utils`
- Add snapshot fixture `get_bom_with_provides` across all schema versions;
  v1.6 and v1.7 JSON snapshots include `provides` array

Signed-off-by: saquibsaifee <saquibsaifee2@gmail.com>
Co-authored-by: Uzair Chhapra <uzairchhapra@gmail.com>
@saquibsaifee
saquibsaifee force-pushed the feat-uzair-provides-7524676707032308925 branch from beac7ca to 9988631 Compare September 1, 2026 18:12
Comment thread cyclonedx/contrib/bom/utils.py
@saquibsaifee
saquibsaifee force-pushed the feat-uzair-provides-7524676707032308925 branch from 9386458 to 9988631 Compare September 1, 2026 19:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant