CycloneDX / CycloneDX/cyclonedx-dotnet-library

Split library into targeted use cases

Open
#322 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
28
Forks
35
PR merge metrics
No merged PRs in 30d

Description

When we use CycloneDX.Core nuget, this package contains multiple different serializers even though a user is likely to only ever use 1 format and a large number of times a user will never need the spdx functionality.

As such it would be beneficial to split the library into smaller targeted libraries as follows:

- CycloneDX.Core
- CycloneDX.Json
- CycloneDX.Protobuf
- CycloneDX.Spdx
- CycloneDX.Xml

In the end this will also lead to a reduction in dependencies ie protobuf is only a dependency for the protobuf package

Contributor guide

Open the contributing guide

Research direction

Start by mapping the current CycloneDX.Core library, its serializers, and its package dependencies. Define the package boundaries for Core, Json, Protobuf, Spdx, and Xml, then verify that each format's dependencies are isolated and the resulting NuGet packages expose the intended functionality.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
build-system, tooling
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.