Skip to content
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

Add support for 1.4 to cyclonedx-bom #575

Merged
merged 24 commits into from
Dec 5, 2023

Conversation

justahero
Copy link
Contributor

This PR is based on #399. @tokcum, first of all thanks for your contribution & also your patience. @lfrancke asked me to help bring your PR over the finish line. In this PR I also integrated the feedback given by @Shnatsel in #399. I hope that is in your interest.

In this PR I changed a few things slightly, but otherwise tried to keep the commit history as consistent as possible. The following things have been updated or addressed.

  • rebased with main to resolve merge conflicts. I advise to review these changes, when in doubt I checked against main.
  • addressed all todos to the best of my understanding based on feedback by @Shnatsel
    • added validation for vulnerabilities
    • added error variant BomError to error types JsonWriteError & XmlWriteError in order to remove .expect calls in serialization
    • removed commented code
  • removed the big test JSON sample files that increased the size of the PR to about 11Mb
    • a few commits have been squashed accordingly
    • this is an area where dedicated test files to highlight specific use cases may provide better value
  • fixed a few invalid URLs in the sample JSON files (e.g. trailing text or invalid encoded sequence \u0026)

There were a few TODOs left that might be good candidates to be addressed on their own

Please feel free to review & give feedback. I'm certain I got a few things wrong or might have missed something important.

Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: justahero <sebastian.ziebell@ferrous-systems.com>
…ng From, interim fix in specs.v1_3.component marked as todo

Signed-off-by: tokcum <tobias.mucke@gmail.com>
…, component.version is Option in 1.4

Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
@justahero justahero requested a review from a team as a code owner November 30, 2023 11:21
@lfrancke
Copy link
Contributor

DCO is missing, could you add that?

amy-keibler and others added 9 commits November 30, 2023 12:25
Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
* add `CONTRIBUTING` document

Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
tokcum and others added 11 commits November 30, 2023 12:38
This uses the [fluent-uri](https://github.com/yescallop/fluent-uri-rs)
crate to add support for relative URIs.

Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>

fixup! add: support for relative URIs
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: tokcum <tobias.mucke@gmail.com>
Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
This adds `BomError` variant to error types `JsonWriteError` &
`XmlWriteError` instead of calling `.expect`.

Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
This removes the `todo` & adds the validation of the Bom's
`vulnerabilities`. Please note this needs review as I'm uncertain if
that is how the validation workflow looks like.

Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
* remove `todo`, check conversion is `Ok`

Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
Some URLs given in the test examples were invalid, e.g. using an
unescaped char sequence `\u0026` which were replaced with the correct
char `&` in the query. Other `url` entries had text following the URL.

Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
Signed-off-by: Sebastian Ziebell <sebastian.ziebell@ferrous-systems.com>
Copy link
Contributor

@Shnatsel Shnatsel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, merging. Thanks!

@Shnatsel Shnatsel merged commit cf2335c into CycloneDX:main Dec 5, 2023
9 checks passed
@ctron
Copy link
Contributor

ctron commented Dec 14, 2023

Could this be released already?

@Shnatsel
Copy link
Contributor

We're looking to add 1.5 support before the end of the year and ship it as a single breaking change, rather than make two breaking changes in quick succession.

@ctron
Copy link
Contributor

ctron commented Dec 14, 2023

Ok, that's fair. Thanks for the update.

@nikstur
Copy link
Contributor

nikstur commented Feb 8, 2024

We're looking to add 1.5 support before the end of the year and ship it as a single breaking change, rather than make two breaking changes in quick succession.

@Shnatsel at this point, it's probably worthwhile to cut a new release, since 1.5 seems to be taking a little more time. What do you think?

@Shnatsel
Copy link
Contributor

Shnatsel commented Feb 8, 2024

Yes, we will cut a new release sometime next week.

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.

None yet

7 participants