All Versions
31
Latest Version
Avg Release Cycle
32 days
Latest Release
1208 days ago

Changelog History
Page 1

  • v7.0.0-rc.0 Changes

    December 06, 2020

    ๐Ÿ‘Œ Support code generation options code.es5 and code.lines for standalone validation code.

  • v7.0.0-beta.9 Changes

    December 02, 2020

    ๐Ÿ“„ JSONSchemaType support for the new draft-2019-09 keywords.

  • v7.0.0-beta.8 Changes

    November 29, 2020

    ๐Ÿ‘Œ Support for generation of standalone validation code

  • v7.0.0-beta.7 Changes

    November 22, 2020

    Compatible with ajv-errors v2-beta.
    Keywords for all data types that are executed after others (with post: true in keyword definition).

  • v7.0.0-beta.6 Changes

    November 16, 2020

    โž• Add "latest" meta-schema URI "http://json-schema.org/schema" to draft-2019-09 class to reference default meta-schema (to support ajv-keywords)

  • v7.0.0-beta.5 Changes

    November 15, 2020

    ๐Ÿ‘ Separate Ajv class with JSON Schema draft-2019-09 support and Ajv class without any keywords/meta-schemas:

    import Ajv from "ajv" // draft-07 supportimport AjvCore from "ajv/dist/core" // no keywords includedimport Ajv2019 from "ajv/dist/2019" // draft-2019-09 support (option `draft2019: true` no longer used)
    

    0๏ธโƒฃ Different default import using require (breaking change):

    const Ajv = require("ajv").default // draft-07 supportconst AjvCore = require("ajv/dist/core").default // no keywords includedconst Ajv2019 = require("ajv/dist/2019").default // draft-2019-09 support
    

    ๐Ÿ‘Œ Support for $data reference with in draft-2019-09

  • v7.0.0-beta.4 Changes

    November 10, 2020

    ๐Ÿ‘ JSON Schema draft-2019-09 support with option draft2019:

    • keyword unevaluatedProperties/unevaluatedItems
    • ๐Ÿ‘€ dynamic recursive references - see Extending recursive schemas
    • โž• additional keywords: dependentRequired, dependentSchemas, maxContains/minContains
  • v7.0.0-beta.3 Changes

    November 05, 2020

    โž• Added the new keywords from draft 2019-09:

    • ๐Ÿ‘ unevaluatedProperties and unevaluatedItems (require option unevaluated to be supported). Please note that an additional generated code may be added to track evaluated properties, even if these keywords are not used).
    • ๐Ÿ‘ dependentProperties and dependentSchemas (require option next to be supported). These keywords replaced dependencies that is still supported though for draft-7 compatibility.
    • ๐Ÿ‘€ maxContains and minContains (require option next to be supported). See docs and examples here
  • v7.0.0-beta.2 Changes

    October 24, 2020
    • Export additional types
    • Prevent optimiser from removing assignments with side effects when (for user keywords that modify data and have valid: true option)
    • This version is compatible with ajv-keywords v4.0.0-beta.0 and ajv-formats v0.4.0
  • v7.0.0-beta.1 Changes

    October 10, 2020

    ๐Ÿš€ See v7.0.0-beta.0 for changes from v6.

    Switched to syntax tree for code generation.

    โž• Added code optimizations:

    • โœ‚ removes empty and unreachable branches.
    • โœ‚ removes unused variable declarations.
    • replaces variables that are used only once and assigned expressions that are explicitly marked as "constant" (i.e. having referential transparency) with the expressions themselves.

    โœ… These optimizations reduce the size of generated code by more than 10% (based on the tests), removing over 16% of statements in compiled code.

    โšก๏ธ Option code.optimize to control optimization - one optimization pass by default.

    ๐Ÿ‘€ See Code optimization for more details.