Evgeny Poberezkin
002c99311f
use regenerator to transpile asynchronous validation functions if generators are not supported, #40
2016-01-26 23:56:38 +00:00
Evgeny Poberezkin
873426b6a7
async custom keywords, #40
2016-01-25 23:57:16 +00:00
Evgeny Poberezkin
d5808a3ee4
async format when format is $data, #40
2016-01-25 22:05:15 +00:00
Evgeny Poberezkin
0729d6d19d
async schemas and async formats using generators, #40
2016-01-25 06:37:36 +00:00
Evgeny Poberezkin
27bd49f182
renamed opts property of ajv instance to _opts; options object passed to constructor is copied
2016-01-25 06:37:36 +00:00
Evgeny Poberezkin
0c60364a7f
coerce type when schema is in ref that is not inlined, #95
2016-01-17 14:08:50 +00:00
Evgeny Poberezkin
878f3559f6
do not try to coerce to object/array, #95
2016-01-17 13:12:28 +00:00
Evgeny Poberezkin
b5b6a06f09
coerceTypes option, #95
2016-01-17 01:05:06 +00:00
Evgeny Poberezkin
5b7d9f9ff7
fixed inline reference resolution
2016-01-16 14:33:46 +00:00
Evgeny Poberezkin
c99d6751ad
option addUsedSchema
2016-01-15 06:54:53 +00:00
Evgeny Poberezkin
8c4557f1ac
fixed relative json-pointer pattern/code to access data
2016-01-14 21:31:00 +00:00
Evgeny Poberezkin
37dd0415da
fixed relative JSON-pointer pattern
2016-01-13 22:23:32 +00:00
Evgeny Poberezkin
8fe96db455
refactored "default" to correctly validate minProperties, minItems, etc. when defaults are present, closes #42
2016-01-09 13:28:40 +00:00
Evgeny Poberezkin
d7dd660d25
"default" keyword in "items" subschemas, #42
2016-01-09 01:37:45 +00:00
Evgeny Poberezkin
0b725bbc31
"default" keyword in "properties" subschemas, #42
2016-01-09 01:07:33 +00:00
Evgeny Poberezkin
a1afce910c
prevent scope change if definitions uses id
2016-01-04 22:28:05 +00:00
Evgeny Poberezkin
5f2cc30449
option multipleOfPrecision, closes #84
2016-01-02 17:16:01 +00:00
Evgeny Poberezkin
c3d09d7699
fixed bug in dependencies keyword, closes #94
2015-12-30 23:04:14 +00:00
Evgeny Poberezkin
2eef59dede
minified browser bundle
2015-12-27 21:33:07 +00:00
Evgeny Poberezkin
17ed9c90f4
keyword property in errors for custom keywords is set to the keyword itself instead of "custom"
2015-12-26 23:18:57 +00:00
Evgeny Poberezkin
694e81684f
throw exception if custom keyword is not an identifier; update tests as macro keyword definition supports type
2015-12-26 23:04:45 +00:00
Evgeny Poberezkin
c4786866e2
simplify compiling macro keywords
2015-12-26 22:27:13 +00:00
Evgeny Poberezkin
eab087a792
loopRequired option
2015-12-26 00:05:39 +00:00
Evgeny Poberezkin
f449f68a3d
safe access with guards to $data ref
2015-12-25 22:36:23 +00:00
Evgeny Poberezkin
1d9cad5ab7
$data ref equal to undefined is always valid
2015-12-25 20:10:15 +00:00
Evgeny Poberezkin
2d7b06a6db
support $data ref in required keyword, #81
2015-12-25 00:30:50 +00:00
Evgeny Poberezkin
2ab6aba454
support $data ref in uniqueItems, #81
2015-12-24 18:58:15 +00:00
Evgeny Poberezkin
10c6685027
support $data ref in formatMaximum/Minimum and exclusiveFormatMaximum/Minimum, #81
2015-12-24 17:43:48 +00:00
Evgeny Poberezkin
3915d22a22
refactor
2015-12-23 16:45:54 +00:00
Evgeny Poberezkin
abff815d38
refactored schema compilation to reduce browser bundle size
2015-12-23 01:50:11 +00:00
Evgeny Poberezkin
a38bf04418
refactor keywords with common code
2015-12-22 17:03:09 +00:00
Evgeny Poberezkin
cdf172c2b8
support $data ref in constant keyword, #81 ; constant keyword is implemented as inline, closes #91
2015-12-22 11:47:12 +00:00
Evgeny Poberezkin
8648a98047
support $data ref in format keyword, #81
2015-12-22 01:18:52 +00:00
Evgeny Poberezkin
ae4e6009a1
support $data ref in maximum/minimum and exclusiveMaximum/Minimum keywords, #81
2015-12-21 15:37:12 +00:00
Evgeny Poberezkin
4bb4059e80
$data ref in pattern and enum keywords, #81
2015-12-21 00:39:09 +00:00
Evgeny Poberezkin
aa18f7cab1
support $data ref in max/minLength, max/minItems and max/minProperties keywords, #81
2015-12-20 22:40:19 +00:00
Evgeny Poberezkin
9d4be9c72a
$data ref in multipleOf keyword, #81
2015-12-20 20:48:15 +00:00
Evgeny Poberezkin
32fe82697a
v5 schema allowing $data references in some keywords
2015-12-19 22:26:26 +00:00
Evgeny Poberezkin
bed46b41aa
relative-json-pointer format
2015-12-19 21:58:45 +00:00
Evgeny Poberezkin
984a70d36c
json-pointer format
2015-12-19 21:23:40 +00:00
Evgeny Poberezkin
35214f3c68
uuid format
2015-12-19 20:03:41 +00:00
Evgeny Poberezkin
ca80b2ec42
correct schemaPath for $refs, additionalProperties, additionalItems, etc.
2015-12-19 15:56:08 +00:00
Evgeny Poberezkin
1c5be913b6
correctly report schema path, #80
2015-12-19 10:52:39 +00:00
Evgeny Poberezkin
afd3831b52
semicolon
2015-12-12 22:29:45 +00:00
Evgeny Poberezkin
723258f052
v5 meta-schema
2015-12-12 21:18:41 +00:00
Evgeny Poberezkin
081f061371
more tests for switch keyword
2015-12-12 19:43:38 +00:00
Evgeny Poberezkin
b5e3e7da6e
ignore coverage for code branches where error objects are not crerated
2015-12-12 18:27:57 +00:00
Evgeny Poberezkin
8114a2b442
tests for switch keyword
2015-12-12 18:14:53 +00:00
Evgeny Poberezkin
318af74629
switch keyword
2015-12-12 13:41:51 +00:00
Evgeny Poberezkin
7c7abbbc74
"parentSchema" property added to error objects when using "verbose" option
2015-12-11 21:35:14 +00:00
Evgeny Poberezkin
610dcd17eb
replace $ in properties with $$ replace pattern, closes #87
2015-12-07 21:55:38 +00:00
Evgeny Poberezkin
5dac3dd4b3
"contains" keyword (v5) is now valid if data is not an array
2015-12-06 21:57:41 +00:00
Evgeny Poberezkin
7141f1375e
cleanup formatMaximum/formatMinimum
2015-12-06 21:25:42 +00:00
Evgeny Poberezkin
1c16707ee5
readme
2015-12-06 20:34:46 +00:00
Evgeny Poberezkin
faae5585c2
semicolon
2015-12-05 21:31:56 +00:00
Evgeny Poberezkin
d7fd8229a9
time format; formatMaximum/formatMinimum and exclusiveFormatMaximum/exclusiveFormatMinimum keywords from v5 proposals
2015-12-05 21:16:28 +00:00
Evgeny Poberezkin
5ebfb41903
fixed missing schemaPath in type keyword
2015-11-29 00:44:25 +00:00
Evgeny Poberezkin
8a0719ea27
additionalItems added to reserved keywords (can be defined as custom)
2015-11-28 16:11:56 +00:00
Evgeny Poberezkin
7d96e1b642
patternGroups keyword (v5 proposals)
2015-11-28 14:59:08 +00:00
Evgeny Poberezkin
cf35958df4
schemaPath in errors, #76
2015-11-27 09:19:04 +00:00
Evgeny Poberezkin
2ddf957554
fixed schema substitution with some options when refs are inlined, closes #77
2015-11-26 22:49:49 +00:00
Evgeny Poberezkin
06fd23217a
removed peerDependency, closes #78
2015-11-24 06:35:50 +00:00
Evgeny Poberezkin
cffb7c7f72
move compileAsync and addKeyword to Ajv prototype, remove reduce
2015-11-22 02:13:03 +00:00
Evgeny Poberezkin
a6de2b8047
addKeyword to separate file, whitespace
2015-11-22 02:07:41 +00:00
Evgeny Poberezkin
6ab3337ddf
compileAsync to separate file
2015-11-22 01:47:15 +00:00
Evgeny Poberezkin
0fe807b68a
v5 keywords constant and contains
2015-11-22 00:31:01 +00:00
Evgeny Poberezkin
65e534ee8b
check/extend errors in inline custom keywords; tests for custom keywords creating errors
2015-11-21 23:12:03 +00:00
Evgeny Poberezkin
56a8b5b582
"dependencies" with option errorDataPath = "property" sets dataPath to missing property, error params has missingProperty, #68 , #69
2015-11-21 12:43:44 +00:00
Evgeny Poberezkin
5c0c8b3b1c
default behaviour of "additionalProperties" in >=2.0.0 ( #69 ) reverts #11 - now dataPath points to the object that is validated and not to the additional property; old (<=1.4.10 ) error reporting of dataPath for "additionalProperties" keyword is available with option errorDataPath == "property"
2015-11-21 01:45:52 +00:00
Evgeny Poberezkin
79ab4add57
fixed errors for "required", tests
2015-11-20 22:52:54 +00:00
Evgeny Poberezkin
a46600e14a
default behaviour in >=2.0.0 ( #69 ) reverts #18 and #55 - now dataPath points to the object that is validated and not to the missing property; old (<=1.4.10 ) error reporting of dataPath for "required" keyword is available with option errorDataPath == "property"
2015-11-19 23:59:10 +00:00
Evgeny Poberezkin
982264f192
removed i18n option (params always added to error objects)
2015-11-17 23:45:19 +00:00
Evgeny Poberezkin
6a2961bcf3
updated error parameters so that ajv-i18n does not depend on schema, compatible with ajv-i18n >= 1.0.0
2015-11-17 23:20:12 +00:00
Evgeny Poberezkin
ee450ec8d0
removed caching of compiled subschemas of custom keywords (it made performance worse in most cases)
2015-11-17 23:20:12 +00:00
Evgeny Poberezkin
ae5b4c0f45
support for "inline" custom keywords, #69
2015-11-17 23:20:12 +00:00
Evgeny Poberezkin
87292f80ea
validate schemas generated by macro keywords
2015-11-17 23:20:12 +00:00
Evgeny Poberezkin
18c1ef858c
support for "macro" custom keywords, #69
2015-11-17 23:20:11 +00:00
Evgeny Poberezkin
285850ce20
pass parent schema to compile/validate functions of custom keywords if they use it, #69
2015-11-17 23:17:59 +00:00
Evgeny Poberezkin
5e45d4eadf
support compiling schemas in custom keywords, #69
2015-11-17 23:17:59 +00:00
Evgeny Poberezkin
fcc776e794
basic implementation of custom keywords, #69
2015-11-17 23:17:59 +00:00
Evgeny Poberezkin
368332ab42
fixed bug in remote ref resolution, closes #70
2015-11-07 13:53:41 +00:00
Evgeny Poberezkin
7b142c56bd
optimized generated code for deep schemas
2015-10-25 21:55:07 +00:00
Evgeny Poberezkin
889fcc12c5
fixed email format regex
2015-10-25 18:50:50 +00:00
Evgeny Poberezkin
c4bf67cab0
changed uri format to allow URNs, closes #59
2015-10-25 11:31:07 +00:00
Evgeny Poberezkin
d1ff86ef5e
refactor resolve
2015-10-25 01:49:07 +01:00
Evgeny Poberezkin
70844207cf
fixed resolution scope change - changing folder in subschema, closes #62
2015-10-25 01:03:19 +01:00
Evgeny Poberezkin
b161a6f1d0
fixed resolution scope change - changing folder, fixed test for #62
2015-10-24 23:16:37 +01:00
Evgeny Poberezkin
2259dc76cd
find schema ref that changes resolution scope in another schema, fixed one test for #62
2015-10-24 22:25:08 +01:00
Evgeny Poberezkin
579e5c5a1d
refactor, remove unused code, test
2015-10-16 19:37:43 +01:00
Evgeny Poberezkin
40eafe036f
removed unused code
2015-10-15 21:41:50 +01:00
Evgeny Poberezkin
50d30a262a
fixed incorrect resolution scope change when "id" property is not a schema id - closes #61 , closes #63
2015-10-15 18:53:55 +01:00
Le Lan Johan
c486e8f25b
Do not force two slashes for uris
...
To allow relative urls (conformed to https://tools.ietf.org/html/rfc1808 ), URI regex do not force two slashes after scheme.
2015-10-14 09:52:28 +02:00
Evgeny Poberezkin
e02972207c
validate "required" properties within "properties" keyword, closes #41
2015-10-11 00:08:58 +01:00
Evgeny Poberezkin
80dc982d59
replaced Array functions with for loop, added ajv instances to tests
2015-10-10 20:50:57 +01:00
Evgeny Poberezkin
738e343ccf
fixed reference resolution when multiple schema files are compiled, closes #50 , closes #53
2015-10-02 22:06:00 +01:00
Marc MacLeod
71e8ff3f2c
update the required message rather than dataPath
2015-09-26 12:11:20 -05:00
Marc MacLeod
f024918133
remove redundant property val in error message
...
For required properties, the error message is currently:
"data.name should have required property .name"
This works for other validations, where the property is present, but required is a special case that indicates the property is not there. The above message is somewhat confusing. I've simply updated the required errors to read:
"data should have required property .name"
2015-09-25 15:18:17 -05:00
Evgeny Poberezkin
a67b661e10
fixed #52 (compileAsync); loadSchema should be called only once for any schema; error is always passed via callback
2015-09-23 23:42:33 +01:00
Evgeny Poberezkin
d6ed06766c
fixed #48 - indices in dataPath in error messages for items keyword
2015-09-23 21:58:19 +01:00
Evgeny Poberezkin
de3d3469fe
fixed #51 (compileAsync); ensure that callback in compileAsync is always called asynchronously
2015-09-23 21:04:34 +01:00
Evgeny Poberezkin
f23deffff3
update text returned by errorsText method
2015-09-22 22:47:54 +01:00
Evgeny Poberezkin
34993de951
i18n support for ajv-i18n package
2015-09-13 01:01:20 +01:00
Evgeny Poberezkin
6723287c3e
optimized equal
2015-09-07 09:58:33 +01:00
Yury Chebotaev
de02d4d8ab
Compare objects with better approach by @blakeembrey that not count order of keys
2015-09-07 03:45:10 +05:00
Yury Chebotaev
1b0a471448
equal fail when order of keys is different
2015-09-07 02:58:01 +05:00
Evgeny Poberezkin
fe097794a9
asynchronous schema compilation with loading missing remote schemas using supplied function, #43 , mulesoft-labs/osprey-mock-service#11
2015-09-03 00:17:50 +01:00
Evgeny Poberezkin
bec34c5ba5
error thrown in case of missing reference has properties missingRef and missingSchema, related to #43 , mulesoft-labs/osprey-mock-service#11
2015-09-02 18:20:43 +01:00
Evgeny Poberezkin
ed7c14801d
jshint, closes #34
2015-08-27 20:55:44 +01:00
Evgeny Poberezkin
d99e707a69
improved performance of "properties" keyword; schema tests for 64 options combinations
2015-08-24 00:40:27 +01:00
Evgeny Poberezkin
cc8de5bb8e
tests for inlined schemas, #6
2015-08-23 21:17:11 +01:00
Evgeny Poberezkin
69bc41a38c
optimised access to compiled/inlined referenced schemas
2015-08-23 13:27:05 +01:00
Evgeny Poberezkin
f3b65f4a58
Merge branch 'master' into inline
2015-08-23 12:04:38 +01:00
Evgeny Poberezkin
843557e03f
optimised regexps to create them during compile time, reuse regexp instances
2015-08-22 23:57:16 +01:00
Evgeny Poberezkin
1c508fa98c
removed compiled dot templates from the repo, #34
2015-08-22 22:17:07 +01:00
Evgeny Poberezkin
f9017a54d3
dataPath using jsonPointers in "required" keyword when allErrors == false, #32
2015-08-22 21:58:38 +01:00
Evgeny Poberezkin
4c4fdd5afc
optimised getExprPath for numbers (items keyword), #32
2015-08-22 21:21:18 +01:00
Evgeny Poberezkin
00419a120e
Merge pull request #36 from blakeembrey/json-pointers
...
Support JSON pointers
2015-08-22 20:23:55 +01:00
Blake Embrey
e6da675f91
Support JSON pointers
2015-08-22 11:52:05 -07:00
Evgeny Poberezkin
7f37f1b546
removed hyper meta-schema, same schema is used as latest meta-schema
2015-08-21 23:11:18 +01:00
Evgeny Poberezkin
d8d59ed352
inline refs with all keywords but "$ref"
2015-08-21 22:52:29 +01:00
Blake Embrey
4989662947
Add latest meta schemas according to schema spec
2015-08-21 10:14:36 -07:00
Evgeny Poberezkin
7d0c6d1d25
inline simple refs, #6
2015-08-19 22:54:05 +01:00
Evgeny Poberezkin
cfec9e3fb3
removed unused it.dataPath, related to #32
2015-08-19 00:31:19 +01:00
Evgeny Poberezkin
e74f79eea6
removed unused code with _debug option
2015-08-19 00:22:05 +01:00
Evgeny Poberezkin
8abbf63e9b
Merge branch 'master' into 1.0.0
2015-08-16 23:00:43 +01:00
Evgeny Poberezkin
982cfab809
removed unused code
2015-08-16 02:11:00 +01:00
Evgeny Poberezkin
704fb11c1d
optimized not rule
2015-08-16 01:21:35 +01:00
Evgeny Poberezkin
286368fb23
optimized required rule compilation
2015-08-16 01:10:43 +01:00
Evgeny Poberezkin
dfd6de5857
removed _debug option
2015-08-16 00:59:28 +01:00
Evgeny Poberezkin
fe53458a6e
missingRefs option tests
2015-08-15 23:59:14 +01:00
Evgeny Poberezkin
87cc09501b
tests: options, format regex
2015-08-12 01:00:46 +01:00
Evgeny Poberezkin
c4fb165f8d
simplified util.toHash
2015-08-11 22:52:34 +01:00
Evgeny Poberezkin
eeb1307448
jshint "validthis" option
2015-08-11 19:24:31 +01:00
Evgeny Poberezkin
a3be10e40d
.jshintrc: node, allow ==
2015-08-11 19:13:08 +01:00
Evgeny Poberezkin
1a1353717b
.jshintrc, code style
2015-08-11 19:06:32 +01:00
Evgeny Poberezkin
dfa640a1b2
readme, fixed addMetaSchema
2015-08-09 12:49:05 +01:00
Evgeny Poberezkin
22d4c6e40d
addSchema no longer returns compiled schema
2015-08-09 11:46:44 +01:00
Evgeny Poberezkin
0012b09ccf
do not replace schema object with compiled function
2015-08-09 00:54:06 +01:00
Evgeny Poberezkin
c175259b48
clean up resolve
2015-08-08 20:57:50 +01:00
Evgeny Poberezkin
234729121f
Merge branch 'master' into 1.0.0
2015-08-08 19:39:27 +01:00
Evgeny Poberezkin
ab32638acc
addMetaSchema validates metaschema by default
2015-08-08 19:34:01 +01:00
Evgeny Poberezkin
1b8c922ebc
preserve roots during ref resolution, closes #27
2015-08-08 19:06:51 +01:00
Evgeny Poberezkin
41ed37f36f
resolves recursive schema issue #27 , breaks test for issue #13 , raml schema has regex issue
2015-08-08 12:21:41 +01:00
Evgeny Poberezkin
9466859f92
addMetaSchema method, closes #26
2015-08-08 10:56:19 +01:00
Evgeny Poberezkin
22513f598a
Merge branch 'master' into 1.0.0
2015-08-07 23:17:06 +01:00
Evgeny Poberezkin
a0c342c58f
fixed resolving recursive references, closes issue #27
2015-08-07 01:54:07 +01:00
Evgeny Poberezkin
bde23cbe9e
removed type escaping in errors
2015-08-07 00:14:08 +01:00
Blake Embrey
b7877a2dcf
Compile dot templates
2015-08-06 14:47:17 -07:00
Blake Embrey
2a8ce631dd
Escape everything else that might need escaping
2015-08-06 14:47:17 -07:00
Blake Embrey
02d6a5431d
Escape schema strings in output
2015-08-06 14:29:45 -07:00
Evgeny Poberezkin
021b20a366
fixed removeAdditional/validateSchema
2015-07-31 21:00:44 +01:00
Evgeny Poberezkin
94f51e1248
Merge branch 'master' into 1.0.0
2015-07-31 20:06:43 +01:00
Evgeny Poberezkin
62adbbe1ed
fixed removeAdditional, tests, added "failing" for removeAdditional; closes #25 , related to #23
2015-07-31 19:23:35 +01:00
Evgeny Poberezkin
23bf0ac5fb
option removeAdditional equal to "all"
2015-07-30 09:22:15 +01:00
Evgeny Poberezkin
232a7aeb49
option removeAdditional equal to "all"
2015-07-30 09:21:36 +01:00
Evgeny Poberezkin
36085debf5
indentations
2015-07-30 09:06:31 +01:00
Andy Scott
cff345ae16
Move `removeAdditional` option out of shared definitions
2015-07-29 09:56:57 -07:00
Andy Scott
94ddac2bc9
Add test for options (just `removeAdditional`, for now)
2015-07-29 09:56:11 -07:00
Andy Scott
d5ed4403b8
During validation allow flag to remove values flagged by `additionalProperties: false`
2015-07-28 16:34:46 -07:00
Evgeny Poberezkin
be023eda11
Merge branch 'master' into 1.0.0
2015-07-26 10:37:56 +01:00
Evgeny Poberezkin
6c93d0346d
fixed "required" with properties that are not identifiers, closes #20
2015-07-22 16:26:28 +01:00
Evgeny Poberezkin
32ee26ec94
readme: supported formats
2015-07-21 22:36:20 +01:00
Evgeny Poberezkin
af46a38428
fixed required for inner level with many properties, closes #19
2015-07-20 17:41:06 +01:00
Evgeny Poberezkin
9b1361c92e
readme, removed unused code
2015-07-04 01:58:08 +01:00
Evgeny Poberezkin
8a5d8f32b7
fixed losing errors when validating mutually recursive schemas, #5
2015-07-04 01:37:35 +01:00
Evgeny Poberezkin
5641185396
adding schemas without compiling them, support for recursive schemas, adding dependencies in any order, #5
2015-07-04 00:48:32 +01:00
Evgeny Poberezkin
5416eaf86d
improved error messages for "required" keyword, closes #18
2015-07-01 00:30:57 +01:00
Evgeny Poberezkin
5fc0b18287
improved error reporting for "required" keyword with large size schema, #18
2015-06-30 22:26:00 +01:00
Evgeny Poberezkin
22cdf02e51
improved error reporting for "required" keyword with limited size schema, #18
2015-06-30 22:09:14 +01:00
Evgeny Poberezkin
1cbcade81f
fixed #1 IDs in refs without root id
2015-06-24 01:28:40 +01:00
Evgeny Poberezkin
e7b0ee76e2
do not create global (instance level) refs for IDs that start from #
2015-06-24 00:55:38 +01:00
Evgeny Poberezkin
0ccf7e73f1
use properties as properties or indeces correctly in all cases
2015-06-24 00:43:52 +01:00
Evgeny Poberezkin
391d60482c
fixed escaping pattern property ( fixes #17 )
2015-06-23 17:26:03 +01:00
Evgeny Poberezkin
853ed64bf9
prevent including js-beautify in the browser
2015-06-22 14:40:25 +01:00
Evgeny Poberezkin
a97e6740e7
removeSchema method, closes #8
2015-06-20 18:41:56 +01:00
Evgeny Poberezkin
b16989f779
cache option to change the way the schemas are cached, issue #8
2015-06-20 15:37:29 +01:00
Evgeny Poberezkin
4e1f0e54c4
prevent possible issues like #13
2015-06-19 00:59:53 +01:00
Evgeny Poberezkin
cbdd00e9c6
fixed #13 - root ref in remote ref
2015-06-19 00:57:19 +01:00
Evgeny Poberezkin
8bfb3f9b4a
added anyOf error, refactored test
2015-06-18 23:01:39 +01:00
Evgeny Poberezkin
46812e0ac6
fixed #14 : remote ref in definitions in remote ref with ids
2015-06-18 20:48:35 +01:00
Evgeny Poberezkin
123aa99b15
test for #13
2015-06-18 15:01:15 +01:00
Evgeny Poberezkin
a285b060ab
option schemas added to readme
2015-06-18 08:13:39 +01:00
Evgeny Poberezkin
5b2ba08813
missingRefs option - "ignore", "fail" or throw error during compilation (default)
2015-06-17 22:23:49 +01:00
Evgeny Poberezkin
2ae8c89708
allow uri and throw on error when validating schemas against meta-schema
2015-06-17 22:06:07 +01:00
Evgeny Poberezkin
9931223dd9
list rules requires explicitely to make browserify work
2015-06-17 15:52:24 +01:00
Evgeny Poberezkin
5f36f17f63
precompiled dot templates, dot is devDependency, closes #3
2015-06-17 14:42:13 +01:00
Evgeny Poberezkin
5b434b426e
validate schema against meta-schema
2015-06-17 02:05:52 +01:00
Evgeny Poberezkin
08c8032fe1
include property in error.dataPath for additionalProperty, closes #11
2015-06-16 22:54:08 +01:00
Evgeny Poberezkin
0576ea986e
removed unused code
2015-06-16 22:19:26 +01:00
Evgeny Poberezkin
f19f7fdedf
refactor $ref.dot
2015-06-16 22:04:17 +01:00
Evgeny Poberezkin
058fcfb5cb
fixed ref resolution using wrong root when compiling resolved schema
2015-06-16 18:14:24 +01:00
Evgeny Poberezkin
e0d6afe7dc
evgeny, jason: fixed incorrect root replacing and failure to resolve ref to another file root from inside ref, closes #12
2015-06-16 17:10:27 +01:00
Evgeny Poberezkin
082284d9cc
fixed incorrect resolution of root ref in ref, fixes #2
2015-06-16 15:11:33 +01:00
Evgeny Poberezkin
536d958cf1
fixed incorrect dataPath in errors for refs, closes #9
2015-06-16 00:21:14 +01:00
Evgeny Poberezkin
993e2a73d7
optimized $ref for simple cases
2015-06-15 16:30:48 +01:00
Evgeny Poberezkin
5582e13c1d
maximum/minimum keywords optimized
2015-06-15 11:14:13 +01:00
Evgeny Poberezkin
13e4f251cc
removed redundant extra check in properties
2015-06-14 10:05:45 +01:00
Evgeny Poberezkin
9dfa073e28
optimized generated code for simple schemas
2015-06-14 09:04:11 +01:00
Evgeny Poberezkin
31c7d22c8b
fixed bug: subschema with additiona/patternProperties only was ignored as always valid
2015-06-13 23:41:57 +01:00
Evgeny Poberezkin
de59b7342e
refactor properties
2015-06-13 19:59:08 +01:00
Evgeny Poberezkin
e3a692f602
optimized additionalProperties validation
2015-06-13 16:35:15 +01:00
Evgeny Poberezkin
60b186402f
custom formats support
2015-06-13 13:55:23 +01:00
Evgeny Poberezkin
0b3806fd18
do not create errors array until the first error
2015-06-13 13:01:05 +01:00
Evgeny Poberezkin
1f0eca163d
removed recursive parameter, improved performance
2015-06-13 11:40:45 +01:00
Evgeny Poberezkin
db3ec5d51e
fixed code cleanup that was removing empty "if" leaving "else"
2015-06-13 10:27:05 +01:00
Evgeny Poberezkin
4bc538933d
fixed broken template
2015-06-12 23:30:50 +01:00
Evgeny Poberezkin
32e83e5f28
exclude schemas without validation keywords, dont create data variables unless they are used at least twice
2015-06-12 22:12:34 +01:00
Evgeny Poberezkin
0aaa78eca4
optimize generated code to skip following rule groups if validation had already failed
2015-06-12 18:16:54 +01:00
Evgeny Poberezkin
5c7f764c6d
fixed validation bug with recursive schemas
2015-06-12 14:22:33 +01:00
Evgeny Poberezkin
80b04dfc4c
optimised generated code for all keywords
2015-06-12 11:43:41 +01:00
Evgeny Poberezkin
804627efe4
optimized generated code for oneOf keyword
2015-06-12 01:43:31 +01:00
Evgeny Poberezkin
0dfa95c011
optimized generated code for patternProperties
2015-06-10 23:58:49 +01:00
Evgeny Poberezkin
ea974ab48d
fast mode for format validation; optimised code generated for enum rule
2015-06-10 21:51:14 +01:00
Evgeny Poberezkin
1cd5eb5c72
make errors available after validate method call
2015-06-08 08:03:33 +01:00
Evgeny Poberezkin
606e81ad4b
full support of remote refs
2015-06-07 21:55:40 +01:00
Evgeny Poberezkin
6284b83db7
ajv api changed, api tests, "resolve refs" progress
2015-06-07 12:47:57 +01:00
Evgeny Poberezkin
fca4c77820
more tests, fixed resolve infinite loop
2015-06-06 19:44:07 +01:00
Evgeny Poberezkin
64b80cbfff
more tests, fixed/optimized refs
2015-06-06 16:18:52 +01:00
Evgeny Poberezkin
4db4008e2c
optimized code generation, beautify option
2015-06-06 14:13:31 +01:00
Evgeny Poberezkin
808e2270f8
removed unused dataPath
2015-06-06 02:40:17 +01:00
Evgeny Poberezkin
22a6852967
only compute paths when needed
2015-06-06 02:32:23 +01:00
Evgeny Poberezkin
d0089f82e5
optimize & tidy up
2015-06-06 02:07:50 +01:00
Evgeny Poberezkin
1a6e9c8d63
replace hasOwnProperty with !== undefined
2015-06-05 19:08:11 +01:00
Evgeny Poberezkin
f47d821418
unicode lengths are used by default; tidy up
2015-06-05 00:44:04 +01:00
Evgeny Poberezkin
b9b9affcf4
correct unicode string lengths with "unicode" option
2015-06-04 23:08:45 +01:00
Evgeny Poberezkin
62e0d23a00
inline subschemas unconditionally, cleanup
2015-06-04 21:43:16 +01:00
Evgeny Poberezkin
568e76a351
removed potentially leaking "valid" variable
2015-06-04 21:18:31 +01:00
Evgeny Poberezkin
c441624009
inlined subschemas in properties rule
2015-06-04 18:04:09 +01:00
Evgeny Poberezkin
0832e55c4c
inlined subschemas in items rulw
2015-06-04 00:31:24 +01:00
Evgeny Poberezkin
7b790a4b0f
inlined subschemas in allOf, anyOf, not, oneOf and dependencies
2015-06-04 00:17:33 +01:00
Evgeny Poberezkin
34a98e273a
refactor with defs; use numbered variable names in different levels
2015-06-03 22:30:04 +01:00
Evgeny Poberezkin
4a54f9bb73
inline validate progress
2015-06-02 01:59:32 +01:00
Evgeny Poberezkin
3d58b95f56
optimized uniqueItems
2015-06-02 00:14:38 +01:00
Evgeny Poberezkin
e7c3cb39aa
optimized uniqueItems
2015-06-01 23:43:46 +01:00
Evgeny Poberezkin
a013017af7
all rules are inlined
2015-06-01 20:44:12 +01:00
Evgeny Poberezkin
ed4130f031
inline items
2015-06-01 18:51:22 +01:00
Evgeny Poberezkin
8f48bb1392
inlined properties
2015-06-01 01:59:58 +01:00
Evgeny Poberezkin
ddf192e172
inlined not, anyOf, oneOf, allOf
2015-05-31 21:46:25 +01:00
Evgeny Poberezkin
99bec2b8c4
uniqueItems, $ref inlined
2015-05-31 18:40:04 +01:00
Evgeny Poberezkin
dcf20e93dc
use glob in test
2015-05-31 13:26:54 +01:00
Evgeny Poberezkin
d784d95959
refactor validate generator
2015-05-31 12:21:41 +01:00
Evgeny Poberezkin
0021032091
removed dataType parameter
2015-05-31 10:46:44 +01:00
Evgeny Poberezkin
46cf5f9930
optimized required keyword
2015-05-31 02:01:30 +01:00
Evgeny Poberezkin
089ac03b1b
simplified check for type "integer"
2015-05-31 01:11:32 +01:00
Evgeny Poberezkin
5fdf8ff720
schema in errors only in verbose mode, changed validate
2015-05-31 00:42:13 +01:00
Evgeny Poberezkin
13eb132cb9
refactored rules iteration to optimize code
2015-05-30 23:04:46 +01:00
Evgeny Poberezkin
baa7ea128b
refactor to return boolean
2015-05-30 21:10:21 +01:00
Evgeny Poberezkin
1a597d1e2d
removed wrapper function from generated code
2015-05-30 19:11:06 +01:00
Evgeny Poberezkin
1c2444f4d7
$ref with internal refs
2015-05-30 11:50:18 +01:00
Evgeny Poberezkin
32e39f64a2
fixed inlined rules
2015-05-30 09:59:35 +01:00