Release polysemy-v1.7.0.0 and polysemy-plugin-v0.4.2.0

This commit is contained in:
Sandy Maguire 2021-11-16 15:10:50 -08:00
parent 55150644c4
commit 039930a4b3
7 changed files with 35 additions and 12 deletions

View File

@ -6,7 +6,25 @@
### Other Changes
## 1.7.0.0 (2021-11-16)
### Breaking Changes
* Added interpreters for `AtomicState` that run in terms of `State`.
* Removed `MemberWithError`
* Removed `DefiningModule`
### Other Changes
* The internal `ElemOf` proof is now implemented as an unsafe integer,
significantly cutting down on generated core.
* Polysemy no longer emits custom type errors for ambiguous effect actions.
These have long been rendered moot by `polysemy-plugin`, and the cases that
they still exist are usually overeager (and wrong.)
* As a result, the core produced by `polysemy` is significantly smaller.
Programs should see a reduction of ~20% in terms and types, and ~60% in
coercions.
## 1.6.0.0 (2021-07-12)
@ -44,7 +62,7 @@
([#337](https://github.com/polysemy-research/polysemy/pull/337), [#382](https://github.com/polysemy-research/polysemy/pull/382))
- Restrict the existentially quantified monad in a `Weaving` to `Sem r`
([#333](https://github.com/polysemy-research/polysemy/pull/333), thanks to @A1kmm)
- Added `raise2Under` and `raise3Under`
- Added `raise2Under` and `raise3Under`
([#369](https://github.com/polysemy-research/polysemy/pull/369))
- Added `Raise` and `Subsume`
([#370](https://github.com/polysemy-research/polysemy/pull/370))

View File

@ -1,10 +1,10 @@
name: polysemy
version: 1.6.0.0
version: 1.7.0.0
github: "polysemy-research/polysemy"
license: BSD3
author: "Sandy Maguire"
maintainer: "sandy@sandymaguire.me"
copyright: "2019 Sandy Maguire"
copyright: "2019-2021 Sandy Maguire"
build-type: Custom
extra-source-files:

View File

@ -2,6 +2,10 @@
## Unreleased
## 0.4.2.0 (2021-11-16)
- Support for `polysemy-1.7.0.0`
## 0.4.1.0 (2021-10-22)
- The plugin can now use instances in scope to help solve ambiguous type

View File

@ -1,5 +1,5 @@
name: polysemy-plugin
version: 0.4.1.0
version: 0.4.2.0
github: "polysemy-research/polysemy"
license: BSD3
author: "Sandy Maguire"
@ -20,7 +20,7 @@ dependencies:
- base >= 4.9 && < 5
- ghc >= 8.6.5 && < 10
- ghc-tcplugins-extra >= 0.3 && < 0.5
- polysemy >= 1.3
- polysemy >= 1.7
- syb >= 0.7 && < 0.8
- transformers >= 0.5.2.0 && < 0.6
- containers >= 0.5 && < 0.7

View File

@ -5,7 +5,7 @@ cabal-version: 2.0
-- see: https://github.com/sol/hpack
name: polysemy-plugin
version: 0.4.1.0
version: 0.4.2.0
synopsis: Disambiguate obvious uses of effects.
description: Please see the README on GitHub at <https://github.com/polysemy-research/polysemy/tree/master/polysemy-plugin#readme>
category: Polysemy
@ -68,7 +68,7 @@ library
, containers >=0.5 && <0.7
, ghc >=8.6.5 && <10
, ghc-tcplugins-extra >=0.3 && <0.5
, polysemy >=1.3
, polysemy >=1.7
, syb ==0.7.*
, transformers >=0.5.2.0 && <0.6
default-language: Haskell2010

View File

@ -5,7 +5,7 @@ cabal-version: 2.0
-- see: https://github.com/sol/hpack
name: polysemy
version: 1.6.0.0
version: 1.7.0.0
synopsis: Higher-order, low-boilerplate free monads.
description: Please see the README on GitHub at <https://github.com/polysemy-research/polysemy#readme>
category: Language
@ -13,7 +13,7 @@ homepage: https://github.com/polysemy-research/polysemy#readme
bug-reports: https://github.com/polysemy-research/polysemy/issues
author: Sandy Maguire
maintainer: sandy@sandymaguire.me
copyright: 2019 Sandy Maguire
copyright: 2019-2021 Sandy Maguire
license: BSD3
license-file: LICENSE
build-type: Custom

View File

@ -179,7 +179,8 @@ atomicStateToState = interpret $ \case
-- the notion of atomicity, by transforming it into 'State' and running it
-- with the provided initial state.
--
-- @since TODO
--
-- @since v1.7.0.0
runAtomicStateViaState :: s
-> Sem (AtomicState s ': r) a
-> Sem r (s, a)
@ -192,7 +193,7 @@ runAtomicStateViaState s =
-- the notion of atomicity, by transforming it into 'State' and running it
-- with the provided initial state.
--
-- @since TODO
-- @since v1.7.0.0
evalAtomicStateViaState :: s
-> Sem (AtomicState s ': r) a
-> Sem r a
@ -205,7 +206,7 @@ evalAtomicStateViaState s =
-- the notion of atomicity, by transforming it into 'State' and running it
-- with the provided initial state.
--
-- @since TODO
-- @since v1.7.0.0
execAtomicStateViaState :: s
-> Sem (AtomicState s ': r) a
-> Sem r s