0.8 ------------------------------------------------ * Removed `Associate`, `AssocKey`, `AssocValue`, `ValueIs`, `KeyIs`, `KeyValue`, `proxyAssocKey`, `proxyAssocValue`, `stringAssokKey`, `xlb`, `:*`, `:|` * Reverted deprecation of `Data.Extensible.Tangle` 0.7.1 ------------------------------------------------ * Removed `vector` and `prettyprinter` orphans * Deprecated `Data.Extensible.Tangle`; use [tangle](https://hackage.haskell.org/package/tangle) * `parseJSON` gives more informative failure messages on failure * Supported `barbies ^>= 2` 0.7 ------------------------------------------------- * Moved `Data.Extensible.Effect` into new `extensible-skeleton` package * Instances for barbies and cassava are now optional * Deprecated 訊 0.6.1 ------------------------------------------------- * Added `fromNullable` * Added `xlb` * Added a `HasField` instance for `RecordOf` * Removed `deriveIsRecord` * Supported GHC 8.8 0.6 ------------------------------------------------- * Added a MonadCont instance for Eff * `(:*)` and `(:|)` are deprecated in favour of `(:&)` and `(:*)` where their type parameters are flipped * Flipped the type parameters of `BitProd` and `TangleT` * Added `itemKey`, `hmapWithIndexWith`, `hfoldMapWith`, `hfoldMapWithIndexWith`, `hfoldrWithIndexWith`, `hfoldlWithIndexWith`, `hrepeatWith`, `htabulateWith`, and `hgenerateWith` 0.5.1 ------------------------------------------------- * Split `Data.Extensible.HList` and `Data.Extensible.Internal` to the `membership` package * `AssocKey`, `AssocValue`, `ValueIs`, `KeyValue` and their related combinators are deprecated. Use ones from `membership` * `IsRecord` now has a generic default implementation * Deprecated `deriveIsRecord` 0.5 ------------------------------------------------- * GHC older than 8.4 is no longer supported * Removed `Const'` * `Data.Extensible.Plain` is no longer exported from `Data.Extensible` * Added `wrap` and `unwrap` to `Wrapper` * Added `(=<:)` 0.4.10.1 ------------------------------------------------- * Fixed build on GHC 8.6 0.4.10 ------------------------------------------------- * Added a `MonadResource`, `MonadThrow`, and `MonadCatch` instances for `Eff` * `Proxy` and `KnownSymbol` are now reexported from `Data.Extensible` 0.4.9 ------------------------------------------------- * Generalised the `MonadIO` instance for `Eff` to `(MonadIO m, Associate "IO" m xs) => MonadIO (Eff xs)` * Added `And :: (k -> Constraint) -> (k -> Constraint) -> k -> Constraint` * Added `Semigroup` and `Monoid` instances for `Const'` * Added `stringAssocKey :: (IsString a, KnownSymbol (AssocKey kv)) => proxy kv -> a` * Added a `Wrapper` instance for `Either e` * Added instances of `Pretty` and `Lift` * Added `hmapWithIndexFor` 0.4.8 ------------------------------------------------- * Changed the `FromJSON` instance for `Record` to call `parseJSON Null` for missing fields * Added `FromJSON` and `ToJSON` instances for `Nullable (Field h) :* xs` 0.4.7.2 ------------------------------------------------- * Added cassava's `ToNamedRecord`, `ToRecord`, `FromNamedRecord` and `FromRecord` instances * Added `KeyIs` and `ValueIs` * Added `FromJSON` and `ToJSON` instances for `(:*)` 0.4.7.1 ------------------------------------------------- * Fixed weird CPP errors on macOS 10.13.2 (#18) * Added `optFlag`, `optLastArg`, and `optionOptArg` 0.4.7 ------------------------------------------------- * Made various optimisations to improve the compilation time * Added trivial instances for `FromBits` * Generalised the API of `Data.Extensible.GetOpt` 0.4.6 ------------------------------------------------- * New module `Data.Extensible.GetOpt` * Added `fromBitProd` * Added `Hashable` instances for `:*`, `:|`, `BitProd`, `Membership`, and various wrappers * Added an `Unbox` instance for `:*` * Added `hfoldlWithIndex` and `hfoldlWithIndexFor` 0.4.5 ------------------------------------------------- * Added `nothingEff` * Added `happend` * Added `Arbitrary` instances for `:*`, `:|`, and wrappers * Added `Data.Extensible.Bits` 0.4.4 ------------------------------------------------- * Added `contEff` and `runContEff` * Added `castEff` * Added `evalStateEff` * Added `Semigroup` and `Monoid` instances for `Match`, `Comp`, `Prod` * Added `evalStateDef`, `execStateDef`, and `execWriterDef` * Added `mkFieldAs` * Added a `Bounded` instance for `:*` 0.4.3 ------------------------------------------------- * Added `WrappedPointer` * Added `NFData` and `Generic` instances for `Comp` * Added a `Semigroup` instance for `h :* xs` and `Membership xs x` * Added `Prod` * Added `peelEff0` * Changed the `IsLabel` instance so that a function is always inferred as an optic * `Data.Extensible.Class` now exports `compareMembership` * Renamed `runMembership` to `leadership` 0.4.2 ------------------------------------------------- * Made `newFrom` strict * `pieceAt` for `(:*)` is now strict * Added `(:` as a synonym for `:>` * `Data.Extensible.Effect` * Refined the API * Added `Data.Extensible.Effect.Default` * Added `Data.Extensible.Tangle` * Added `record` * Type inference aids 0.3.7.1 ---------------------------------------------------- * `pieceAt` for `(:*)` is now index-preserving * Removed `sector`, `sectorAt`, `picked` 0.3.7 ----------------------------------------------------- * Support GHC 8.0 * Added a `Monoid` instance for `Field` * Added `Data.Extensible.Record` * Added `Enum` and `Bounded` instances for `Proxy :| xs` * Removed `Data.Extensible.Union` 0.3.6 ----------------------------------------------------- * Added `(@:>)` * Added `(!-!!)`, `nihility`, `squash` 0.3.5 ----------------------------------------------------- * Added `Data.Extensible.Effect` * Added `decEffects` 0.3.4 ----------------------------------------------------- * Added `Data.Extensible.Wrapper` * Added `itemAt`, `item`, `itemAssoc` * Safe Haskell * Generalized `Field` 0.3.3 ----------------------------------------------------- * Renamed `sectorAt`, `sector`, `sectorAssoc` to `pieceAt`, `piece`, `pieceAssoc`, respectively * `picked` is now subsumed by `piece` * `mkField` yields more generalized optics * Renamed `UnionAt` to `EmbedAt` * Removed `clause`; Use `piece . _Match` * Removed `record`; Use `piece . _K0` * Added `htraverseWithIndex` * Renamed `ord` to `mkMembership` * Fixed the `Show` instance of `:|` * Added `Variant` 0.3.2 ----------------------------------------------------- * Added `Associate` class and combinators around it * `Data.Extensible.Record` now lets values be independent from keys * `mkField` requires 1 argument * Added `Data.Extensible.Union`, partially taking `elevator`'s functionality * Removed old `Data.Extensible.Union` and `Data.Extensible.League` * Removed `()` * Added `Comp` * Fixed badly-specialized `htraverse` * Added `hsequence`, `hdistribute`, `hcollect` * Added `hindex` 0.2.10 ----------------------------------------------------- * Optimized `sector` (~2x) 0.2.9 ----------------------------------------------------- * Renamed `(