diff --git a/.gitignore b/.gitignore index 9047e92..ea85f17 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ config-files/* *.skey *.vkey *.addr +.vscode diff --git a/Dockerfile b/Dockerfile index e9cd2f6..97a6bef 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ghcr.io/geniusyield/haskell-base-image:9.2.8 +FROM ghcr.io/geniusyield/haskell-base-image:9.6.5 # ==================================[ BUILD ]======================================== WORKDIR /SOR diff --git a/cabal.project b/cabal.project index 4cb881d..c7590c0 100644 --- a/cabal.project +++ b/cabal.project @@ -10,11 +10,11 @@ repository cardano-haskell-packages d4a35cd3121aa00d18544bb0ac01c3e1691d618f462c46129271bccf39f7e8ee -- repeating the index-state for hackage to work around hackage.nix parsing limitation -index-state: 2023-06-06T00:00:00Z +index-state: 2024-03-19T15:29:53Z index-state: - , hackage.haskell.org 2023-06-06T00:00:00Z - , cardano-haskell-packages 2023-06-05T06:39:32Z + , hackage.haskell.org 2024-03-19T15:29:53Z + , cardano-haskell-packages 2024-03-15T17:07:52Z packages: . packages: geniusyield-orderbot-framework @@ -22,133 +22,113 @@ packages: geniusyield-orderbot-framework -- TODO: Default value should be @direct@ in upcoming 3.10 version of cabal, omit this line then. test-show-details: direct -package cardano-crypto-praos - flags: -external-libsodium-vrf - --- TODO: This is fixed for in their later version, omit this when we update to it. -package strict-containers - ghc-options: -Wwarn=noncanonical-monad-instances - -source-repository-package - type: git - location: https://github.com/maestro-org/haskell-sdk - tag: d70479ce3be06d6b7c52bf39d783f36d6771e36d - --sha256: sha256-8se+xlIB1BDEuKGwjaldmW5G4LpCujD1ABgBaY0cY6Y= - --- Unfortunately, cardano-node 8.1.2 is constrained with plutus-ledger-api 1.5.0.0 and we would like at least 1.6.0.0. --- This is done in accordance with changes in https://github.com/input-output-hk/cardano-ledger/pull/3430/files. -constraints: - plutus-ledger-api == 1.6.0.0 - , plutus-core == 1.6.0.0 - -allow-newer: - , cardano-ledger-alonzo:plutus-ledger-api - , cardano-ledger-alonzo:plutus-core - , cardano-ledger-alonzo-test:plutus-ledger-api - , cardano-ledger-alonzo-test:plutus-ledger-api-testlib - , cardano-ledger-babbage:plutus-ledger-api - , cardano-ledger-conway:plutus-ledger-api - , cardano-ledger-binary:plutus-ledger-api - , cardano-api:plutus-ledger-api - , cardano-api:plutus-ledger-api-testlib - , cardano-api:prettyprinter-configurable - source-repository-package type: git location: https://github.com/geniusyield/ply - tag: c301d9514982abce1b4497237ba8231cf3ca058d - --sha256: sha256-f3hhzeOpva64FfF4HZc3uoPcWbhEJN20b0RrEKfXBxc= + tag: b13674633771f572a5eedfb47276c0ac3993ab85 + --sha256: sha256-a63OdFAbo0sWOXxceI2bW/ZMrS8wo1t7aPFrfXvVhvE= subdir: ply-core source-repository-package type: git location: https://github.com/geniusyield/atlas - tag: 1c20f2a65de8e087b495d1f3ad524d6e659167ad - --sha256: sha256-mvzqgLwKHhIJdeHfUoIdapN0t2K85DoehgSkfm/ddIw= + tag: 97f3ca97bda997533d17274689daa69c5fdcbcd6 + --sha256: sha256-NKUrxa3f6tlywWNWwdw5bWQ974ziOG9MXmY9GNZTdu8= source-repository-package type: git location: https://github.com/geniusyield/dex-contracts-api - tag: e842963a1a13ae6e6a5c53de1e1039f2acbc13ae - --sha256: sha256-XFENwL+vD1v2LvDoQ4/RfM/ksEB1+rvvCmjW7kSYavY= + tag: 5d21453d7b99491b5e40ddcdb500685bcd00f862 + --sha256: sha256-s8xPPW4zbcYdJvZsxZfBAOCvaheSqI01k1SUhMRrXTA= subdir: geniusyield-dex-api geniusyield-onchain/geniusyield-common +-------- Begin contents from @atlas@'s @cabal.project@ file. -------- + +package cardano-crypto-praos + flags: -external-libsodium-vrf + +-- TODO: This is fixed for in their later version, omit this when we update to it. +package strict-containers + ghc-options: -Wwarn=noncanonical-monad-instances + source-repository-package type: git - location: https://github.com/geniusyield/plutus-simple-model - tag: 0cb63af903a835c73aec662092eb67d228bba9b0 - --sha256: sha256-H56EyRFNdDvLDo9FVeGZyQZ92itQPG39TkMVyEC/xqM= - subdir: - cardano-simple - psm + location: https://github.com/maestro-org/haskell-sdk + tag: v1.7.2 + --sha256: sha256-nXnelHH4a+V0nguP8oUDlyEz/fLQ/i1fs/flyZTmvAc= --- This should be present for in hackage index state >= 18th of september, 23. Remove it when we update to it. source-repository-package type: git - location: https://github.com/blockfrost/blockfrost-haskell - tag: 206e1a0f62e2a7cc08d05db8d62cef8dc2fbd98e - --sha256: sha256-R6BP3hwrOBmlRabA3prUuOGkYzETmQIM+K+Oh+fczEY= - subdir: - blockfrost-api - blockfrost-client-core - blockfrost-client + location: https://github.com/mlabs-haskell/clb + tag: 18e781b5b53adc1aa1d8c057c1b606b536a80350 + --sha256: sha256-PDmrXYTBHPcY0x+JnF21uupLMBwURLSiNMqNmwwapkc= + +constraints: + , cardano-api ^>= 8.38.0.0 -- Everything below is essentially copied from cardano-wallet's cabal.project. --------- Begin contents from @cardano-wallet@'s @cabal.project@ file. -------- source-repository-package type: git location: https://github.com/input-output-hk/cardano-wallet - tag: v2023-07-18 - --sha256: sha256-ijflgIw+1FpLoxM4Rksf4MJvNqnEPAv3gNWE8zMuefU= + tag: v2024-03-27 + --sha256: sha256-rxMPopa3nxQaM0yOxUCq5oj3+XSL68jkuuFVhj/SY+w= subdir: + lib/address-derivation-discovery lib/balance-tx/ lib/coin-selection/ + lib/crypto-primitives/ lib/delta-store/ lib/delta-table lib/delta-types/ + lib/iohk-monitoring-extra lib/launcher/ + lib/network-layer/ lib/numeric/ lib/primitive/ + lib/read + lib/secrets + lib/std-gen-seed/ lib/test-utils/ lib/text-class/ lib/wai-middleware-logging/ - lib/wallet/ lib/wallet-benchmarks/ + lib/wallet/ --- Using RDRAND instead of /dev/urandom as an entropy source for key --- generation is dubious. Set the flag so we use /dev/urandom by default. -package cryptonite - flags: -support_rdrand - --- Using a fork until our patches can be merged upstream - --- TODO: ADP-1713 -source-repository-package - type: git - location: https://github.com/biocad/servant-openapi3 - tag: 4165b837d3a71debd1059c3735460075840000b5 - --sha256: 1dngrr353kjhmwhn0b289jzqz5rf32llwcv79zcyq15ldpqpbib9 +------ Begin contents from @cardano-wallet@'s @cabal.project@ file. -------- --- TODO: ADP-1713 -source-repository-package - type: git - location: https://github.com/paolino/openapi3 - tag: f22c31611c295637a3e72b341cd1c56d1d87b993 - --sha256: 10l7wlaz9rcr3fysi1vwg7qqa826bb7nidkpx9jy1q7ja7ddw47i +-------------------------------------------------------------------------------- source-repository-package type: git - location: https://github.com/input-output-hk/cardano-addresses - tag: 6b55f96d57a181f898eb2a50531d3ae4280c549c - --sha256: 0yygam995i3mawk6hfgxb6v918phvqzyipzhjflff0l6zfrldy7f + location: https://github.com/IntersectMBO/cardano-addresses + tag: 126964483d188c2362393d2a6eea8c65dfc43097 + --sha256: 1w152imj28ap5dfdc8x9ly0cy7dn500v7k63vw11f70gvgg6x7my subdir: command-line core +-- Normally cabal won't apply ghc-options which we specify to build packages +-- to their "regular" dependencies. +-- However, the dependencies declared using the `source-repository-package` +-- pragma are an exception to this rule. +-- This is why we need to manually control options that are applied to the +-- `cardano-addresses` package by declaring them explicitly here. +-- +-- Cardano Addresses CLI uses an outdated version of the `optparse-applicative` +-- library. This causes a deprecation warning to be emitted when building. +-- We don't want to promote this warning to an error level as it break the +-- release build and cardano-addresses codebase is not under our control. +package cardano-addresses-cli + ghc-options: + -Wwarn=deprecations + package cardano-addresses - ghc-options: -Wno-incomplete-uni-patterns + ghc-options: + -Wwarn=incomplete-uni-patterns +-- END Cardano Addresses Dependency +-------------------------------------------------------------------------------- source-repository-package type: git @@ -158,13 +138,13 @@ source-repository-package source-repository-package type: git - location: https://github.com/input-output-hk/bech32.git - tag: e341e7f83d7b73f10baa87e946818b2c493cc5f5 - --sha256: 1d891bpc1q1m1gqj02b4iv3kr4g9w7knlkq43hwbl9dn5k78aydc - subdir: bech32 + location: https://github.com/cardano-foundation/cardano-wallet-client.git + tag: 353412ca621dc28af53e4a19795338b19bab1b7b + --sha256: 04q58c82wy6x9nkwqbvcxbv6s61fx08h5kf62sb511aqp08id4bb + subdir: generated --- ------------------------------------------------------------------------- --- Constraints tweaking +-------------------------------------------------------------------------------- +-- BEGIN Constraints tweaking section -- cardano-addresses unit tests bring in some version constraint conflicts. -- @@ -179,56 +159,31 @@ allow-newer: , ekg:* , ntp-client:* , libsystemd-journal:base - , size-based:template-haskell + , cardano-addresses-cli:mtl + , servant-openapi3:* -constraints: - bimap >= 0.4.0 - , openapi3 >= 3.2.0 - , libsystemd-journal >= 1.4.4 - , systemd >= 2.3.0 - -- dependency of systemd-2.3.0 - , network >= 3.1.1.1 - -- choose versions that work with base >= 4.12 - , hjsonpointer >= 1.5.0 - , hjsonschema >= 1.10.0 - , Cabal >= 3.4.0.0 - , async-timer >= 0.2.0.0 - , unliftio-core >= 0.2.0.1 - , generic-arbitrary >= 0.2.2 - , iohk-monitoring >= 0.1.11 - - -- lower versions of katip won't build with the Win32-2.12.0.1 - -- which is shipped with the ghc-9.2.8 - , katip >= 0.8.7.4 - - -- Cardano Node dependencies: - , cardano-api ^>=8.2 - , cardano-slotting >= 0.1 - , ouroboros-network ^>= 0.8.1.0 - - -- TH Name shadowing warnings need to be addressed when bumping to 2.13.3.5 - , persistent == 2.13.3.3 - - -- Haddock is broken in this release. Waiting for the next release - --- ---------------------------------------------------------------- --- Flags for dependencies +-- END Constraints tweaking section +-------------------------------------------------------------------------------- + +-------------------------------------------------------------------------------- +-- Flags for dependencies without an S-R-P pragma should be kept in this section +-- (conversely, flags for the S-R-P dependencies should be kept within the +-- same section where an S-R-P pragma is located, +-- for them to be managed together) + +-- Using RDRAND instead of /dev/urandom as an entropy source for key +-- generation is dubious. Set the flag so we use /dev/urandom by default. +package cryptonite + flags: -support_rdrand package cardano-config flags: -systemd + package cardano-node flags: -systemd -- ------------------------------------------------------------------------- + -------- End contents from @cardano-wallet@'s @cabal.project@ file. -------- -constraints: - -- We need turtle > 1.6 to support GHC 9.6. But that version now allows - -- some broken situations: https://github.com/Gabriella439/turtle/pull/446#issuecomment-1637628373 - -- We are forced into an old version of ansi-wl-pprint because of inline-c (dep of inline-r), which - -- doesn't support the new one. - -- So for now we just force old versions of optparse-applicative and ansi-wl-pprint. - -- This is fine for CHaP, since we don't publish plutus-metatheory and the flag for inline-r - -- is off by default. - optparse-applicative < 0.18 - , ansi-wl-pprint < 1.0 +-------- End contents from @atlas@'s @cabal.project@ file. -------- \ No newline at end of file diff --git a/geniusyield-orderbot-framework/CHANGELOG.md b/geniusyield-orderbot-framework/CHANGELOG.md index 94c78fd..26748d5 100644 --- a/geniusyield-orderbot-framework/CHANGELOG.md +++ b/geniusyield-orderbot-framework/CHANGELOG.md @@ -1,5 +1,9 @@ # Revision history for geniusyield-orderbot-framework +## 0.3.0 + +Update Maestro SDK to not make use of deprecated endpoints. + ## 0.2.0 Incorporate v0.3.1.0 of `geniusyield-dex-api`. \ No newline at end of file diff --git a/geniusyield-orderbot-framework/geniusyield-orderbot-framework.cabal b/geniusyield-orderbot-framework/geniusyield-orderbot-framework.cabal index 1cb8c9d..dc521d6 100644 --- a/geniusyield-orderbot-framework/geniusyield-orderbot-framework.cabal +++ b/geniusyield-orderbot-framework/geniusyield-orderbot-framework.cabal @@ -1,7 +1,7 @@ cabal-version: 3.4 name: geniusyield-orderbot-framework synopsis: Smart Order Router framework -version: 0.2.0 +version: 0.3.0 build-type: Simple license: Apache-2.0 copyright: (c) 2023 GYELD GMBH