Skip to content

Conversation

pombredanne
Copy link
Member

@pombredanne pombredanne commented Jul 2, 2025

This PR refines the schema for:

on top of @stevespringett PR:

Key changes:

  • Use a flatter structure with less nesting
  • Use more verbose name for each attribute
  • Add new schema for tests
  • Clarify that regex patterns are using ECMA262 as specified in the JONS schema spec
  • Convert all PURL types to valid definition JSON
  • Convert all PURL tests to valid test JSON.
  • All tests that cover all the PURL types
  • Updated scripts and add Makefile with test and formatting targets

stevespringett and others added 12 commits March 1, 2025 09:59
Signed-off-by: Steve Springett <[email protected]>
Signed-off-by: Steve Springett <[email protected]>
Signed-off-by: Steve Springett <[email protected]>
Signed-off-by: Steve Springett <[email protected]>
…b action is activated.

Signed-off-by: Steve Springett <[email protected]>
Signed-off-by: Steve Springett <[email protected]>
Signed-off-by: Philippe Ombredanne <[email protected]>
Signed-off-by: Philippe Ombredanne <[email protected]>
We only need a list of types and I find it less brittle avoiding to
hardcode URLs.

Signed-off-by: Philippe Ombredanne <[email protected]>
Signed-off-by: Philippe Ombredanne <[email protected]>
Also ensure theta schemas are valid and formatted

Signed-off-by: Philippe Ombredanne <[email protected]>
pombredanne and others added 9 commits July 13, 2025 09:19
* 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 <[email protected]>
Ignore Python artifacts

Signed-off-by: Philippe Ombredanne <[email protected]>
Signed-off-by: Philippe Ombredanne <[email protected]>
Signed-off-by: Philippe Ombredanne <[email protected]>
This is for many types

Signed-off-by: Philippe Ombredanne <[email protected]>
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 <[email protected]>
Also migrate existing defintions to new schema

Signed-off-by: Philippe Ombredanne <[email protected]>
This enable the validation of schemas and instances with make check
Next this will also allow for CI checks.

Signed-off-by: Philippe Ombredanne <[email protected]>
darakian added a commit to darakian/purl-spec that referenced this pull request Jul 28, 2025
Based on the comment here
package-url#514 (comment)
the word choice when listing purl types should be changed from known to registered.
giterlizzi added a commit to giterlizzi/perl-URI-PackageURL that referenced this pull request Jul 28, 2025
Copy link
Member

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:

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.

@mjherzog
Copy link
Member

@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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1 high priority Ecma standard Part of the Ecma standard for PURL
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants