···11diff --git a/server/src-lib/Data/HashMap/Strict/Extended.hs b/server/src-lib/Data/HashMap/Strict/Extended.hs
22-index eaff0dfba..5047a0e9d 100644
22+index eaff0dfba..9902cadd0 100644
33--- a/src-lib/Data/HashMap/Strict/Extended.hs
44+++ b/src-lib/Data/HashMap/Strict/Extended.hs
55-@@ -17,7 +17,7 @@ import qualified Data.Align as A
66- import qualified Data.Foldable as F
55+@@ -7,7 +7,6 @@ module Data.HashMap.Strict.Extended
66+ , groupOnNE
77+ , differenceOn
88+ , lpadZip
99+- , mapKeys
1010+ , unionsWith
1111+ ) where
71288- import Data.Function
99--import Data.HashMap.Strict as M
1010-+import Data.HashMap.Strict as M hiding (mapKeys)
1111- import Data.Hashable
1212- import Data.List.NonEmpty (NonEmpty (..))
1313- import Data.These
1313+@@ -54,20 +53,6 @@ lpadZip left = catMaybes . flip A.alignWith left \case
1414+ That b -> Just (Nothing, b)
1515+ These a b -> Just (Just a, b)
1616+1717+--- | @'mapKeys' f s@ is the map obtained by applying @f@ to each key of @s@.
1818+---
1919+--- The size of the result may be smaller if @f@ maps two or more distinct
2020+--- keys to the same new key. In this case the value at the greatest of the
2121+--- original keys is retained.
2222+---
2323+--- > mapKeys (+ 1) (fromList [(5,"a"), (3,"b")]) == fromList [(4, "b"), (6, "a")]
2424+--- > mapKeys (\ _ -> 1) (fromList [(1,"b"), (2,"a"), (3,"d"), (4,"c")]) == singleton 1 "c"
2525+--- > mapKeys (\ _ -> 3) (fromList [(1,"b"), (2,"a"), (3,"d"), (4,"c")]) == singleton 3 "c"
2626+---
2727+--- copied from https://hackage.haskell.org/package/containers-0.6.4.1/docs/src/Data.Map.Internal.html#mapKeys
2828+-mapKeys :: (Ord k2, Hashable k2) => (k1 -> k2) -> HashMap k1 a -> HashMap k2 a
2929+-mapKeys f = fromList . foldrWithKey (\k x xs -> (f k, x) : xs) []
3030+-
3131+ -- | The union of a list of maps, with a combining operation:
3232+ -- (@'unionsWith' f == 'Prelude.foldl' ('unionWith' f) 'empty'@).
3333+ --
+33
pkgs/development/misc/haskell/hasura/ekg-core.nix
···11+# This has been automatically generated by the script
22+# ./update.sh. This should not be changed by hand.
33+{ mkDerivation, async, atomic-primops, base, containers, criterion
44+, fetchgit, generic-random, ghc-prim, hashable, hspec
55+, hspec-smallcheck, HUnit, inspection-testing, lib, markdown-unlit
66+, primitive, QuickCheck, smallcheck, text, unordered-containers
77+}:
88+mkDerivation {
99+ pname = "ekg-core";
1010+ version = "0.1.1.7";
1111+ src = fetchgit {
1212+ url = "https://github.com/hasura/ekg-core.git";
1313+ sha256 = "1s58kjg1kbhsyfyj0zwhnnws9hg9zwj9jylpwicg54yi78w962ys";
1414+ rev = "9fc8f94685c149a909b66bad4167455d8ae1002c";
1515+ fetchSubmodules = true;
1616+ };
1717+ libraryHaskellDepends = [
1818+ atomic-primops base containers ghc-prim hashable inspection-testing
1919+ primitive text unordered-containers
2020+ ];
2121+ testHaskellDepends = [
2222+ async atomic-primops base containers generic-random ghc-prim
2323+ hashable hspec hspec-smallcheck HUnit inspection-testing
2424+ markdown-unlit primitive QuickCheck smallcheck text
2525+ unordered-containers
2626+ ];
2727+ testToolDepends = [ markdown-unlit ];
2828+ benchmarkHaskellDepends = [ base criterion ];
2929+ doHaddock = false;
3030+ homepage = "https://github.com/tibbe/ekg-core";
3131+ description = "Tracking of system metrics";
3232+ license = lib.licenses.bsd3;
3333+}
+21
pkgs/development/misc/haskell/hasura/ekg-json.nix
···11+# This has been automatically generated by the script
22+# ./update.sh. This should not be changed by hand.
33+{ mkDerivation, aeson, base, ekg-core, fetchgit, lib, text
44+, unordered-containers, vector
55+}:
66+mkDerivation {
77+ pname = "ekg-json";
88+ version = "0.1.0.7";
99+ src = fetchgit {
1010+ url = "https://github.com/hasura/ekg-json.git";
1111+ sha256 = "1yf9x7gh66q27c3wv5m00ijf2qpiwm53jjlhrj2yc1glv684wf4v";
1212+ rev = "f25b9ddb7aae18059ef707a5ce30d6a54a63db13";
1313+ fetchSubmodules = true;
1414+ };
1515+ libraryHaskellDepends = [
1616+ aeson base ekg-core text unordered-containers vector
1717+ ];
1818+ homepage = "https://github.com/tibbe/ekg-json";
1919+ description = "JSON encoding of ekg metrics";
2020+ license = lib.licenses.bsd3;
2121+}
···1919ciinfo_derivation_file="${script_dir}/ci-info.nix"
2020pgclient_derivation_file="${script_dir}/pg-client.nix"
2121pool_derivation_file="${script_dir}/pool.nix"
2222+ekgcore_derivation_file="${script_dir}/ekg-core.nix"
2323+ekgjson_derivation_file="${script_dir}/ekg-json.nix"
22242325# TODO: get current revision of graphql-engine in Nixpkgs.
2426# old_version="$(sed -En 's/.*\bversion = "(.*?)".*/\1/p' "$engine_derivation_file")"
···3133echo "# This has been automatically generated by the script" > "$engine_derivation_file"
3234echo "# ./update.sh. This should not be changed by hand." >> "$engine_derivation_file"
33353434-# 2.0.5 hardcoded for now, because 2.0.6 failed to build. should be removed when updating
3535-# cabal2nix --revision "$new_version" --subpath server --maintainer lassulus "https://github.com/hasura/graphql-engine.git" >> "$engine_derivation_file"
3636-cabal2nix --revision "v2.0.5" --subpath server --maintainer lassulus --no-check "https://github.com/hasura/graphql-engine.git" >> "$engine_derivation_file"
3636+cabal2nix --revision "$new_version" --subpath server --maintainer lassulus --no-check "https://github.com/hasura/graphql-engine.git" >> "$engine_derivation_file"
37373838echo "Running cabal2nix and outputting to ${parser_derivation_file}..."
3939···6262echo "# ./update.sh. This should not be changed by hand." >> "$pool_derivation_file"
63636464cabal2nix "https://github.com/hasura/pool.git" >> "$pool_derivation_file"
6565+6666+echo "Running cabal2nix and outputting to ${ekgcore_derivation_file}..."
6767+6868+echo "# This has been automatically generated by the script" > "$ekgcore_derivation_file"
6969+echo "# ./update.sh. This should not be changed by hand." >> "$ekgcore_derivation_file"
7070+7171+cabal2nix "https://github.com/hasura/ekg-core.git" >> "$ekgcore_derivation_file"
7272+7373+echo "Running cabal2nix and outputting to ${ekgjson_derivation_file}..."
7474+7575+echo "# This has been automatically generated by the script" > "$ekgjson_derivation_file"
7676+echo "# ./update.sh. This should not be changed by hand." >> "$ekgjson_derivation_file"
7777+7878+cabal2nix "https://github.com/hasura/ekg-json.git" >> "$ekgjson_derivation_file"
65796680echo "###################"
6781echo "please update pkgs/servers/hasura/cli.nix vendorSha256"