Skip to content

Releases: gcanti/io-ts

1.8.3

14 Mar 18:07
Compare
Choose a tag to compare
  • Polish
    • add stripInternal flag to tsconfig.json (@gcanti)
    • handle NaN in PathReporter (@gcanti)
    • throw if union encoding doesn't find a usable codec (@leemhenson)
  • Deprecation

1.8.2

11 Feb 07:00
Compare
Choose a tag to compare
  • Bug Fix
    • align the runtime behavior of Exact.is with the type system, fix #288 (@gcanti)

1.8.1

05 Feb 16:40
Compare
Choose a tag to compare
  • New Feature
    • add brand combinator (@gcanti, @lostintime)
    • add Int codec (@gcanti)
    • exact strips additional properties while decoding / encoding (@gcanti)
    • un-deprecate strict combinator, is now an alias of exact(type(...)) (@gcanti)
  • Bug Fix
    • fix wrong context keys for tagged unions (@gcanti)
  • Deprecation
    • deprecate refinement combinator in favour of brand (@gcanti)
    • deprecate Integer codec in favour of Int (@gcanti)
    • deprecate StrictType class (@gcanti)
    • deprecate StrictC interface (@gcanti)
  • Polish
    • modify the implementation of intersection in order to support combinators that strip additional properties (@gcanti)
    • do not validate the codomain of a key of a record if its domain in invalid (@gcanti)
    • normalize missing message field in ValidationError (@gcanti)
    • fix name of recursive codec definitions (@gcanti)
    • remove unexpected validation path from partial type, closes #195 (@gcanti)
    • do not leak taggedUnion implementation when tag validation fails (@gcanti)
    • add actual value to all context entries (@gcanti)
    • exact now bails out when the value is not an UnknownRecord (@gcanti)
    • tuple should not leak the implementation (never usage) (@gcanti)
    • exact should not leak the implementation (never usage) (@gcanti)
    • use Number.isInteger in Integer implementation (@gcanti)
    • use the Flow convention to name exact codecs (@gcanti)

1.7.1

28 Jan 07:47
Compare
Choose a tag to compare
  • Deprecation
    • deprecate any (@gcanti)
    • deprecate object (@gcanti)
    • deprecate Dictionary in favour of UnknownRecord (@gcanti)
    • deprecate Array in favour of UnknownArray (@gcanti)
    • deprecate dictionary in favour of record (@gcanti)

1.7.0

24 Jan 16:36
Compare
Choose a tag to compare
  • New Feature
    • better support for custom messages, closes #148 (@gcanti)
      • add optional message field to ValidationError
      • add message argument to failure
      • PathReporter should account for the new field
    • add actual optional field to ContextEntry, closes #194 (@gcanti)
  • Deprecation
    • deprecate getValidationError (@gcanti)
    • deprecate getDefaultContext (@gcanti)

1.6.4

18 Jan 11:32
Compare
Choose a tag to compare
  • Bug Fix
  • Experimental
    • added a warning to the console if a tagged union cannot be created (@gcanti)
    • revert union optimization, needs more work to make it happen (@gcanti)

1.6.3

16 Jan 17:48
Compare
Choose a tag to compare
  • Bug Fix
    • prevent maximum call stack size exceeded when indexing recursive codecs, closes #259 (@gcanti)

1.6.2

15 Jan 20:24
Compare
Choose a tag to compare
  • Polish
    • make isIndexableCodec more strict (@gcanti)

1.6.1

15 Jan 13:43
Compare
Choose a tag to compare
  • Bug Fix
    • taggedUnion should handle sub unions / tagged unions correctly, closes #257 (@gcanti)
  • Experimental
    • optimize union with the same algorithm used in taggedUnion (@gcanti)

1.6.0

14 Jan 11:28
Compare
Choose a tag to compare

Important. This version requires typescript@3.2.2+

  • New Feature
    • leverage typescript@3.2.2 (@gcanti)
      • TypeC
      • PartialC
      • RecordC
      • UnionC
      • ReadonlyC
      • StrictC
      • TaggedUnionC