1.1.48 patch release introduced a breaking change
lbeschastny opened this issue · 2 comments
In 1.1.48
you've updated raml-definition-system
package, which resulted in a breaking change.
Before 1.1.48
the following Draft 4 schema was considered valid:
{
"type": "object",
"properties": {
"example": {
"type": "string"
}
},
"required": ["example"]
}
But since 1.1.48
all schemas without $schema
property are assumed to be in Draft 3, which result in the following parser error when used with rejectOnErrors: true
:
{
"code": "REQUIRED_MUST_BE_BOOLEAN_IN_DRAFT_3",
"message": "Draft 3 schema must have boolean as 'required' property value"
}
Related to raml-org/raml-typesystem#113
Additionally, specifying draft-07 schema results in being treated like draft 3 and having complaints about "required" being non-boolean (though only in some uses of "required").
Note that raml-js-parser-2 has been deprecated, the new official parser is webapi-parser. Feel free to attempt to reproduce this issue with webapi-parser and report any issue you may have on that repository.