polysemy-chronos 0.5.0.0 → 0.5.1.0
raw patch · 3 files changed
+57/−4 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- changelog.md +11/−0
- polysemy-chronos.cabal +11/−4
- readme.md +35/−0
+ changelog.md view
@@ -0,0 +1,11 @@+# Unreleased++# 0.2.0.2++* Bugfix: Chronos treats months as zero-based, while `mkDate` uses 1-base.++# 0.1.4.0+* Add interpreters that remain at a fixed instant++# 0.1.0.0+* initial release
polysemy-chronos.cabal view
@@ -1,11 +1,11 @@ cabal-version: 2.2 --- This file has been generated from package.yaml by hpack version 0.34.6.+-- This file has been generated from package.yaml by hpack version 0.34.7. -- -- see: https://github.com/sol/hpack name: polysemy-chronos-version: 0.5.0.0+version: 0.5.1.0 synopsis: Polysemy effects for Chronos description: See https://hackage.haskell.org/package/polysemy-chronos/docs/Polysemy-Chronos.html category: Time@@ -17,6 +17,9 @@ license: BSD-2-Clause-Patent license-file: LICENSE build-type: Simple+extra-source-files:+ changelog.md+ readme.md source-repository head type: git@@ -50,6 +53,7 @@ DisambiguateRecordFields DoAndIfThenElse DuplicateRecordFields+ EmptyCase EmptyDataDecls ExistentialQuantification FlexibleContexts@@ -64,8 +68,9 @@ MultiParamTypeClasses MultiWayIf NamedFieldPuns- OverloadedStrings+ OverloadedLabels OverloadedLists+ OverloadedStrings PackageImports PartialTypeSignatures PatternGuards@@ -129,6 +134,7 @@ DisambiguateRecordFields DoAndIfThenElse DuplicateRecordFields+ EmptyCase EmptyDataDecls ExistentialQuantification FlexibleContexts@@ -143,8 +149,9 @@ MultiParamTypeClasses MultiWayIf NamedFieldPuns- OverloadedStrings+ OverloadedLabels OverloadedLists+ OverloadedStrings PackageImports PartialTypeSignatures PatternGuards
+ readme.md view
@@ -0,0 +1,35 @@+# About++This Haskell library provides interpreters for the `Time` effect from [polysemy-time].++# Example++```haskell+import Polysemy (Members, runM)+import Polysemy.Chronos (ChronosTime, interpretTimeChronosConstantAt, interpretTimeChronos)+import qualified Polysemy.Time as Time+import Polysemy.Time (MilliSeconds(MilliSeconds), mkDatetime)++startTime :: Chronos.Time+startTime =+ Chronos.datetimeToTime (Time.mkDatetime 2020 01 01 0 0 0)++prog ::+ Ord t =>+ Members [ChronosTime, Embed IO] r =>+ Sem r Bool+prog = do+ Time.sleep (MilliSeconds 1)+ time <- Time.now+ pure (time == startTime)++main :: IO ()+main =+ runM do+ print =<< interpretTimeChronos prog -- False+ print =<< interpretTimeChronosConstantAt prog -- True+```++[Polysemy]: https://hackage.haskell.org/package/polysemy+[polysemy-time]: https://hackage.haskell.org/package/polysemy-time+[chronos]: https://hackage.haskell.org/package/chronos