Skip to content

v0.56.0

Choose a tag to compare

@mlms13 mlms13 released this 27 Feb 16:28

This release updates the underlying bs-abstract dependency to 1.0 and allows Relude to compile with Bucklescript 7.1+.

🚨 Breaking changes

  • Array.empty has been removed, as its type is no longer array('a), but it now introduces weak polymorphism. Bucklescript made this change to work around unsoundness issues with Js.Array.push. You can read more about this change on the Bucklescript blog and the related bs-abstract issue.
  • As a result of removing empty, Array no longer implements MONOID_ANY, PLUS, ALTERNATIVE, MONAD_ZERO, and MONAD_PLUS.
  • More fallout from this change: constructing a Relude.NonEmpty now does not require some of these typeclass instances (and instead uses a lazy () => t('a) empty function). This actually makes NonEmpty easier to construct.

✨ New Stuff

  • The underlying signature for Fold_Map_Any and Fold_Map_Plus are now more flexible, allowing you to map both the container type and the inner type.