Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
db99869
Add comprehensive test coverage for Relations and ucumUnit
clemensv Jun 8, 2026
947d200
TypeScript: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
f5d532e
Python: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
350da1a
.NET: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
d49fd78
Go: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
72fb7c3
Rust: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
ffa3044
Java: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
0c4f1fe
Perl: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
d30595b
Ruby: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
173d315
PHP: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
9a78d8b
Swift: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
efaf04c
C: implement ucumUnit + Relations enforcement
clemensv Jun 8, 2026
ee19e6b
fix: resolve PHP undefined variable warning and Perl ucumUnit type check
clemensv Jun 8, 2026
e97abd1
feat: add validation extension gating and unit/currency/symbols enfor…
clemensv Jun 8, 2026
88bb01a
fix: add $uses to Swift and Java unit keyword tests
clemensv Jun 8, 2026
d325177
test: add adversarial and edge-case schema validation tests
clemensv Jun 8, 2026
bcf5fc7
feat: close all validator gaps and fix inheritance
clemensv Jun 8, 2026
a93680b
fix: relax \ target check for composition schemas
clemensv Jun 8, 2026
a6c280c
fix: allow to target map/array/set/choice types
clemensv Jun 8, 2026
e60338b
fix(perl): add recursive \ validation for circular detection
clemensv Jun 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions c/include/json_structure/error_codes.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,8 @@ typedef enum {
JS_SCHEMA_ROOT_MISSING_NAME,
JS_SCHEMA_ROOT_MISSING_SCHEMA,
JS_SCHEMA_ROOT_MISSING_TYPE,
JS_SCHEMA_KEYWORD_EMPTY,
JS_SCHEMA_NAME_INVALID,

/* Type errors */
JS_SCHEMA_TYPE_INVALID,
Expand Down Expand Up @@ -104,6 +106,7 @@ typedef enum {
JS_SCHEMA_MINITEMS_NEGATIVE,
JS_SCHEMA_MULTIPLEOF_INVALID,
JS_SCHEMA_KEYWORD_INVALID_TYPE,
JS_SCHEMA_CONSTRAINT_VALUE_INVALID,

/* Import errors */
JS_SCHEMA_IMPORT_NOT_ALLOWED,
Expand Down
3 changes: 3 additions & 0 deletions c/src/error_codes.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ static const char* g_schema_error_messages[] = {
[JS_SCHEMA_ROOT_MISSING_NAME] = "Root schema missing 'name' property",
[JS_SCHEMA_ROOT_MISSING_SCHEMA] = "Root schema missing '$schema' property",
[JS_SCHEMA_ROOT_MISSING_TYPE] = "Root schema missing 'type' property",
[JS_SCHEMA_KEYWORD_EMPTY] = "Keyword value cannot be empty",
[JS_SCHEMA_NAME_INVALID] = "Name must be a valid identifier",

[JS_SCHEMA_TYPE_INVALID] = "Invalid type value",
[JS_SCHEMA_TYPE_NOT_STRING] = "Type must be a string",
Expand Down Expand Up @@ -81,6 +83,7 @@ static const char* g_schema_error_messages[] = {
[JS_SCHEMA_MINITEMS_NEGATIVE] = "minItems cannot be negative",
[JS_SCHEMA_MULTIPLEOF_INVALID] = "multipleOf must be positive",
[JS_SCHEMA_KEYWORD_INVALID_TYPE] = "Keyword has invalid type",
[JS_SCHEMA_CONSTRAINT_VALUE_INVALID] = "Constraint value is invalid",

[JS_SCHEMA_IMPORT_NOT_ALLOWED] = "$import not allowed",
[JS_SCHEMA_IMPORT_FAILED] = "Failed to import schema",
Expand Down
Loading
Loading