Skip to content

Latest commit

聽

History

History
128 lines (99 loc) 路 4.25 KB

CHANGELOG.md

File metadata and controls

128 lines (99 loc) 路 4.25 KB

Changelog

1.0.0 - 2023-11-10

  • ES modules support & typescript support
  • Release version

0.9.0 - 2023-11-09

  • Pre-release fixes
  • Documentation enhancements
  • Code quality improvements
  • New type - null
  • Not required fields now works only with undefined samples
  • Removed max items mechanism from type annotations module generator

0.8.0 - 2023-11-08

  • JSDOC generation for metatype module, issue
  • Metatest optional default export
  • Typings improvements

0.7.0 - 2023-11-08

  • Calculated fields [experemental], issue
  • Readme & tests for module
  • Fixed README example errors

0.6.0 - 2023-11-06

  • Typescript generation module, issue
  • Documentation fixes

0.5.0 - 2023-11-05

  • Readme enhancement, issue
  • JSDOC documentation

0.4.0 - 2023-11-05

Modular mechanism issue

  • Support latest:21 node version

  • Removed parser (maybe temporary)

  • TypeScript .d.ts support

  • Schema field with multiple type variants now works only with special type union

  • Modular mechanism (internal rework): How it works

    const schema = new Schema();
    schema.register((schema, options, plan) => {}); //? Register new module

    By default registrated modules are:

    • Metatest module (Adds tests for prototypes)
    • Metatype module (Typescript parser)
    • Handyman (Quality of life module)

    But you also remove default modules:

    Schema.modules.delete('metatest');
  • New shorthands for:

    • enum example: ['winter', 'spring', 'summer, 'autumn']
    • tuple example: ['string', 'number']
    • object example: { a: string, b: number }
    • string example: 'string'
    • schema example: 'MyGlobalSchema'
    • schema#2 example: new Schema('string')
  • Removed preprocessor mechanism

  • Schemas now can be part of plan

  • Performance improvements (by removing unnecessary modules)

  • Lightweight inheritance

  • Removed type JSON (temporary)

  • Prototype chaining

  • Partial testing

  • New prototypes:

    • Tuple
    • Record
    • Schema
    • Union

0.3.0 - 2023-10-19

  • Plan generation from sample issue
  • Schema child method, now you can update only schema or only options for new schemas
  • Metadata fetcher, now you can gather all metadata by schema.meta
  • Fixed case when schema returns only methods without metadata, now it returns prototypes key with all metadata
  • Preprocess & postprocess for objects properties mutations
  • New prototype enum
  • Code cleanup & tests

0.2.0 - 2023-10-18

  • Renamed astroplan -> metaforge
  • Meta information & Builded tree export issue
  • Custom checks (rules) issue
  • Allow custom types, schemas and rules to return value of string, array, boolean and SchemaError types;

0.1.0 - 2023-10-16

  • Stable release version
  • Warnings before testing
  • Repository created
  • Namespaces, runtime schema checking, custom types
  • Default struct types: Array, Set, Map, Object
  • Default scalar types: String, Boolean, Number, BigInt
  • Default exotic types: Any, Undefined, JSON
  • Custom Errors