lambdabot-core 5.3.0.1 → 5.3.0.2
raw patch · 3 files changed
+10/−8 lines, 3 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Lambdabot.Main: [:=>] :: forall k (tag :: k -> Type) (f :: k -> Type) (a :: k). () => !tag a -> f a -> DSum tag f
- Lambdabot.Main: data DSum (tag :: k -> Type) (f :: k -> Type) :: forall k. () => k -> Type -> k -> Type -> Type
- Lambdabot.Module: instance System.Console.Haskeline.MonadException.MonadException m => System.Console.Haskeline.MonadException.MonadException (Lambdabot.Module.ModuleT st m)
- Lambdabot.Monad: instance System.Console.Haskeline.MonadException.MonadException Lambdabot.Monad.LB
+ Lambdabot.Main: (:=>) :: !tag a -> f a -> DSum (tag :: k -> Type) (f :: k -> Type)
+ Lambdabot.Main: data DSum (tag :: k -> Type) (f :: k -> Type)
- Lambdabot.Main: (==>) :: Applicative f => tag a -> a -> DSum tag f
+ Lambdabot.Main: (==>) :: forall (f :: Type -> Type) tag a. Applicative f => tag a -> a -> DSum tag f
Files
- README.md +3/−3
- lambdabot-core.cabal +3/−3
- src/Lambdabot/Util/Serial.hs +4/−2
README.md view
@@ -1,12 +1,12 @@ lambdabot  =============== -Lambdabot is an IRC bot written over several years by those on freenode's #haskell [IRC channel](https://wiki.haskell.org/IRC_channel). It also operates in an offline mode as a Haskell development tool, and embedded as an extension to ghci.+Lambdabot is an IRC bot written over several years by those on Libera's (formerly freenode's) #haskell [IRC channel](https://wiki.haskell.org/IRC_channel). It also operates in an offline mode as a Haskell development tool, and embedded as an extension to ghci. PREREQUISITES ------------- -You'll need GHC >= 7.4. cabal-install is highly recommended.+You'll need GHC >= 8.2. cabal-install is highly recommended. External executable dependencies: @@ -65,7 +65,7 @@ When doing so, configuration is passed in to the `lambdabotMain` function as a list of bindings. Configuration variables are bound using the `:=>` operator (actually the data constructor of the `DSum` type), for example: - ghcBinary :=> "ghc-7.4.2"+ ghcBinary :=> "ghc-8.10.5" So a typical custom lambdabot executable might look something like:
lambdabot-core.cabal view
@@ -1,11 +1,11 @@ name: lambdabot-core-version: 5.3.0.1+version: 5.3.0.2 license: GPL license-file: LICENSE author: Don Stewart-maintainer: James Cook <mokus@deepbondi.net>+maintainer: Bertram Felgenhauer <int-e@gmx.de> category: Development, Web synopsis: Lambdabot core functionality@@ -19,7 +19,7 @@ build-type: Simple cabal-version: >= 1.10-tested-with: GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.3, GHC == 8.10.1+tested-with: GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5, GHC == 8.8.4, GHC == 8.10.4 extra-source-files: AUTHORS.md COMMENTARY.md
src/Lambdabot/Util/Serial.hs view
@@ -132,10 +132,12 @@ showPacked = gzip . P.unlines . concatMap (\(k,v) -> [k,v]) -instance Packable (M.Map P.ByteString (Bool, [(String, Int)])) where+-- The following instance is used by the `poll` plugin.+-- The `read` and `show` are there for backward compatibility.+instance Packable (M.Map P.ByteString (Bool, [(P.ByteString, Int)])) where readPacked = M.fromList . readKV . P.lines where- readKV :: [P.ByteString] -> [(P.ByteString,(Bool, [(String, Int)]))]+ readKV :: [P.ByteString] -> [(P.ByteString,(Bool, [(P.ByteString, Int)]))] readKV [] = [] readKV (k:v:rest) = (k, (read . P.unpack) v) : readKV rest readKV _ = error "Vote.readPacked: parse failed"