anchor.diff:    # Show some output while running tests, so we might notice what's wrong
     testTarget = "--show-details=streaming";
   
  -  testHaskellDepends = [ base hlint ];
  +  testHaskellDepends = [
  +    aeson base bytestring containers exceptions ghcjs-dom hlint hspec
  +    http-types HUnit jsaddle jsaddle-warp linux-namespaces process
  +    random reflex silently temporary text unix wai wai-websockets warp
  +    webdriver websockets
  +  ];
     description = "Functional Reactive Web Apps with Reflex";
     license = stdenv.lib.licenses.bsd3;
   })
  
positive.code: { mkDerivation, ghc, aeson, base, bifunctors, bimap, blaze-builder
  , bytestring, constraints, containers, contravariant, data-default
  , dependent-map, dependent-sum, dependent-sum-template, directory
  , exception-transformers, ghcjs-dom, hlint, jsaddle, keycode, lens
  , monad-control, mtl, primitive, ref-tf, reflex, semigroups, stdenv
  , stm, template-haskell, temporary, text, these, transformers
  , unix, zenc, hashable, chromium, process, jsaddle-warp
  , linux-namespaces, iproute, network-uri
  }:
  let addGcTestDepends = drv: if stdenv.system != "x86_64-linux" then drv else drv // {
        testHaskellDepends = (drv.testHaskellDepends or []) ++ [ temporary jsaddle-warp process linux-namespaces ];
  
negative.code:     aeson base bifunctors bimap blaze-builder bytestring constraints
      containers contravariant data-default dependent-map dependent-sum
      dependent-sum-template directory exception-transformers ghcjs-dom
      jsaddle keycode lens monad-control mtl network-uri primitive random
      ref-tf reflex semigroups stm template-haskell text these
      transformers unix zenc
    ] ++ (if ghc.isGhcjs or false then [
      hashable
    ] else []);
  