summaryrefslogtreecommitdiff
path: root/src/Propellor/Property/Conductor.hs
diff options
context:
space:
mode:
authorJoey Hess2018-04-23 13:20:13 -0400
committerJoey Hess2018-04-23 13:20:13 -0400
commit9228bda32f0a3f6d52e7cc5eb444376e7b024d8c (patch)
treee3ada017b0f625db8b39a2212ab82c8e32a62b7c /src/Propellor/Property/Conductor.hs
parent5ecbec11127449fefe4812fd6b374801ce8499c1 (diff)
semigroup monoid change fallout; drop ghc 7 support
Fix build with ghc 8.4, which broke due to the Semigroup Monoid change. See https://prime.haskell.org/wiki/Libraries/Proposals/SemigroupMonoid Dropped support for building propellor with ghc 7 (as in debian oldstable), to avoid needing to depend on the semigroups transitional package, but also because it's just too old to be worth supporting. If we indeed drop ghc 7 support entirely, some code to support "jessie" can be removed; concurrent-output can be de-embedded, and the Singletons code can be simplified. This commit was sponsored by Jack Hill on Patreon.
Diffstat (limited to 'src/Propellor/Property/Conductor.hs')
-rw-r--r--src/Propellor/Property/Conductor.hs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/Propellor/Property/Conductor.hs b/src/Propellor/Property/Conductor.hs
index cfeb5aa7..1a67402a 100644
--- a/src/Propellor/Property/Conductor.hs
+++ b/src/Propellor/Property/Conductor.hs
@@ -81,6 +81,7 @@ import Propellor.Types.Info
import qualified Propellor.Property.Ssh as Ssh
import qualified Data.Set as S
+import qualified Data.Semigroup as Sem
-- | Class of things that can be conducted.
--
@@ -313,9 +314,9 @@ cdesc n = "conducting " ++ n
-- A Host's Info indicates when it's a conductor for hosts, and when it's
-- stopped being a conductor.
newtype ConductorFor = ConductorFor [Host]
- deriving (Typeable, Monoid)
+ deriving (Typeable, Sem.Semigroup, Monoid)
newtype NotConductorFor = NotConductorFor [Host]
- deriving (Typeable, Monoid)
+ deriving (Typeable, Sem.Semigroup, Monoid)
instance Show ConductorFor where
show (ConductorFor l) = "ConductorFor " ++ show (map hostName l)
@@ -329,7 +330,7 @@ instance IsInfo NotConductorFor where
-- Added to Info when a host has been orchestrated.
newtype Orchestrated = Orchestrated Any
- deriving (Typeable, Monoid, Show)
+ deriving (Typeable, Sem.Semigroup, Monoid, Show)
instance IsInfo Orchestrated where
propagateInfo _ = PropagateInfo False