fast-check v2.18.0 Release Notes

  • All built-ins arbitraries rely on the new API and most of them can now shrink user-definable values [Code][Diff]

    ๐Ÿ”‹ Features

    • ๐Ÿ‘ (PR#2031) Add built-in unmapper support onto uuid and uuidV
    • ๐Ÿ‘ (PR#2035) Add built-in unmapper support onto domain
    • ๐Ÿ‘ (PR#2036) Add built-in unmapper support onto emailAddress
    • ๐Ÿ‘ (PR#2037) Add built-in unmapper support onto webAuthority
    • ๐Ÿ‘ (PR#2056) Add built-in unmapper support onto webUrl
    • ๐Ÿ‘ (PR#2089) Add built-in unmapper support onto object arbitraries
    • ๐Ÿ‘ (PR#2199) Add built-in unmapper support onto float
    • ๐Ÿ‘ (PR#2200) Add built-in unmapper support onto double
    • ๐Ÿ‘ (PR#2204) Add built-in unmapper support onto typed-arrays
    • (PR#2309) Lighter implementation for anything arbitrary
    • ๐Ÿ“œ (PR#2318) Implement unmapping for sparseArray
    • (PR#2361) Add umapping capabilities on mixedCase

    ๐Ÿ›  Fixes

    • (PR#2262) Bug: Cap auto-maxLength of array to 2**31-1
    • ๐Ÿ“œ (PR#2359) Bug: Too many keys in the sparse arrays of anything
    • ๐Ÿš€ (PR#2256) CI: Check typings against RC releases of TypeScript
    • (PR#2087) Doc: Clarify the case of -0 on jsonObject and unicodeJsonObject
    • ๐Ÿ“œ (PR#2237) Doc: stringify then parse in code example
    • (PR#2308) Doc: Use predicate instead of property to define a property
    • โšก๏ธ (PR#2368) Doc: Update contributing guide
    • ๐Ÿšš (PR#2032) Move: Move web arbitraries into /arbitrary
    • ๐Ÿšš (PR#2033) Move: Move text escapers into internals of /arbitrary
    • ๐Ÿšš (PR#2034) Move: Move sparseArray arbitrary into /arbitrary
    • ๐Ÿšš (PR#2085) Move: Move object arbitraries into /arbitrary
    • ๐Ÿšš (PR#2090) Move: Move floating point arbitraries into /arbitrary
    • ๐Ÿšš (PR#2154) Move: Move commands arbitrary into /arbitrary
    • ๐Ÿšš (PR#2366) Move: Move and clean tests helpers
    • ๐Ÿ”จ (PR#2153) Refactor: Migrate commands to NextArbitrary
    • ๐Ÿ”จ (PR#2150) Refactor: Migrate *subarray to NextArbitrary
    • ๐Ÿ”จ (PR#2339) Refactor: Simplify conversion to qualified object's constraints
    • โœ… (PR#2177) Script: Add test:debug script for easier debugging
    • โœ… (PR#2091) Test: Rewrite tests on next generation of floating point arbitraries
    • โœ… (PR#2146) Test: Fix tests on legacy versions of integer
    • โœ… (PR#2151) Test: Rework no regressions tests for subarrays
    • โœ… (PR#2178) Test: Rewrite tests on subarray
    • โœ… (PR#2198) Test: Rewrite tests dealing with typed arrays
    • โœ… (PR#2205) Test: Rewrite tests on legacy float/double
    • โœ… (PR#2209) Test: Rewrite tests dealing with sparseArray
    • โœ… (PR#2210) Test: Rewrite func-related tests
    • โœ… (PR#2263) Test: Add some basic tests for array and set
    • โฑ (PR#2291) Test: Adapt e2e on scheduler for node 16
    • โœ… (PR#2274) Test: Make sure --exactOptionalPropertyTypes is properly handled
    • โœ… (PR#2315) Test: Migrate tests of arrayInt64 to new format
    • โœ… (PR#2338) Test: Add tests for JSON arbitraries
    • ๐Ÿšš (PR#2360) Test: Move tests on object to new approach
    • ๐Ÿšš (PR#2365) Test: Move tests on mixedCase to new approach
    • (PR#2059) Typo: Invalid HTML element in PureRand.ts
    • ๐Ÿšš (PR#2149) Typo: Remove unused arbitraries from properties in unit-tests
    • (PR#2147) Typo: Clean badly renamed import in integer