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

Enable SPDX 3 #155

Open
antonbauhofer opened this issue Nov 21, 2023 · 0 comments
Open

Enable SPDX 3 #155

antonbauhofer opened this issue Nov 21, 2023 · 0 comments

Comments

@antonbauhofer
Copy link
Collaborator

antonbauhofer commented Nov 21, 2023

Currently, the library only supports SPDX 2.3.
The idea of this issue is to implement an MVP for supporting SPDX 3 (i.e. not feature complete, but all necessary features to create a valid SPDX 3 document, that contains packages and relationships).
To do that, the following steps are necessary (could be extracted into separate issues):

  1. Create classes in spdx3model. The classes should have constructors that takes the required arguments and an object for all optional properties, described by an interface. Consider if there are properties for which we can assume default values.
  2. Add spdx3-documents to the api. The api methods should take as few required arguments as possible and take all remaining optional arguments in an object. Add an interfaces for all optional parameters. Add static methods fromApi to the classes in spdx3model to enable conversion from the api.
  3. Add SPDX3 classes to the json converter. The classes should have static methods from... that can be used to convert from spdx3model to Json objects.
  4. Extend documentation and readme

Consider how the different types (e.g. SPDXDocument) are used and exported from spdx-tools.ts.
When using the library (like for example in the Yarn and the Rollup plugin), it should be possible to use both, SPDX2Document and SPDX3Document. So, they should be both exported.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

No branches or pull requests

1 participant