Skip to content

Releases: metosin/malli

0.17.0

08 Dec 16:08
Compare
Choose a tag to compare

0.17.0 (8.12.2024)

  • Don't output :definitions nil in swagger. #1134
  • BREAKING: :gen/fmap property requires its schema to create a generator.
    • previous behavior defaulted to a nil-returning generator, even if the schema doesn't accept nil
    • use :gen/return nil property to restore this behavior
  • Support decoding map keys into keywords for [:map schemas in json-transformer #1135
  • :not humanizer #1138
  • FIX: :seqable generates nil when :min is greater than 0 #1121
  • FIX: malli.registry/{mode,type} not respected in Babashka #1124
  • FIX: :float accepts doubles but never generates them #1132
  • FIX: :float missing humanizer #1122
  • Updated dependencies:
fipp/fipp '0.6.26' to '0.6.27'

0.16.3

05 Aug 06:42
Compare
Choose a tag to compare

0.16.3 (2024-08-05)

  • :-> added to default registry, see documentation.
  • New :sequable and :every schemas #1041, see docs
  • Fix OOM error with infinitely expanding schema #1069
  • Correctly form prop-less schemas that have map/nil as first child #1071
  • Support min/max on uncountables like eductions #1075
  • Fix clj-kondo can't parse config.edn written by (malli.dev/start!) #1083
  • unstrument before instrumenting #1081
  • Replace .entryAt with .valAt during validation #1079
  • Corrected DEPRECATED warning for m/-simple-schema #1077

0.16.2

30 Jun 15:49
Compare
Choose a tag to compare

0.16.2 (2024-06-30)

  • Experimental :-> for simpler function defintions (not available on default schema registry) #1027
[:-> :any] ; [:=> :cat :any]
[:-> :int :any] ; [:=> [:cat :int] :any]
[:-> [:cat :int] :any]  ; [:=> [:cat [:cat :int]] :any]
[:-> a b c d :any] ; [:=> [:cat a b c d] :any]

;; guard property
[:-> {:guard (fn [[[arg] ret]] ...)} :string :boolean]
; [:=> [:cat :string] :boolean [:fn (fn [[[arg] ret]] ...)]]
  • Fix mu/get-in for false-y keys #1065
  • Add :float #1055
  • Make clj-kondo dir configurable #1062
  • Improve doc for transformers #1058
  • :double generates Long if :min is Long #1034
  • Fix Swagger definitions collecting #1002

0.16.1

30 Apr 08:04
Compare
Choose a tag to compare

0.16.1 (2024-04-30)

  • Enabled Java8 tests back, no need to limit the version

0.16.0

20 Apr 12:27
582ade9
Compare
Choose a tag to compare

0.16.0 (2024-04-20)

  • BREAKING: minimum Java-version is now Java11
  • allow changing prefix of json-schema $refs via option :malli.json-schema/definitions-path #1045
  • Inline refs in non-:body swagger parameters #1044
  • Fix flaky test #1040
  • Utility to update entry properties: mu/update-entry-properties #1037
  • Fix actions cache #1036
  • Only humanize one of :min / :max when different #1032
  • Distinguish between symbols and strings in humanize #1031
  • Fix :map-of :min and unreachable generator, explain such-that failures #1029

0.14.0

16 Jan 17:19
Compare
Choose a tag to compare
  • Better development-time tooling
    • malli.dev/start! captures all malli-thrown exceptions, see README for details
    • does not log individual re-instrumentation of function vars
    • BREAKING: changes in malli.dev.virhe and malli.pretty extension apis, wee #980 for details
  • New m/deref-recursive to recursive deref all schemas (not :refs)
  • FIX: Malli generates incorrect clj-kondo spec for :fn schemas #836 via #987
  • Support for Var references #985, see guide for details.
  • BREAKING: m/coerce and m/coercer throw ::m/coercion instead of ::m/invalid-input
  • New Guide for Reusable Schemas
  • Less printing of Var instumentation
  • BREAKING: qualified symbols are valid reference types #984
  • Fixing mt/strip-extra-keys-transformer for recursive map encoding #963
  • Support passing custom :type in into-schema opt for :map and :map-of #968
  • mu/path->in works with :orn, :catn and :altn.

0.13.0

24 Sep 15:12
Compare
Choose a tag to compare
  • BREAKING Fallback to use result of first branch when decoding :or and :orn, #946
  • BREAKING: decode for :double and double? in cljs doesn't allow trailing garbage any more #942
  • Faster generators for :map, #948 & #949
  • FIX: :altn can't handle just one child entry when nested in sequence schema #945
  • Officially drop Clojure 1.10 support. Tests haven't passed for some time with Clojure 1.10, but this was not noticed due to a faulty CI setup.
  • Use type inferrer when encoding enums #951
  • Use bound-fn in malli.dev/start! to preserve *out* #954
  • FIX: Malli generates invalid clj-kondo type spec for [:map [:keys [:+ :keyword]]] #952
  • FIX: malli.experimental.describe descriptions of :min and :max are backwards #959
  • FIX: Malli tuple should generate clj-kondo seqable #962