haskell-distributed/distributed-process — pull request #150 by facundominguez (2014-04-03 18:26:58+00:00)
Title: Have d-p-test build with ghc-7.4.2.

Because d-p depended on deepseq >= 1.3.0.1 and ghc-7.4.2 ships deepseq-1.3.0.0, cabal would install a newer deepseq. Then in turn, cabal would rebuild reverse dependencies of deepseq which included the template-haskell package, which would cause the compiler to crash when compiling tests using template haskell.

The lower bound of deepseq was moved to 1.3.0.0. But then d-p would fail to build because
src/Control/Distributed/Process/Management/Table.hs
uses Data.Map.Strict wich is not available in containers-0.4.2.1 shipped with ghc-7.4.2, and it is also a dependency of template-haskell.

The solution was to use Data.Map instead, and insert seqs in Table.hs to achieve the semantics expected of Data.Map.Strict.

Finally, for ghc-7.4.2 the version bounds are tightened so it is easier for cabal to find conflicts related to template-haskell.