packages feed

AsyncRattus-0.2.2: CHANGELOG.md

# 0.2.2

 - Support GHC 9.10, 9.12, and 9.14.
 - Fix the multiplicity of the binder that the plugin generates for
   `delay`.
 - Scope checking now accounts for pattern matching with existential
   types. Given a constructor `MkFoo :: Stable a => !a -> Foo`, the
   definition `fun (MkFoo x) = box x` now type checks.
 - Newtypes are now recognised as stable if their underlying type is
   stable.
 - The strictness checker no longer warns about the lazy arguments of
   `fromString`, `fromList`/`fromListN` and `Data.Text.pack`. These
   functions consume their argument immediately, so it cannot cause a
   space leak.
 - `Item l`, the type family of the `IsList` class, is now recognised
   as strict whenever `l` is.
 - New strict sum type `:+` in `AsyncRattus.Strict`.
 - New `Functor` instance for `Maybe'`.

# 0.2.1.1

 - The constraint solver for stable types can now handle data types
   with existential variables that have a `Stable` constraint, e.g. a
   GADT with constructor `mkFoo :: Stable a => !a -> Foo` is now
   recognised as stable.

# 0.2.1
=======
- More signal combinators

# 0.2.0.2

- Fix strictness/stable checker: It now recognises `Word8/16/32/64` and
  `Int8/16/32/64` as strict and stable.
- Fix documentation for signal combinators `trigger` and
  `triggerAwait`.

# 0.2.0.1

Fix bug in elaboration of delay, adv, select

# 0.2

Instead of marking individual function definitions as Async Rattus
code, all function definitions are treated as Async Rattus if the
Async Rattus plugin is enabled. In practice, this means that a whole
module is declared as Async Rattus code by including the line
```
{-# OPTIONS -fplugin=AsyncRattus.Plugin #-}
```
at the top of the file.

# 0.1.0.3

Fix concurrency bug in the interaction of output and input channels.
This occurred when using `mkInput` (and thus also filter functions on
signals).

# 0.1.0.2

Make Integer and Text stable types

# 0.1.0.1

Compatibility with GHC 9.8

# 0.1

First release.