VERS test schema v0.2 changes
The VERS test schema was updated to: https://packageurl.org/schemas/vers-test.schema-0.2.json
on August 4, 2026. This update includes an automated update to all of the VERS
test suite files at: vers-spec/tests/. See a summary of the changes below.
The original VERS test suite files for the VERS test schema v0.1 remain available under vers-spec v1.0.2.
Test groups
Change: Renamed
- 'base' to 'required'
- 'advanced' to 'recommended'
This change removes the ambiguity of the test group names from the v0.1 VERS test schema by using names that map to Ecma conformance terminology.
Test messages
Change: Renamed expected_failure_reason to expected_message
The terminology of the v0.1 VERS test schema did not provide a way to provide a test case message for the use case:
- When an input contains an unregistered VERS type. This applies to all test types. It seems important to document that a VERS type is not registered because this means that the VERS type is effectively unknown across the tools and databases that implement VERS.
Test types
Change: Renamed test type 'roundtrip' to 'validate'.
The general meaning of a "roundtrip" test was to confirm that a VERS tool can parse a canonical VERS into its components and then build a canonical VERS from those components - these functions are also known as deserialization and serialization. The former 'roundtrip' test type did not provide much value because the input and output are required to be the same - a VERS tool can easily test this "roundtrip" behavior without a test case.
There is a high degree of similarity between the 'parse' and 'validate' test types in terms of the functions a VERS tool performs. The key difference is that the expected output from a 'parse' test case is an object composed of decoded VERS components and the expected output from a 'validate' test case is a VERS string. The 'validate' test type does not require the input VERS string to be in canonical form.