-
Notifications
You must be signed in to change notification settings - Fork 220
Refine Purl type schema #514
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
Conversation
Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
…b action is activated. Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Steve Springett <steve@springett.us>
Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
We only need a list of types and I find it less brittle avoiding to hardcode URLs. Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
Also ensure theta schemas are valid and formatted Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
* Ensure all schemas are valid and formatted * Organize properties fields in a consistent manner: title, description, type. * Add title to all property definitions Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
Ignore Python artifacts Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
This is for many types Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
This ensure we can distinguish a definition, a test and an index JSON file with a simple glob. This helps with making processing simple. Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
Also migrate existing defintions to new schema Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
This enable the validation of schemas and instances with make check Next this will also allow for CI checks. Signed-off-by: Philippe Ombredanne <pombredanne@aboutcode.org>
Based on the comment here package-url#514 (comment) the word choice when listing purl types should be changed from known to registered.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this file was referenced here:
purl-spec/PURL-SPECIFICATION.rst
Lines 515 to 518 in 395319f
| To support the language-neutral testing of ``purl`` implementations, a test suite | |
| is provided as JSON document named ``test-suite-data.json``. This JSON document | |
| contains an array of objects. Each object represents a test with these key/value | |
| pairs some of which may not be normalized: |
the reference need to change.
|
@jkowalleck We are planning a major PR to replace PURL-SPECIFICATION.rst with more granular documentation files (markdown format) and clean up obsolete references like this. See #520 for an explanation of the target structure. |
Introduce `pkg:brew` as a registered PURL type using the post-package-url#514 JSON type-definition framework. Key design decisions: - version: optional (matches real-world usage like pkg:brew/go) - namespace: optional (represents Homebrew tap, e.g., homebrew/core) - qualifier: repository_url (consistent with docker, oci types) - @ encoding: formula names with @ (e.g., postgresql@12) use %40 Test cases cover: - Simple formula with/without version - Versioned formulas with @ in name (percent-encoding) - Namespace (tap) usage for homebrew/core, homebrew/cask - Third-party taps with repository_url qualifier Real-world usage validated against: - Homebrew/brew (official sbom.rb) - anchore/syft - endoflife.date (versionless purls) Signed-off-by: Rui Chen <rui@chenrui.dev>
Introduce `pkg:brew` as a registered PURL type using the post-package-url#514 JSON type-definition framework. Key design decisions: - version: optional (matches real-world usage like pkg:brew/go) - namespace: optional (represents Homebrew tap, e.g., homebrew/core) - qualifier: repository_url (consistent with docker, oci types) - @ encoding: formula names with @ (e.g., postgresql@12) use %40 Test cases cover: - Simple formula with/without version - Versioned formulas with @ in name (percent-encoding) - Namespace (tap) usage for homebrew/core, homebrew/cask - Third-party taps with repository_url qualifier Real-world usage validated against: - Homebrew/brew (official sbom.rb) - anchore/syft - endoflife.date (versionless purls) Signed-off-by: Rui Chen <rui@chenrui.dev>
This PR refines the schema for:
on top of @stevespringett PR:
Key changes: