v4.0.0 (2023-04-24)
Breaking changes:
Implemented enhancements:
- Fix more rubocop violations #484 (bastelfreak)
- Fix multiple rubocop violations #483 (bastelfreak)
- Add Ruby 3.2 to CI matrix #482 (bastelfreak)
- Enable RuboCop in CI #480 (bastelfreak)
- docs: mention draft 06 support #476 (levenleven)
- Add const validator to draft6. #425 (torce)
- Add propertyNames validator to draft6 #407 (torce)
Fixed bugs:
- Changed draft-06 url back from /draft/schema# to /draft-06/schema# #388 (iainbeeston)
Merged pull requests:
- fix more rubocop violations #490 (bastelfreak)
- fix rubocop whitespace violations #489 (bastelfreak)
- Fix more rubocop violations #488 (bastelfreak)
- rubocop: Fix Style/HashSyntax #487 (bastelfreak)
- CI: Run on PRs and merges to master #486 (bastelfreak)
- rubocop: Fix Style/StringLiterals #485 (bastelfreak)
- CI: Only run on pull requests & Use latest GitHub workflows #481 (bastelfreak)
v3.0.0 (2022-05-03)
Breaking changes:
- json-schema.gemspec: Raise required ruby version to 2.5 #466 (bastelfreak)
- Call URI.open directly / Drop Ruby 2.4 support #462 (bastelfreak)
Implemented enhancements:
- Add const attribute support #471 (jeremie-stripe)
- Add truffleruby/jruby to CI #469 (bastelfreak)
- Add Ruby 3.1 to CI matrix #468 (bastelfreak)
- Add Ruby 3.0 to CI matrix #467 (bastelfreak)
- Allow resolution of fragments with escaped parts #463 (bastelfreak)
- Add Ruby 2.6/2.7 support #457 (bastelfreak)
Fixed bugs:
- Bugfix: Fix fragment when used with extended schema #464 (bastelfreak)
Closed issues:
- Failure/Error: require 'json-schema-rspec', cannot load such file -- multi_json #448
- Allow type or null? #441
- type for NilClass #428
- It would be very useful if the required property name was included in the error object #417
- Uninitialized constant JSON::Validator::Timeout #384
Merged pull requests:
- update README.md/gemspec; migrate to GitHub actions #456 (bastelfreak)
- Update json-schema.gemspec; require addressable 2.8 and newer #455 (ahsandar)
- Update README.md #444 (cagmz)
- Load VERSION.yml from relative path, so that developers can use "bundle config local.json-schema" #419 (ndbroadbent)
- Fix typo in Changelog (2019 => 2018) #418 (ndbroadbent)
- Made sure we require timeout before using it #385 (iainbeeston)
- webmock 3 drops ruby 1.9 support; specify this in its gemfile #383 (notEthan)
- Refactor common test suite #377 (iainbeeston)
- Corrected the draf6 schema id #376 (iainbeeston)
- Added a rake task to automatically download the latest metaschemas #375 (iainbeeston)
- Re-enabled test warnings #374 (iainbeeston)
- Fix for string invalid scheme error when string contains colon #373 (benSlaughter)
- Added simplecov #343 (iainbeeston)
- Extracted all limits out to their own file #342 (iainbeeston)
v2.8.1 (2018-10-14)
Closed issues:
- Version 2.8.1 Patch release? #415
- possible to enforce schema ? #410
- undefined method `each' for "<property>":String #409
- Documentation Request: How do I validate the schema itself? #398
- :errors_as_objects can never be false in base_schema.validate #392
- too complex #390
- Release 2.8.0 of the gem is missing a tag in the repo #389
- Remove trailing whitespaces #378
- Failure on 'allOf' validation message output is too generic #320
v2.8.0 (2017-02-07)
Closed issues:
- JSON::Validator.fully_validate(filename, data) fails when trying to parse filename as JSON #366
- 2.7.0 fails validating not required fields #364
- Unable to activate json-schema-2.6.2, because addressable-2.4.0 conflicts with addressable (~> 2.3.8) #356
- Missing comma after empty array not detected as invalid #352
- JSON::Util::URI.parse memory leak #329
- additionalProperties is tested and implemented incorrectly #321
Merged pull requests:
- Updated ruby versions for travis #372 (iainbeeston)
- Load local copy of draft schemas #362 (iainbeeston)
- Made sure clear_cache also clears the cache of parsed uris #361 (iainbeeston)
- Simplified
#validator_for
methods #346 (iainbeeston) - Moved Validator#absolutized_uri and RefAttribute's ref parsing into the URI module #345 (iainbeeston)
- Deprecated
JSON::Validator#validate2
#336 (iainbeeston) - Deprecated #extend_schema_definition #335 (iainbeeston)
- Use self or self.class rather than fully qualified class names #333 (iainbeeston)
- Stopped the additional properties test from using class_eval #332 (iainbeeston)
v2.7.0 (2016-09-29)
Closed issues:
- Test failure due to update in JSON-Schema-Test-Suite #357
- addressable conflict #355
- String "uri" format validation doesn't work #353
- How I can set string format by uri or email? #351
- Whitelisting properties #331
- How to build a complex schema when using with Rails #328
- Issues validating objects with oneOf #327
- Trouble with Oj parser on parse error #305
- tests failing with ruby 2.2 uninitialized constant JSONSchemaDraft1Test::ArrayValidation (NameError) #262
Merged pull requests:
- Made it possible to have a property named "$ref" #360 (iainbeeston)
- Use latest json-schema draft in tests by default #359 (iainbeeston)
- Restricted the ruby 1.9 build to json < 2 #350 (iainbeeston)
- Item partial tuples #348 (jlfaber)
- Removed the ruby 1.8 build from travis #340 (iainbeeston)
- Made sure all validate methods go through the same call chain #338 (iainbeeston)
- Fixed issues with caching #334 (iainbeeston)
- Allow addressable 2.4+ to work with json-schema #312 (iainbeeston)
- Tidy up tests #290 (iainbeeston)
v2.6.2 (2016-05-13)
Closed issues:
- "required" array in sub schema not being checked #325
- optional attributes are not being parsed as optional #324
- JSON pointers are broken when they contain a
:
#319 - MultiJSON receives filepath instead of its content #318
- Chef DK installs addressable 2.4.0 which conflicts with the requirement for 2.3.8 for json-schema #317
- Empty array (incorrectly?) triggering ValidationError #311
Merged pull requests:
- Made it possible to have refs that include URI-special characters #322 (iainbeeston)
- Reformatted the examples to make them easier to read #316 (iainbeeston)
v2.6.1 (2016-02-26)
Closed issues:
- uninitialized constant JSON::Validator::SchemaParseError #307
- How can I perform more complex validations #306
fully_validate
//anyOf
,typeOf
,allOf
don't raise validation errors when usingrecord_errors: true
#300- Feature Request: provide ref-like path for allOf/oneOf matches if validation fails. #298
- NameError: uninitialized constant JSON::Validator::SchemaParseError #292
- oneOf and patternProperties validates incorrectly #291
- Validate a schema #287
Merged pull requests:
- Update README.md #308 (cassidycodes)
- Convert readme to markdown #302 (lencioni)
- Made sure we include the module name for SchemaParseErrors #293 (iainbeeston)
v2.6.0 (2016-01-08)
Closed issues:
- How to validate data with only part of my schema #288
- Addressable::Uri does not raise error on invalid strings #282
- typeOf array doesn't validate references #281
- register_format_validator doesn't add format to @@default_validator #276
- JSON API 1.0 Support #272
Merged pull requests:
- Remove ruby warnings #286 (teoljungberg)
- Redux: speed up JSON::Validator.validate #285 (iainbeeston)
- Test all versions in test_custom_format #278 (jpmckinney)
- Update README.textile to fix schema validation example #271 (mkonecny)
- Only rescue errors explicitly #239 (iainbeeston)
v2.5.2 (2015-11-24)
Closed issues:
- Properties as Property not working #273
- Schema nesting with id key is not validating as expected #270
- Does not validate email correctly... #269
- No implicit conversion of integer #259
- No implicit conversion of integer to string with links #258
- Automatically parse number values #257
- Does not fail for type number when the data is string #251
- Prepare release of 2.5.1 #228
- Unable to set clear_cache option #225
- Incorrect exception message in 2.5.0 #220
- Trouble with forbidden additionalProperties and one/any/allOf? #161
Merged pull requests:
- register_format_validator on default_validator #277 (jpmckinney)
- Explicitly notes :strict overrides any required properties set in schema #252 (KTKate)
- Use old hash syntax in tests #240 (iainbeeston)
- Allow boolean false as a default property. #238 (chrisandreae)
- Removed test files from gemspec #237 (iainbeeston)
- Expose clear_cache option #235 (danieldraper)
- Enabled warnings when running tests #231 (iainbeeston)
v2.5.1 (2015-02-23)
Closed issues:
- Passing in a fragment with an even number of tokens can lead to undefined method `validate' for #<Hash...> #265
- Absoluteness correction #233
- Consider releasing 2.5.1 #227
Merged pull requests:
- Ignore fragments in schema caching. Fixes #233 #234 (jphastings)
- Only add violating properties to error message for strict validation #230 (RST-J)
- Show sub-errors for oneOf #216 (isage)
- Update README - latest version is currently 2.5.0 #215 (take)
- End single quote in validation error #213 (olleolleolle)
- add description for nested types array and object #212 (brancz)
- Updated to addressable 2.3.7 #226 (iainbeeston)
- Made sure we really do update the common test suite before test runs #224 (iainbeeston)
- Added Ruby 2.2 to the build matrix #223 (iainbeeston)
- Renamed variable in oneOf to avoid name clash #221 (iainbeeston)
- Issue with Fixnum and Float in enum #219 (RST-J)
v2.5.0 (2014-12-03)
Closed issues:
- additionalProperties and $ref are not working together #185
- Dependencies #179
- Use Addressable for handling URIs? #173
- Full support for the common test suite #163
- Remove yajl-Ruby support in favour of multi_json #162
- Drop support for email and hostname formats #159
- format: date-time validator isn't leap-second compliant #123
- Symbol keys not handled in combination with additionalProperties #108
- When extending a schema in folder names with spaces #100
- Enhancing schema draft #99
- Doesn't work in JRuby (1.7.10 or 1.7.6) with --1.8 #95
- Support for string "format" attribute #79
- Provide secure way of testing #77
- Breaks with multi_json 1.7.9 (works with 1.7.7) #73
- additionalProperties and extends don't work together #31
- Next minor release (2.5.0) #202
Merged pull requests:
- Added bundler gem management rake tasks #211 (iainbeeston)
- Refactored parser error code #210 (iainbeeston)
- WebMock is on globally now; no need to disable it #208 (pd)
- Addressable spring clean #199 (iainbeeston)
- Tidied the common test suite tests #197 (iainbeeston)
- Remove "no dependencies" claim from README #194 (pd)
- Remove unused Schema#base_uri method #193 (pd)
- Updated the common test suite #191 (iainbeeston)
- Use unescape for paths before reading files #188 (RST-J)
- Use the new build env on Travis #187 (joshk)
oneOf
andanyOf
errors where default values are present #181 (tonymarklove)- Only stringify schema once #180 (treppo)
- Refactor ref schema URI construction. #177 (gabrielg)
- Use RFC 2606 reserved invalid DNS name in tests. #176 (gabrielg)
- Use Addressable gem to handle URIs #174 (RST-J)
- General cleanup, mostly focused on attributes/* #172 (pd)
- Extend common-test-suite to ignore individual test cases #171 (mpalmer)
- Added some tests around file uris #169 (iainbeeston)
- Add some test helpers for common patterns #168 (pd)
- Removed multijson license #167 (iainbeeston)
- Add mailing list and IRC channel #166 (hoxworth)
- Fix draft3
disallow
validation #165 (pd) - Enable refremote specs #164 (pd)
- Fix for relative ref with fragment identifier on Windows #109 (jlblcc)
- Any ref issue #200 (RST-J)
- Fix test runs for optional dependencies #196 (iainbeeston)
- JSON::Schema::Reader #175 (pd)
2.4.1 (2014-10-28)
Merged pull requests:
- Replaced #add_indifferent_access with #stringify #142 (iainbeeston)
2.4.0 (2014-10-28)
Fixed bugs:
- Bug in IPV6 format validation #133
Closed issues:
- Path issue when validating draft-04 schema #160
- Schema validation is broken in master #135
- Dependencies don't seem to work correctly #117
- Use common test suite? #113
- "Fix symbol keys in data" breaks working implementations #96
Merged pull requests:
- Add yajl, multi_json and uuidtools to travis #157 (iainbeeston)
- Store static regexps in constants for re-use #156 (pd)
- Fix metaschema access #155 (pd)
- Add ruby 1.8 to travis #154 (iainbeeston)
- Enable draft4/dependencies test #153 (pd)
- Add 1.8.7 minimum ruby version to the spec #149 (hoxworth)
- Validator tidy #147 (iainbeeston)
- Unescape ref fragment pointers #146 (pd)
- Fix schema dep v4 #145 (RST-J)
- Update descr #144 (RST-J)
- Use IPAddr class to validate ip formats #143 (RST-J)
- Added codeclimate badge to readme #141 (iainbeeston)
- Make intra-doc refs work when validating with :fragment #127 (mpalmer)
- Hyper validation #125 (mpalmer)
- Parse dates using ruby's own date parsing - not regular expressions #118 (iainbeeston)
2.3.0 (2014-10-26)
Fixed bugs:
- Possible bug: nil items in Array properties are stripped before MinItems validation #129
- some questions about addtionalproperties #112
Closed issues:
- Possible bug: wrong expectation of required object property #139
- Array Validates Against Schema When It Shouldn't #137
- Registration of custom format validators #128
- Invalid schema not reported using fully_validate with a oneOf attribute #116
- Errors for required properties do not contain the fragment correctly. #115
- Use of String#each breaks Ruby 1.9 #78
Merged pull requests:
- Do not compact before checking minItems #140 (pd)
- Made validation sub errors indicate where they come from #138 (iainbeeston)
- Add support for
"required": false
while using draft3 with strict mode #134 (bkirz) - Custom formats #132 (RST-J)
- Extract formats into separate classes #131 (RST-J)
- Refactor classes and validator accessor methods #130 (iainbeeston)
- Another allOf ref test, and rename class #126 (mpalmer)
- Fix bad ref test for proxy support #124 (mpalmer)
- Run json-schema.org's common test suite #122 (mpalmer)
- Stopped draft3 from registering itself as the default validator #121 (iainbeeston)
- Added ruby 2.0, rubinius and jruby to travis build #119 (iainbeeston)
- Handle non-latin uris #114 (iainbeeston)
- Remove deprecated :rubygems source from Gemfile #111 (jamiecobbett)
2.2.4 (2014-07-19)
Closed issues:
- Not correctly validating: "The property did not match the following type: string in schema" #101
- Validator return error when data is an array with hash with symbolic keys #94
Merged pull requests:
2.2.3 (2014-07-16)
Closed issues:
- Symbol keys are not supported in objects within arrays #104
Merged pull requests:
- Make hashes in arrays indifferent to string/symbol keys #105 (jennyd)
- Load files from namespaced location to avoid conflicts #98 (kjg)
1.2.1 (2014-01-15)
2.2.1 (2014-01-15)
2.2.0 (2014-01-15)
1.2.0 (2014-01-15)
Closed issues:
2.1.8 (2014-01-04)
Closed issues:
- Enum conversion to a Hash breaks Schema Validation #93
Merged pull requests:
- Fix logic error in format validation #80 (jpmckinney)
2.1.7 (2014-01-03)
Closed issues:
- Validation still requires data hash keys to be strings. Contrary to most recent version's stated purpose. #74
2.1.6 (2014-01-01)
Closed issues:
- Validator takes too long to validate JSON. #89
- JSON::Validator.fully_validate returns error for valid schema with "not" keyword in it #84
- JSON::Validator modifies schema object #83
- 2.1.2 broke 1.8.7 compatibility #62
2.1.5 (2014-01-01)
Closed issues:
- Can you push up the tags? #91
- JSON::Validator.default_validator is being set to draft-03 by default #76
- Can't validate with fragment #64
- Schema-wide "required" doesn't work #61
2.1.4 (2013-12-31)
Closed issues:
- Fat arrow vs colon #88
- allOf and $ref not working? #86
- Returns "valid" when schema is invalid #81
- How to validate schema only? #71
- $ref in anyOf, allOf, etc don't work #66
- Problem with $ref to validate array property #63
- License missing from gemspec #60
Merged pull requests:
- Fix issue 86 #92 (sebbacon)
- Updated date-time regex to accept zero or one of : in the timezone designator #85 (jwarykowski)
- Fixed fragment resolution. Issue #64 #75 (arcticlcc)
- Dont break file scheme with unc on windows #72 (kylog)
- Fix one of logic #70 (apsoto)
- Add Gemfile and ignore Gemfile.lock. #68 (ryotarai)
2.1.3 (2013-08-02)
Closed issues:
- Fail on ruby 1.9.3, jruby 1.6.8 --1.9 #45
Merged pull requests:
2.1.2 (2013-07-19)
Closed issues:
- validate_schema does not use value of $schema #59
2.1.1 (2013-07-03)
Closed issues:
- Validate against a schema fragment. #56
- 1.0.9 has ruby 1.9.x dependency; breaks patch compatibility #44
2.1.0 (2013-07-03)
Closed issues:
Merged pull requests:
- Add failing test demonstrating failure of complex union type. #52 (myronmarston)
2.0.4 (2013-07-01)
Closed issues:
- ISO 8601 date-times do not include UTC offset #42
Merged pull requests:
2.0.3 (2013-06-26)
Merged pull requests:
- Fix date-time format. #43 (chris-baynes)
2.0.2 (2013-06-26)
Closed issues:
- Unable to Validate v4 Schema File #57
Merged pull requests:
- maxitems error message correction #55 (lpavan)
- Extends support array of objects too #53 (rogerleite)
2.0.1 (2013-06-25)
Closed issues:
- Support draft v4 #51
2.0.0 (2013-06-23)
Closed issues:
- json_schema with old multi_json in Rails context #39
- Doesn't work with 1.9 stdlib JSON #33
- Validation not working on nested properties #30
- Add in a validation error structure #29
- union types with schemas don't work with :record_errors => true #27
- Validator is not thread safe #24
Merged pull requests:
- More descriptive error message for PatternAttribute #49 (quoideneuf)
- Support (optional) adding of default values to input data while validating #48 (goodsimon)
- Restore 1.8.7 compatibility. #46 (myronmarston)
- Extends and additional properties take 2 #41 (japgolly)
- Fix Issue with MultiJson Feature Detection #40 (tylerhunt)
- Extract type validation into a helper method. #38 (myronmarston)
- date-time format and fractional seconds part #36 (ILikePies)
- Play nicely with new and old versions of MultiJson #35 (japgolly)
- Validation fails if root data object is a string #26 (vapir)
1.0.4 (2012-02-14)
Closed issues:
- Extending a schema doesn't allow overrides #22
Merged pull requests:
- Multijson and schema validation #28 (myronmarston)
- Json::Schema::*Error classes should inherit from StandardError instead of Exception. #25 (tommay)
- More descriptive error messages #23 (zachmargolis)
1.0.0 (2012-01-04)
0.9.12 (2011-12-14)
Closed issues:
- Validation is slow #19
- dependency with string value #18
- minLength for non string type #17
- Hypermedia schema #16
- SimpleUUID::UUID conflicts with simple_uuid gem #11
- UUID class conflict #9
Merged pull requests:
- Fixed Issue #19 - replace schema.inspect with Yajl::Encoder.encode or Marshal.dump as a fallback #20 (kindkid)
- Fixes for validate_schema #15 (dekellum)
- Fix require of attributes and validators to work in Rubinius #14 (IPGlider)
- Gem::Specification::find_by_name errors #12 (oruen)
- removed new rubygems deprecation warnings #10 (Vasfed)
0.9.3 (2011-04-21)
Closed issues:
- typo in lib/json-schema/validator.rb at line 270 #8
- Relative URIs are resolved improperly #5
- 'format' constraint should not be validated for null values #4
Merged pull requests:
0.9.2 (2011-03-30)
0.9.1 (2011-03-21)
Closed issues:
- Previous draft support #2
Merged pull requests:
0.9.0 (2011-03-19)
0.2.0 (2011-03-09)
0.1.14 (2011-03-09)
0.1.10 (2011-01-10)
0.1.6 (2010-12-03)
0.1.2 (2010-11-30)
* This Changelog was automatically generated by github_changelog_generator