avoid insertWith' depreaction warning

Switch to Data.Map.Strict everywhere that used it.

There are still lots of lazy maps in git-annex. I think switching these
is safe. The risk is that there might be a map that is used in a way
that relies on the values not being evaluated to WHNF, and switching to
strict might result in bad performance or memory use. So, I have not
switched everything.
This commit is contained in:
Joey Hess 2018-04-22 13:28:31 -04:00
parent 558a0a9328
commit 256d8f07e8
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
11 changed files with 24 additions and 26 deletions

View file

@ -17,7 +17,7 @@ import Git.Types
import Control.Concurrent
import Control.Concurrent.Async
import Control.Concurrent.STM
import qualified Data.Map as M
import qualified Data.Map.Strict as M
data PairingWith = PairingWithSelf | PairingWithFriend
deriving (Eq, Show, Read)
@ -37,7 +37,7 @@ addWormholePairingState h tv = atomically $ do
m <- readTVar tv
-- use of head is safe because allids is infinite
let i = Prelude.head $ filter (`notElem` M.keys m) allids
writeTVar tv (M.insertWith' const i h m)
writeTVar tv (M.insert i h m)
return i
where
allids = map WormholePairingId [1..]