diff --git a/horizon.dhall b/horizon.dhall index 70be7024e8d0ca478f8891a6917013a9ac26f417..206b988e80edf866621941cbbb63499b4da5cde9 100644 --- a/horizon.dhall +++ b/horizon.dhall @@ -86,6 +86,8 @@ let packages = , bytes = H.callHackage "bytes" "0.17.2" , bytestring-strict-builder = H.callHackage "bytestring-strict-builder" "0.4.5.6" + , bytestring-tree-builder = + H.callHackage "bytestring-tree-builder" "0.2.7.10" , c2hs = H.callHackage "c2hs" "0.28.8" , cabal-install = H.callHackage "cabal-install" "3.8.1.0" , cabal-install-solver = H.callHackage "cabal-install-solver" "3.8.1.0" @@ -348,6 +350,7 @@ let packages = , haskell-src = H.callHackage "haskell-src" "1.0.4" , hasql = H.callHackage "hasql" "1.6.3" , hasql-th = H.callHackage "hasql-th" "0.4.0.18" + , hasql-transaction = H.callHackage "hasql-transaction" "1.0.1.2" , hdaemonize = H.callHackage "hdaemonize" "0.5.6" , heaps = H.callHackage "heaps" "0.4" , headed-megaparsec = H.callHackage "headed-megaparsec" "0.2.1.1" diff --git a/horizon.lock b/horizon.lock index a80fca9f59de1a72eca4a7f89e896c1655753660..4facacb238add88799579f7e5b40691dc4a40174 100644 --- a/horizon.lock +++ b/horizon.lock @@ -262,6 +262,10 @@ , mapValue = "2faa9baaba5c12368ff6f53edbc548241b414089a037d66067088882602b4ffa" } +, { mapKey = "bytestring-tree-builder" + , mapValue = + "0f4a7b167f0c5bd67969996be5fd56bc270ec90aa5f19fad72af2f35aca2bc12" + } , { mapKey = "c2hs" , mapValue = "6d6262823310cf14a23c4fb5e0374a16a29b0ca6f667e9d0510f17383c3951b0" @@ -1054,6 +1058,10 @@ , mapValue = "3044c356f1d3d408da4205d71925a830f81857571b753f6ee745423b75471279" } +, { mapKey = "hasql-transaction" + , mapValue = + "d4a5470b3b869fb04e496de9ef6477a27a53242ff7cbf27d9d21443b83cf609e" + } , { mapKey = "hdaemonize" , mapValue = "ab4f90bf1de28057460801b3eb68e3785e2e5bba6227df52d511bf7c209905f1" diff --git a/overlay.nix b/overlay.nix index ec79068e026be8409a60efe0ea83efbc0807d283..4d1d19fbe12702dc2e77c11991180c9b53fb391b 100644 --- a/overlay.nix +++ b/overlay.nix @@ -133,6 +133,8 @@ final: prev: with pkgs.haskell.lib; { bytestring-strict-builder = final.callPackage (./pkgs/bytestring-strict-builder.nix) { }; + bytestring-tree-builder = final.callPackage (./pkgs/bytestring-tree-builder.nix) { }; + c2hs = final.callPackage (./pkgs/c2hs.nix) { }; cabal-install = final.callPackage (./pkgs/cabal-install.nix) { }; @@ -529,6 +531,8 @@ final: prev: with pkgs.haskell.lib; { hasql-th = final.callPackage (./pkgs/hasql-th.nix) { }; + hasql-transaction = final.callPackage (./pkgs/hasql-transaction.nix) { }; + hdaemonize = final.callPackage (./pkgs/hdaemonize.nix) { }; headed-megaparsec = final.callPackage (./pkgs/headed-megaparsec.nix) { }; diff --git a/pkgs/bytestring-tree-builder.nix b/pkgs/bytestring-tree-builder.nix new file mode 100644 index 0000000000000000000000000000000000000000..7a61dd8504a05584e23a4e7ca622188e9ecd4771 --- /dev/null +++ b/pkgs/bytestring-tree-builder.nix @@ -0,0 +1,31 @@ +{ mkDerivation, QuickCheck, base, base-prelude, bytestring +, criterion, deepseq, lib, quickcheck-instances, tasty, tasty-hunit +, tasty-quickcheck, text +}: +mkDerivation { + pname = "bytestring-tree-builder"; + version = "0.2.7.10"; + sha256 = "29282a224cd60c5c15a21deca658eb764325512ee96be8bc27638764aebd363d"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ base bytestring text ]; + testHaskellDepends = [ + base-prelude bytestring QuickCheck quickcheck-instances tasty + tasty-hunit tasty-quickcheck + ]; + benchmarkHaskellDepends = [ + base-prelude bytestring criterion deepseq + ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/nikita-volkov/bytestring-tree-builder"; + description = "A very efficient ByteString builder implementation based on the binary tree"; + license = lib.licenses.mit; + broken = false; +} \ No newline at end of file diff --git a/pkgs/hasql-transaction.nix b/pkgs/hasql-transaction.nix new file mode 100644 index 0000000000000000000000000000000000000000..83ffb87fda7eac24d37cfe962a6faa2fe3d97119 --- /dev/null +++ b/pkgs/hasql-transaction.nix @@ -0,0 +1,28 @@ +{ mkDerivation, async, base, bytestring, bytestring-tree-builder +, contravariant, contravariant-extras, hasql, lib, mtl, rerebase +, transformers +}: +mkDerivation { + pname = "hasql-transaction"; + version = "1.0.1.2"; + sha256 = "3aa77a1c0682b762be2f3033ce63e1b8284d548fde2badd55ab6e627b3ec1b73"; + isLibrary = true; + isExecutable = false; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + base bytestring bytestring-tree-builder contravariant + contravariant-extras hasql mtl transformers + ]; + testHaskellDepends = [ async contravariant-extras hasql rerebase ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "https://github.com/nikita-volkov/hasql-transaction"; + description = "Composable abstraction over retryable transactions for Hasql"; + license = lib.licenses.mit; + broken = false; +} \ No newline at end of file