From defd11464b7d09ac2f486cf03dad0738f5ead22d Mon Sep 17 00:00:00 2001 From: Mateusz Galazyn Date: Tue, 18 Feb 2025 12:44:31 +0100 Subject: [PATCH 1/3] Remove stylish haskell. Use only fourmolu. --- .github/workflows/check-formatting.yml | 12 +-- .stylish-haskell.yaml | 114 ------------------------- cardano-api/cardano-api.cabal | 5 +- flake.nix | 1 - fourmolu.yaml | 42 ++++++++- scripts/devshell/prettify | 5 +- 6 files changed, 46 insertions(+), 133 deletions(-) delete mode 100644 .stylish-haskell.yaml diff --git a/.github/workflows/check-formatting.yml b/.github/workflows/check-formatting.yml index 61768513e3..065a97c0c1 100644 --- a/.github/workflows/check-formatting.yml +++ b/.github/workflows/check-formatting.yml @@ -41,11 +41,7 @@ jobs: for x in $(git ls-tree --full-tree --name-only -r HEAD); do if [ "${x##*.}" == "hs" ]; then - if grep -qE '^#' "$x"; then - echo "$x contains CPP. Skipping." - else - "$(git rev-parse --show-toplevel)/scripts/devshell/prettify" "$x" - fi + "$(git rev-parse --show-toplevel)/scripts/devshell/prettify" "$x" fi done @@ -58,11 +54,7 @@ jobs: git fetch origin ${{ github.base_ref }} --unshallow for x in $(git diff --name-only --diff-filter=ACMR origin/${{ github.base_ref }}..HEAD); do if [ "${x##*.}" == "hs" ]; then - if grep -qE '^#' "$x"; then - echo "$x contains CPP. Skipping." - else - "$(git rev-parse --show-toplevel)/scripts/devshell/prettify" "$x" - fi + "$(git rev-parse --show-toplevel)/scripts/devshell/prettify" "$x" fi done diff --git a/.stylish-haskell.yaml b/.stylish-haskell.yaml deleted file mode 100644 index 7218ef5069..0000000000 --- a/.stylish-haskell.yaml +++ /dev/null @@ -1,114 +0,0 @@ -# Stylish-haskell configuration file. - -# Principles: -# -# 1. Amount of indent should not be dependent on the length of the previous line -# 2. Imports lists should be compact -# 3. All linting rules that delete comments should be disabled -# 4. No inline indenting, for example indent of ->, =, <-, as -# 5. Redunant imports and pragmas should be removed -# 6. Consistent syntax -# 7. No trailing whitespaces -# 8. Slightly generous screen width assumed -# 9. All Haskell files in the project are subject to code formatting style -# 10. Import grouping is handled by stylish-haskell - -steps: - # Principle 4 - - simple_align: - cases: false - top_level_patterns: false - # Principle 3 - records: false - - # Import cleanup - - imports: - align: global - - # Principle 1,2 - list_align: with_module_name - - # Principle 4 - pad_module_names: false - - # Principle 2 - long_list_align: inline - - empty_list_align: inherit - - list_padding: 2 - - separate_lists: true - - space_surround: false - - # Principle 10 - group_imports: true - - group_rules: - - match: ^Cardano.Api\> - - match: ^(Cardano|Ouroboros|PlutusCore|PlutusLedgerApi)\> - - match: ^Prelude\> - - match: ^(Control|Codec|Data|Formatting|GHC|Lens|Network|Numeric|Options|Prettyprinter|System|Text)\> - - match: ^(Test.Gen.Cardano.Api)\> - - match: ^(Test.Cardano|Test.Gen.Cardano)\> - - match: ^(Hedgehog|HaskellWorks.Hspec|Test)\> - - - language_pragmas: - style: vertical - - align: false - - # Principle 5 - remove_redundant: true - - # Principle 6 - language_prefix: LANGUAGE - - # Principle 7 - - trailing_whitespace: {} - -# Principle 8 -columns: 100 - -newline: native - -# Principle 9 -# -# These syntax-affecting language extensions are enabled so that -# stylish-haskell wouldn't fail with parsing errors when processing files -# in projects that have those extensions enabled in the .cabal file -# rather than locally. -# -# In particular language extensions with British and American spellings -# that we use should be included here until stylish-haskell supports -# the British spelling. -language_extensions: - - BangPatterns - - ConstraintKinds - - DataKinds - - DefaultSignatures - - DeriveDataTypeable - - DeriveGeneric - - ExistentialQuantification - - FlexibleContexts - - FlexibleInstances - - FunctionalDependencies - - GADTs - - GeneralizedNewtypeDeriving - - LambdaCase - - MultiParamTypeClasses - - MultiWayIf - - OverloadedStrings - - PolyKinds - - RecordWildCards - - ScopedTypeVariables - - StandaloneDeriving - - TemplateHaskell - - TupleSections - - TypeApplications - - TypeFamilies - - ViewPatterns - - ExplicitNamespaces - -cabal: true diff --git a/cardano-api/cardano-api.cabal b/cardano-api/cardano-api.cabal index bbd65a8ea8..b0778f6e8b 100644 --- a/cardano-api/cardano-api.cabal +++ b/cardano-api/cardano-api.cabal @@ -22,7 +22,10 @@ extra-doc-files: common project-config default-language: Haskell2010 - default-extensions: OverloadedStrings + default-extensions: + ImportQualifiedPost + OverloadedStrings + build-depends: base >=4.14 && <4.21 ghc-options: -Wall diff --git a/flake.nix b/flake.nix index baaa1addb5..e83cd6d0ad 100644 --- a/flake.nix +++ b/flake.nix @@ -101,7 +101,6 @@ fourmolu = "0.18.0.0"; haskell-language-server.src = nixpkgs.haskell-nix.sources."hls-2.9"; hlint = "3.8"; - stylish-haskell = "0.14.6.0"; }; # and from nixpkgs or other inputs shell.nativeBuildInputs = with nixpkgs; [gh jq yq-go actionlint shellcheck]; diff --git a/fourmolu.yaml b/fourmolu.yaml index 8fb937cd1d..a7fef2e706 100644 --- a/fourmolu.yaml +++ b/fourmolu.yaml @@ -3,10 +3,44 @@ column-limit: 100 function-arrows: leading comma-style: leading import-export-style: leading -# we need https://github.com/IntersectMBO/cardano-api/pull/744/ to ditch stylish -import-grouping: legacy -indent-wheres: false -record-brace-space: false +import-grouping: + - rules: + - glob: Cardano.Api** + - rules: + - glob: Cardano** + - glob: Ouroboros** + - glob: PlutusCore** + - glob: PlutusLedgerApi** + - rules: + - glob: Prelude** + - glob: RIO** + - rules: + - glob: Control** + - glob: Codec** + - glob: Data** + - glob: Formatting** + - glob: GHC** + - glob: Lens** + - glob: Network** + - glob: Numeric** + - glob: Options** + - glob: Prettyprinter** + - glob: System** + - glob: Text** + - rules: + - glob: Test.Gen.Cardano.Api** + - rules: + - glob: Test.Cardano** + - glob: Test.Gen.Cardano** + - rules: + - glob: Hedgehog** + - glob: Test** + - name: "The rest" + rules: + - match: all + priority: 100 +indent-wheres: false +record-brace-space: false newlines-between-decls: 1 haddock-style: single-line haddock-style-module: diff --git a/scripts/devshell/prettify b/scripts/devshell/prettify index 873de484d6..691fdf1e00 100755 --- a/scripts/devshell/prettify +++ b/scripts/devshell/prettify @@ -3,7 +3,7 @@ # Function to display help message show_help() { echo "Usage: $(basename $0) " - echo "Format Haskell source files using fourmolu and stylish-haskell." + echo "Format Haskell source files using fourmolu." echo "" echo "Options:" echo " -t, --tracked Format all tracked Haskell (*.hs) files in the repository" @@ -39,7 +39,6 @@ run_format() { echo -e "${green_colour}Formatting: ${blue_colour}${relative_path}${reset_colour}" fourmolu -q -i "$top_level/$relative_path" fourmolu -q -i "$top_level/$relative_path" - stylish-haskell -i "$top_level/$relative_path" fi fi done @@ -91,7 +90,7 @@ for file in $files; do fi done -for tool in stylish-haskell fourmolu +for tool in fourmolu do if ! (which $tool > /dev/null 2>&1); then echo "ERROR: $tool is not available!" From 1bb9b9baf0aa9bf610df7fb8fcad193563469eb3 Mon Sep 17 00:00:00 2001 From: Mateusz Galazyn Date: Tue, 18 Feb 2025 12:45:20 +0100 Subject: [PATCH 2/3] Reformat codebase with only fourmolu --- .../src/Test/Gen/Cardano/Api/Empty.hs | 2 +- cardano-api/gen/Test/Gen/Cardano/Api.hs | 36 +-- cardano-api/gen/Test/Gen/Cardano/Api/Byron.hs | 16 +- cardano-api/gen/Test/Gen/Cardano/Api/Era.hs | 16 +- .../gen/Test/Gen/Cardano/Api/Hardcoded.hs | 8 +- .../gen/Test/Gen/Cardano/Api/Metadata.hs | 36 +-- .../Gen/Cardano/Api/ProtocolParameters.hs | 18 +- .../gen/Test/Gen/Cardano/Crypto/Seed.hs | 14 +- .../gen/Test/Hedgehog/Golden/ErrorMessage.hs | 58 ++-- .../gen/Test/Hedgehog/Roundtrip/Bech32.hs | 6 +- .../gen/Test/Hedgehog/Roundtrip/CBOR.hs | 24 +- cardano-api/src/Cardano/Api.hs | 144 ++++----- cardano-api/src/Cardano/Api/Byron.hs | 118 ++++++-- .../src/Cardano/Api/ChainSync/Client.hs | 4 +- .../Cardano/Api/ChainSync/ClientPipelined.hs | 6 +- cardano-api/src/Cardano/Api/Compatible.hs | 2 +- cardano-api/src/Cardano/Api/Consensus.hs | 2 +- .../src/Cardano/Api/Crypto/Ed25519Bip32.hs | 30 +- cardano-api/src/Cardano/Api/Experimental.hs | 6 +- .../src/Cardano/Api/Internal/Address.hs | 66 ++--- .../src/Cardano/Api/Internal/Anchor.hs | 6 +- cardano-api/src/Cardano/Api/Internal/Block.hs | 64 ++-- .../src/Cardano/Api/Internal/Certificate.hs | 74 ++--- .../Api/Internal/Convenience/Construction.hs | 40 +-- .../Cardano/Api/Internal/Convenience/Query.hs | 74 ++--- .../src/Cardano/Api/Internal/DRepMetadata.hs | 24 +- .../Cardano/Api/Internal/DeserialiseAnyOf.hs | 46 +-- .../Api/Internal/Eon/AllegraEraOnwards.hs | 40 +-- .../Api/Internal/Eon/AlonzoEraOnwards.hs | 56 ++-- .../Api/Internal/Eon/BabbageEraOnwards.hs | 54 ++-- .../Api/Internal/Eon/ByronToAlonzoEra.hs | 6 +- .../src/Cardano/Api/Internal/Eon/Convert.hs | 2 +- .../Api/Internal/Eon/ConwayEraOnwards.hs | 56 ++-- .../Api/Internal/Eon/MaryEraOnwards.hs | 46 +-- .../Api/Internal/Eon/ShelleyBasedEra.hs | 62 ++-- .../Api/Internal/Eon/ShelleyEraOnly.hs | 40 +-- .../Api/Internal/Eon/ShelleyToAllegraEra.hs | 42 +-- .../Api/Internal/Eon/ShelleyToAlonzoEra.hs | 38 +-- .../Api/Internal/Eon/ShelleyToBabbageEra.hs | 38 +-- .../Api/Internal/Eon/ShelleyToMaryEra.hs | 38 +-- cardano-api/src/Cardano/Api/Internal/Eras.hs | 6 +- .../src/Cardano/Api/Internal/Eras/Case.hs | 26 +- .../src/Cardano/Api/Internal/Eras/Core.hs | 26 +- cardano-api/src/Cardano/Api/Internal/Error.hs | 16 +- .../Cardano/Api/Internal/Experimental/Eras.hs | 54 ++-- .../Cardano/Api/Internal/Experimental/Tx.hs | 50 ++-- .../src/Cardano/Api/Internal/Feature.hs | 4 +- cardano-api/src/Cardano/Api/Internal/Fees.hs | 106 +++---- .../src/Cardano/Api/Internal/Genesis.hs | 114 ++++---- .../Cardano/Api/Internal/GenesisParameters.hs | 16 +- .../Governance/Actions/ProposalProcedure.hs | 54 ++-- .../Governance/Actions/VotingProcedure.hs | 40 +-- .../Governance/Metadata/DrepRegistration.hs | 22 +- .../Internal/Governance/Metadata/GovAction.hs | 22 +- .../Internal/Governance/Metadata/Parsers.hs | 6 +- .../Governance/Metadata/Validation.hs | 6 +- .../Cardano/Api/Internal/Governance/Poll.hs | 64 ++-- .../src/Cardano/Api/Internal/HasTypeProxy.hs | 6 +- cardano-api/src/Cardano/Api/Internal/Hash.hs | 10 +- cardano-api/src/Cardano/Api/Internal/IO.hs | 28 +- .../src/Cardano/Api/Internal/IO/Base.hs | 4 +- .../src/Cardano/Api/Internal/IO/Compat.hs | 14 +- cardano-api/src/Cardano/Api/Internal/IPC.hs | 126 ++++---- .../src/Cardano/Api/Internal/IPC/Monad.hs | 22 +- .../src/Cardano/Api/Internal/IPC/Version.hs | 2 +- .../src/Cardano/Api/Internal/InMode.hs | 42 +-- cardano-api/src/Cardano/Api/Internal/Json.hs | 4 +- .../src/Cardano/Api/Internal/Keys/Byron.hs | 56 ++-- .../src/Cardano/Api/Internal/Keys/Praos.hs | 40 +-- .../src/Cardano/Api/Internal/Keys/Read.hs | 20 +- .../src/Cardano/Api/Internal/Keys/Shelley.hs | 54 ++-- .../LedgerEvents/ConvertLedgerEvent.hs | 74 +++-- .../Api/Internal/LedgerEvents/LedgerEvent.hs | 34 +-- .../LedgerEvents/Rule/BBODY/DELEGS.hs | 4 +- .../LedgerEvents/Rule/BBODY/LEDGER.hs | 23 +- .../Internal/LedgerEvents/Rule/BBODY/UTXOW.hs | 25 +- .../LedgerEvents/Rule/TICK/NEWEPOCH.hs | 20 +- .../Internal/LedgerEvents/Rule/TICK/RUPD.hs | 13 +- .../src/Cardano/Api/Internal/LedgerState.hs | 273 ++++++++++-------- cardano-api/src/Cardano/Api/Internal/Modes.hs | 37 +-- .../src/Cardano/Api/Internal/Monad/Error.hs | 25 +- .../src/Cardano/Api/Internal/NetworkId.hs | 14 +- .../Api/Internal/OperationalCertificate.hs | 36 +-- .../src/Cardano/Api/Internal/Orphans.hs | 166 +++++------ .../src/Cardano/Api/Internal/Plutus.hs | 64 ++-- .../src/Cardano/Api/Internal/Pretty.hs | 12 +- .../src/Cardano/Api/Internal/Protocol.hs | 42 +-- .../Api/Internal/ProtocolParameters.hs | 132 +++++---- cardano-api/src/Cardano/Api/Internal/Query.hs | 136 ++++----- .../src/Cardano/Api/Internal/Query/Expr.hs | 72 ++--- .../src/Cardano/Api/Internal/Query/Types.hs | 14 +- .../Cardano/Api/Internal/ReexposeConsensus.hs | 27 +- .../Cardano/Api/Internal/ReexposeLedger.hs | 229 +++++++++++---- .../Cardano/Api/Internal/ReexposeNetwork.hs | 8 +- .../src/Cardano/Api/Internal/Rewards.hs | 18 +- .../src/Cardano/Api/Internal/Script.hs | 118 ++++---- .../src/Cardano/Api/Internal/ScriptData.hs | 92 +++--- .../Cardano/Api/Internal/SerialiseBech32.hs | 30 +- .../src/Cardano/Api/Internal/SerialiseCBOR.hs | 8 +- .../src/Cardano/Api/Internal/SerialiseJSON.hs | 24 +- .../Api/Internal/SerialiseLedgerCddl.hs | 62 ++-- .../src/Cardano/Api/Internal/SerialiseRaw.hs | 22 +- .../Api/Internal/SerialiseTextEnvelope.hs | 54 ++-- .../Cardano/Api/Internal/SerialiseUsing.hs | 32 +- .../src/Cardano/Api/Internal/SpecialByron.hs | 67 +++-- .../Cardano/Api/Internal/StakePoolMetadata.hs | 50 ++-- .../src/Cardano/Api/Internal/Tx/Body.hs | 228 ++++++++------- .../src/Cardano/Api/Internal/Tx/Compatible.hs | 50 ++-- .../src/Cardano/Api/Internal/Tx/Sign.hs | 84 +++--- .../src/Cardano/Api/Internal/Tx/UTxO.hs | 28 +- cardano-api/src/Cardano/Api/Internal/TxIn.hs | 62 ++-- .../src/Cardano/Api/Internal/TxMetadata.hs | 74 ++--- cardano-api/src/Cardano/Api/Internal/Value.hs | 80 ++--- .../src/Cardano/Api/Internal/ValueParser.hs | 38 +-- .../src/Cardano/Api/Internal/Via/ShowOf.hs | 10 +- cardano-api/src/Cardano/Api/Ledger.hs | 2 +- cardano-api/src/Cardano/Api/Ledger/Lens.hs | 54 ++-- cardano-api/src/Cardano/Api/Network.hs | 2 +- cardano-api/src/Cardano/Api/Shelley.hs | 58 ++-- cardano-api/src/Cardano/Api/Tx/UTxO.hs | 2 +- .../Test/Golden/Cardano/Api/Genesis.hs | 44 +-- .../Test/Golden/Cardano/Api/Ledger.hs | 10 +- .../Golden/Cardano/Api/ProtocolParameters.hs | 57 ++-- .../Test/Golden/Cardano/Api/Script.hs | 22 +- .../Test/Golden/Cardano/Api/Value.hs | 55 ++-- .../Test/Golden/ErrorsSpec.hs | 72 ++--- .../Test/Cardano/Api/Address.hs | 16 +- .../Test/Cardano/Api/Bech32.hs | 12 +- .../cardano-api-test/Test/Cardano/Api/CBOR.hs | 50 ++-- .../Test/Cardano/Api/Crypto.hs | 18 +- .../Test/Cardano/Api/EpochLeadership.hs | 75 ++--- .../cardano-api-test/Test/Cardano/Api/Eras.hs | 16 +- .../Test/Cardano/Api/Experimental.hs | 28 +- .../Test/Cardano/Api/Genesis.hs | 52 ++-- .../Test/Cardano/Api/GovAnchorValidation.hs | 28 +- .../cardano-api-test/Test/Cardano/Api/IO.hs | 16 +- .../cardano-api-test/Test/Cardano/Api/Json.hs | 24 +- .../Test/Cardano/Api/KeysByron.hs | 16 +- .../Test/Cardano/Api/Ledger.hs | 30 +- .../Test/Cardano/Api/Metadata.hs | 34 +-- .../cardano-api-test/Test/Cardano/Api/Ord.hs | 20 +- .../Test/Cardano/Api/Orphans.hs | 10 +- .../Test/Cardano/Api/ProtocolParameters.hs | 47 +-- .../Cardano/Api/Transaction/Autobalance.hs | 76 ++--- .../Test/Cardano/Api/TxBody.hs | 26 +- .../Test/Cardano/Api/Value.hs | 27 +- .../test/cardano-api-test/cardano-api-test.hs | 48 +-- 147 files changed, 3315 insertions(+), 2961 deletions(-) diff --git a/cardano-api-gen/src/Test/Gen/Cardano/Api/Empty.hs b/cardano-api-gen/src/Test/Gen/Cardano/Api/Empty.hs index 487ed9254e..0ce0529e8f 100644 --- a/cardano-api-gen/src/Test/Gen/Cardano/Api/Empty.hs +++ b/cardano-api-gen/src/Test/Gen/Cardano/Api/Empty.hs @@ -1,5 +1,5 @@ module Test.Gen.Cardano.Api.Empty where -import Test.Gen.Cardano.Api () +import Test.Gen.Cardano.Api () -- | This module is empty, but it is needed to prevent unused-packages warning diff --git a/cardano-api/gen/Test/Gen/Cardano/Api.hs b/cardano-api/gen/Test/Gen/Cardano/Api.hs index d3fe4d47c9..e123fdfe4b 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Api.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Api.hs @@ -9,24 +9,24 @@ module Test.Gen.Cardano.Api ) where -import qualified Cardano.Ledger.Alonzo.Core as Ledger -import qualified Cardano.Ledger.Alonzo.Genesis as Alonzo -import qualified Cardano.Ledger.Alonzo.Scripts as Alonzo -import qualified Cardano.Ledger.BaseTypes as Ledger -import qualified Cardano.Ledger.Coin as Ledger -import qualified Cardano.Ledger.Plutus.CostModels as Plutus -import qualified Cardano.Ledger.Plutus.Language as Alonzo -import Cardano.Ledger.Shelley.TxAuxData (Metadatum (..), ShelleyTxAuxData (..)) - -import qualified Data.Map.Strict as Map -import Data.Word (Word64) -import GHC.Exts (IsList (..)) - -import Test.Gen.Cardano.Api.Typed (genCostModel, genRational) - -import Hedgehog (Gen, Range) -import qualified Hedgehog.Gen as Gen -import qualified Hedgehog.Internal.Range as Range +import Cardano.Ledger.Alonzo.Core qualified as Ledger +import Cardano.Ledger.Alonzo.Genesis qualified as Alonzo +import Cardano.Ledger.Alonzo.Scripts qualified as Alonzo +import Cardano.Ledger.BaseTypes qualified as Ledger +import Cardano.Ledger.Coin qualified as Ledger +import Cardano.Ledger.Plutus.CostModels qualified as Plutus +import Cardano.Ledger.Plutus.Language qualified as Alonzo +import Cardano.Ledger.Shelley.TxAuxData (Metadatum (..), ShelleyTxAuxData (..)) + +import Data.Map.Strict qualified as Map +import Data.Word (Word64) +import GHC.Exts (IsList (..)) + +import Test.Gen.Cardano.Api.Typed (genCostModel, genRational) + +import Hedgehog (Gen, Range) +import Hedgehog.Gen qualified as Gen +import Hedgehog.Internal.Range qualified as Range genMetadata :: Ledger.Era era => Gen (ShelleyTxAuxData era) genMetadata = do diff --git a/cardano-api/gen/Test/Gen/Cardano/Api/Byron.hs b/cardano-api/gen/Test/Gen/Cardano/Api/Byron.hs index 94361c0c5e..fd0bc15321 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Api/Byron.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Api/Byron.hs @@ -7,17 +7,17 @@ module Test.Gen.Cardano.Api.Byron ) where -import Cardano.Api hiding (txIns) -import Cardano.Api.Byron +import Cardano.Api hiding (txIns) +import Cardano.Api.Byron -import Data.Proxy +import Data.Proxy -import Test.Gen.Cardano.Api.Typed +import Test.Gen.Cardano.Api.Typed -import Hedgehog -import Test.Hedgehog.Roundtrip.CBOR -import Test.Tasty -import Test.Tasty.Hedgehog +import Hedgehog +import Test.Hedgehog.Roundtrip.CBOR +import Test.Tasty +import Test.Tasty.Hedgehog prop_byron_roundtrip_txbody_CBOR :: Property prop_byron_roundtrip_txbody_CBOR = property $ do diff --git a/cardano-api/gen/Test/Gen/Cardano/Api/Era.hs b/cardano-api/gen/Test/Gen/Cardano/Api/Era.hs index ce3c91734f..7075138a8e 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Api/Era.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Api/Era.hs @@ -10,18 +10,18 @@ module Test.Gen.Cardano.Api.Era ) where -import Cardano.Api hiding (txIns) -import Cardano.Api.Shelley +import Cardano.Api hiding (txIns) +import Cardano.Api.Shelley -import qualified Cardano.Ledger.BaseTypes as Ledger -import qualified Cardano.Ledger.Core as Ledger +import Cardano.Ledger.BaseTypes qualified as Ledger +import Cardano.Ledger.Core qualified as Ledger -import qualified Data.Functor.Identity as Ledger +import Data.Functor.Identity qualified as Ledger -import Test.Cardano.Ledger.Conway.Arbitrary () -import Test.Cardano.Ledger.Core.Arbitrary () +import Test.Cardano.Ledger.Conway.Arbitrary () +import Test.Cardano.Ledger.Core.Arbitrary () -import Test.QuickCheck (Arbitrary (..)) +import Test.QuickCheck (Arbitrary (..)) shelleyBasedEraTestConstraints :: () diff --git a/cardano-api/gen/Test/Gen/Cardano/Api/Hardcoded.hs b/cardano-api/gen/Test/Gen/Cardano/Api/Hardcoded.hs index 5c3fd4099a..00a63d7533 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Api/Hardcoded.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Api/Hardcoded.hs @@ -10,11 +10,11 @@ module Test.Gen.Cardano.Api.Hardcoded ) where -import qualified Cardano.Binary as CBOR +import Cardano.Binary qualified as CBOR -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Lazy as LBS +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Lazy qualified as LBS exampleDoubleEncodedBytes :: LBS.ByteString exampleDoubleEncodedBytes = LBS.fromStrict $ CBOR.toStrictByteString exampleDoubleEncodedBytesEncoding diff --git a/cardano-api/gen/Test/Gen/Cardano/Api/Metadata.hs b/cardano-api/gen/Test/Gen/Cardano/Api/Metadata.hs index 93f650ad56..40322e613e 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Api/Metadata.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Api/Metadata.hs @@ -7,24 +7,24 @@ module Test.Gen.Cardano.Api.Metadata ) where -import Cardano.Api - -import Data.Aeson (ToJSON (..)) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Key as Aeson -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Base16 as Base16 -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Word (Word64) -import GHC.Exts (IsList (..)) - -import Hedgehog (Gen) -import qualified Hedgehog.Gen as Gen -import qualified Hedgehog.Internal.Gen as Gen -import qualified Hedgehog.Range as Range +import Cardano.Api + +import Data.Aeson (ToJSON (..)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Key qualified as Aeson +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Base16 qualified as Base16 +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Word (Word64) +import GHC.Exts (IsList (..)) + +import Hedgehog (Gen) +import Hedgehog.Gen qualified as Gen +import Hedgehog.Internal.Gen qualified as Gen +import Hedgehog.Range qualified as Range -- ---------------------------------------------------------------------------- -- Generators diff --git a/cardano-api/gen/Test/Gen/Cardano/Api/ProtocolParameters.hs b/cardano-api/gen/Test/Gen/Cardano/Api/ProtocolParameters.hs index c095bcfc4e..4a5727f1e6 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Api/ProtocolParameters.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Api/ProtocolParameters.hs @@ -1,17 +1,17 @@ module Test.Gen.Cardano.Api.ProtocolParameters where -import Cardano.Api -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Ledger +import Cardano.Api +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Ledger -import Test.Gen.Cardano.Api.Typed (genCostModels) +import Test.Gen.Cardano.Api.Typed (genCostModels) -import Test.Cardano.Ledger.Alonzo.Arbitrary () -import Test.Cardano.Ledger.Conway.Arbitrary () +import Test.Cardano.Ledger.Alonzo.Arbitrary () +import Test.Cardano.Ledger.Conway.Arbitrary () -import Hedgehog (MonadGen) -import qualified Hedgehog.Gen as Gen -import qualified Hedgehog.Gen.QuickCheck as Q +import Hedgehog (MonadGen) +import Hedgehog.Gen qualified as Gen +import Hedgehog.Gen.QuickCheck qualified as Q genStrictMaybe :: MonadGen m => m a -> m (StrictMaybe a) genStrictMaybe gen = diff --git a/cardano-api/gen/Test/Gen/Cardano/Crypto/Seed.hs b/cardano-api/gen/Test/Gen/Cardano/Crypto/Seed.hs index 906a2ec209..fd11ae0885 100644 --- a/cardano-api/gen/Test/Gen/Cardano/Crypto/Seed.hs +++ b/cardano-api/gen/Test/Gen/Cardano/Crypto/Seed.hs @@ -4,15 +4,15 @@ module Test.Gen.Cardano.Crypto.Seed ) where -import Cardano.Api (AsType, Key) -import qualified Cardano.Api as API +import Cardano.Api (AsType, Key) +import Cardano.Api qualified as API -import Cardano.Crypto.Seed (Seed) -import qualified Cardano.Crypto.Seed as C +import Cardano.Crypto.Seed (Seed) +import Cardano.Crypto.Seed qualified as C -import Hedgehog (MonadGen, Range) -import qualified Hedgehog.Gen as G -import qualified Hedgehog.Range as R +import Hedgehog (MonadGen, Range) +import Hedgehog.Gen qualified as G +import Hedgehog.Range qualified as R genSeed :: MonadGen m => Range Int -> m Seed genSeed r = C.mkSeedFromBytes <$> G.bytes r diff --git a/cardano-api/gen/Test/Hedgehog/Golden/ErrorMessage.hs b/cardano-api/gen/Test/Hedgehog/Golden/ErrorMessage.hs index 7bf294e077..7acd920212 100644 --- a/cardano-api/gen/Test/Hedgehog/Golden/ErrorMessage.hs +++ b/cardano-api/gen/Test/Hedgehog/Golden/ErrorMessage.hs @@ -3,32 +3,32 @@ module Test.Hedgehog.Golden.ErrorMessage where -import Cardano.Api (Error (..)) -import Cardano.Api.Internal.Pretty - -import qualified Control.Concurrent.QSem as IO -import Control.Exception (bracket_) -import Control.Monad -import Control.Monad.IO.Class -import Data.Algorithm.Diff (PolyDiff (Both), getGroupedDiff) -import Data.Algorithm.DiffOutput (ppDiff) -import Data.Data -import qualified Data.List as List -import qualified Data.Text as Text -import qualified Data.Text.IO as Text -import GHC.Stack (HasCallStack, withFrozenCallStack) -import qualified GHC.Stack as GHC -import qualified System.Directory as IO -import qualified System.Environment as IO -import System.FilePath (takeDirectory, ()) -import qualified System.IO as IO -import qualified System.IO.Unsafe as IO - -import Hedgehog -import qualified Hedgehog.Extras.Test as H -import qualified Hedgehog.Internal.Property as H -import Test.Tasty -import Test.Tasty.Hedgehog +import Cardano.Api (Error (..)) +import Cardano.Api.Internal.Pretty + +import Control.Concurrent.QSem qualified as IO +import Control.Exception (bracket_) +import Control.Monad +import Control.Monad.IO.Class +import Data.Algorithm.Diff (PolyDiff (Both), getGroupedDiff) +import Data.Algorithm.DiffOutput (ppDiff) +import Data.Data +import Data.List qualified as List +import Data.Text qualified as Text +import Data.Text.IO qualified as Text +import GHC.Stack (HasCallStack, withFrozenCallStack) +import GHC.Stack qualified as GHC +import System.Directory qualified as IO +import System.Environment qualified as IO +import System.FilePath (takeDirectory, ()) +import System.IO qualified as IO +import System.IO.Unsafe qualified as IO + +import Hedgehog +import Hedgehog.Extras.Test qualified as H +import Hedgehog.Internal.Property qualified as H +import Test.Tasty +import Test.Tasty.Hedgehog -- | Generate test tree for the list of values. This 'TestTree' will serialize the values using 'Error' -- instance and compare them against golden files in the provided location. @@ -136,9 +136,9 @@ diffVsGoldenFile actualContent goldenFile = GHC.withFrozenCallStack $ do if | recreateGoldenFiles -> writeGoldenFile goldenFile actualContent - | fileExists -> checkAgainstGoldenFile goldenFile actualLines - | createGoldenFiles -> writeGoldenFile goldenFile actualContent - | otherwise -> reportGoldenFileMissing goldenFile + | fileExists -> checkAgainstGoldenFile goldenFile actualLines + | createGoldenFiles -> writeGoldenFile goldenFile actualContent + | otherwise -> reportGoldenFileMissing goldenFile where actualLines = List.lines actualContent diff --git a/cardano-api/gen/Test/Hedgehog/Roundtrip/Bech32.hs b/cardano-api/gen/Test/Hedgehog/Roundtrip/Bech32.hs index 2d1074b2d8..1802912a4f 100644 --- a/cardano-api/gen/Test/Hedgehog/Roundtrip/Bech32.hs +++ b/cardano-api/gen/Test/Hedgehog/Roundtrip/Bech32.hs @@ -3,10 +3,10 @@ module Test.Hedgehog.Roundtrip.Bech32 ) where -import Cardano.Api +import Cardano.Api -import Hedgehog (Gen, Property) -import qualified Hedgehog as H +import Hedgehog (Gen, Property) +import Hedgehog qualified as H roundtrip_Bech32 :: (SerialiseAsBech32 a, Eq a, Show a) diff --git a/cardano-api/gen/Test/Hedgehog/Roundtrip/CBOR.hs b/cardano-api/gen/Test/Hedgehog/Roundtrip/CBOR.hs index d957efc385..70b9d7c1bc 100644 --- a/cardano-api/gen/Test/Hedgehog/Roundtrip/CBOR.hs +++ b/cardano-api/gen/Test/Hedgehog/Roundtrip/CBOR.hs @@ -10,21 +10,21 @@ module Test.Hedgehog.Roundtrip.CBOR ) where -import Cardano.Api -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Script +import Cardano.Api +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Script -import qualified Cardano.Ledger.Core as Ledger -import qualified Cardano.Ledger.Plutus.Language as Plutus +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Ledger.Plutus.Language qualified as Plutus -import Data.ByteString (ByteString) -import qualified Data.ByteString.Short as SBS -import Data.Proxy -import GHC.Stack (HasCallStack) -import qualified GHC.Stack as GHC +import Data.ByteString (ByteString) +import Data.ByteString.Short qualified as SBS +import Data.Proxy +import GHC.Stack (HasCallStack) +import GHC.Stack qualified as GHC -import qualified Hedgehog as H -import Hedgehog.Internal.Property (failWith) +import Hedgehog qualified as H +import Hedgehog.Internal.Property (failWith) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/src/Cardano/Api.hs b/cardano-api/src/Cardano/Api.hs index de24d8107b..f60ecdf0bf 100644 --- a/cardano-api/src/Cardano/Api.hs +++ b/cardano-api/src/Cardano/Api.hs @@ -1077,75 +1077,75 @@ module Cardano.Api ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Anchor -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Convenience.Construction -import Cardano.Api.Internal.Convenience.Query -import Cardano.Api.Internal.DeserialiseAnyOf -import Cardano.Api.Internal.DRepMetadata -import Cardano.Api.Internal.Eon.AllegraEraOnwards -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.ByronToAlonzoEra -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eon.ShelleyEraOnly -import Cardano.Api.Internal.Eon.ShelleyToAllegraEra -import Cardano.Api.Internal.Eon.ShelleyToAlonzoEra -import Cardano.Api.Internal.Eon.ShelleyToBabbageEra -import Cardano.Api.Internal.Eon.ShelleyToMaryEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Feature -import Cardano.Api.Internal.Fees -import Cardano.Api.Internal.Genesis -import Cardano.Api.Internal.GenesisParameters -import Cardano.Api.Internal.Governance.Actions.ProposalProcedure -import Cardano.Api.Internal.Governance.Metadata.DrepRegistration (CIP119 (..)) -import Cardano.Api.Internal.Governance.Metadata.GovAction (CIP108 (..)) -import Cardano.Api.Internal.Governance.Metadata.Validation -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.InMode -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.IPC -import Cardano.Api.Internal.IPC.Monad -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.Keys.Read -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.LedgerState -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Monad.Error -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.OperationalCertificate -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Internal.Plutus -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.Protocol -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query hiding (LedgerState (..)) -import Cardano.Api.Internal.Query.Expr -import Cardano.Api.Internal.Rewards -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.ScriptData -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseLedgerCddl -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.StakePoolMetadata -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.Tx.UTxO -import Cardano.Api.Internal.TxMetadata -import Cardano.Api.Internal.Utils -import Cardano.Api.Internal.Value -import Cardano.Api.Internal.ValueParser +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Anchor +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Convenience.Construction +import Cardano.Api.Internal.Convenience.Query +import Cardano.Api.Internal.DRepMetadata +import Cardano.Api.Internal.DeserialiseAnyOf +import Cardano.Api.Internal.Eon.AllegraEraOnwards +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.ByronToAlonzoEra +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eon.ShelleyEraOnly +import Cardano.Api.Internal.Eon.ShelleyToAllegraEra +import Cardano.Api.Internal.Eon.ShelleyToAlonzoEra +import Cardano.Api.Internal.Eon.ShelleyToBabbageEra +import Cardano.Api.Internal.Eon.ShelleyToMaryEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.Feature +import Cardano.Api.Internal.Fees +import Cardano.Api.Internal.Genesis +import Cardano.Api.Internal.GenesisParameters +import Cardano.Api.Internal.Governance.Actions.ProposalProcedure +import Cardano.Api.Internal.Governance.Metadata.DrepRegistration (CIP119 (..)) +import Cardano.Api.Internal.Governance.Metadata.GovAction (CIP108 (..)) +import Cardano.Api.Internal.Governance.Metadata.Validation +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.IPC +import Cardano.Api.Internal.IPC.Monad +import Cardano.Api.Internal.InMode +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.Keys.Read +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.LedgerState +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Monad.Error +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.OperationalCertificate +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Plutus +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.Protocol +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query hiding (LedgerState (..)) +import Cardano.Api.Internal.Query.Expr +import Cardano.Api.Internal.Rewards +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.ScriptData +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseLedgerCddl +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.StakePoolMetadata +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.Tx.UTxO +import Cardano.Api.Internal.TxMetadata +import Cardano.Api.Internal.Utils +import Cardano.Api.Internal.Value +import Cardano.Api.Internal.ValueParser diff --git a/cardano-api/src/Cardano/Api/Byron.hs b/cardano-api/src/Cardano/Api/Byron.hs index d4a3cb0f97..35a2382bf2 100644 --- a/cardano-api/src/Cardano/Api/Byron.hs +++ b/cardano-api/src/Cardano/Api/Byron.hs @@ -155,33 +155,91 @@ module Cardano.Api.Byron ) where -import Cardano.Api hiding (Address, Certificate, Lovelace, NetworkMagic, Tx (..), TxIn, - TxOut, UTxO (..)) -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.NetworkId hiding (NetworkMagic) -import Cardano.Api.Internal.SerialiseLedgerCddl -import Cardano.Api.Internal.SpecialByron -import Cardano.Api.Internal.Tx.Body hiding (TxIn, TxOut) -import Cardano.Api.Internal.Tx.Sign hiding (ATxAux (..), Tx (..)) -import Cardano.Api.Internal.Value hiding (Lovelace) - -import Cardano.Chain.Block (decCBORABlockOrBoundary) -import Cardano.Chain.Common (AddrAttributes (..), Address, BlockCount (..), KeyHash, - Lovelace, LovelacePortion, NetworkMagic (..), TxFeePolicy (..), - TxSizeLinear (..), addressDetailedF, addressF, addressHash, checkVerKeyAddress, - decodeAddressBase58, lovelacePortionToRational, mkAttributes, mkKnownLovelace, - rationalToLovelacePortion) -import Cardano.Chain.Delegation (ACertificate (..), Certificate, isValid, signCertificate) -import Cardano.Chain.Genesis (Config (..), FakeAvvmOptions (..), GeneratedSecrets (..), - GenesisAvvmBalances (..), GenesisData (..), GenesisDataError (..), - GenesisDataGenerationError (..), GenesisDelegation (..), GenesisDelegationError, - GenesisHash (..), GenesisInitializer (..), GenesisSpec (..), PoorSecret (..), - TestnetBalanceOptions (..), generateGenesisData, mkGenesisDelegation, - mkGenesisSpec, readGenesisData) -import Cardano.Chain.Slotting (EpochNumber (..), SlotNumber (..)) -import Cardano.Chain.Update (ApplicationName (..), InstallerHash (..), NumSoftwareVersion, - Proposal, ProtocolParameters (..), ProtocolVersion (..), SoftforkRule (..), - SoftwareVersion (..), SystemTag (..), Vote, checkApplicationName, checkSystemTag) -import Cardano.Chain.UTxO (ATxAux (..), CompactTxIn, CompactTxOut, Tx (..), TxIn (..), - TxOut (..), UTxO (..), defaultUTxOConfiguration, fromCompactTxIn, - fromCompactTxOut, genesisUtxo) +import Cardano.Api hiding + ( Address + , Certificate + , Lovelace + , NetworkMagic + , Tx (..) + , TxIn + , TxOut + , UTxO (..) + ) +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.NetworkId hiding (NetworkMagic) +import Cardano.Api.Internal.SerialiseLedgerCddl +import Cardano.Api.Internal.SpecialByron +import Cardano.Api.Internal.Tx.Body hiding (TxIn, TxOut) +import Cardano.Api.Internal.Tx.Sign hiding (ATxAux (..), Tx (..)) +import Cardano.Api.Internal.Value hiding (Lovelace) + +import Cardano.Chain.Block (decCBORABlockOrBoundary) +import Cardano.Chain.Common + ( AddrAttributes (..) + , Address + , BlockCount (..) + , KeyHash + , Lovelace + , LovelacePortion + , NetworkMagic (..) + , TxFeePolicy (..) + , TxSizeLinear (..) + , addressDetailedF + , addressF + , addressHash + , checkVerKeyAddress + , decodeAddressBase58 + , lovelacePortionToRational + , mkAttributes + , mkKnownLovelace + , rationalToLovelacePortion + ) +import Cardano.Chain.Delegation (ACertificate (..), Certificate, isValid, signCertificate) +import Cardano.Chain.Genesis + ( Config (..) + , FakeAvvmOptions (..) + , GeneratedSecrets (..) + , GenesisAvvmBalances (..) + , GenesisData (..) + , GenesisDataError (..) + , GenesisDataGenerationError (..) + , GenesisDelegation (..) + , GenesisDelegationError + , GenesisHash (..) + , GenesisInitializer (..) + , GenesisSpec (..) + , PoorSecret (..) + , TestnetBalanceOptions (..) + , generateGenesisData + , mkGenesisDelegation + , mkGenesisSpec + , readGenesisData + ) +import Cardano.Chain.Slotting (EpochNumber (..), SlotNumber (..)) +import Cardano.Chain.UTxO + ( ATxAux (..) + , CompactTxIn + , CompactTxOut + , Tx (..) + , TxIn (..) + , TxOut (..) + , UTxO (..) + , defaultUTxOConfiguration + , fromCompactTxIn + , fromCompactTxOut + , genesisUtxo + ) +import Cardano.Chain.Update + ( ApplicationName (..) + , InstallerHash (..) + , NumSoftwareVersion + , Proposal + , ProtocolParameters (..) + , ProtocolVersion (..) + , SoftforkRule (..) + , SoftwareVersion (..) + , SystemTag (..) + , Vote + , checkApplicationName + , checkSystemTag + ) diff --git a/cardano-api/src/Cardano/Api/ChainSync/Client.hs b/cardano-api/src/Cardano/Api/ChainSync/Client.hs index 30fca163db..86b133f2d1 100644 --- a/cardano-api/src/Cardano/Api/ChainSync/Client.hs +++ b/cardano-api/src/Cardano/Api/ChainSync/Client.hs @@ -15,5 +15,5 @@ module Cardano.Api.ChainSync.Client ) where -import Ouroboros.Network.NodeToClient -import Ouroboros.Network.Protocol.ChainSync.Client +import Ouroboros.Network.NodeToClient +import Ouroboros.Network.Protocol.ChainSync.Client diff --git a/cardano-api/src/Cardano/Api/ChainSync/ClientPipelined.hs b/cardano-api/src/Cardano/Api/ChainSync/ClientPipelined.hs index e794708a29..5d5ff2c8bf 100644 --- a/cardano-api/src/Cardano/Api/ChainSync/ClientPipelined.hs +++ b/cardano-api/src/Cardano/Api/ChainSync/ClientPipelined.hs @@ -31,7 +31,7 @@ module Cardano.Api.ChainSync.ClientPipelined ) where -import Ouroboros.Network.Protocol.ChainSync.ClientPipelined -import Ouroboros.Network.Protocol.ChainSync.PipelineDecision +import Ouroboros.Network.Protocol.ChainSync.ClientPipelined +import Ouroboros.Network.Protocol.ChainSync.PipelineDecision -import Network.TypedProtocol.Core (N (..), Nat (..), natToInt) +import Network.TypedProtocol.Core (N (..), Nat (..), natToInt) diff --git a/cardano-api/src/Cardano/Api/Compatible.hs b/cardano-api/src/Cardano/Api/Compatible.hs index 340810a9bd..e80ccd4b99 100644 --- a/cardano-api/src/Cardano/Api/Compatible.hs +++ b/cardano-api/src/Cardano/Api/Compatible.hs @@ -3,4 +3,4 @@ module Cardano.Api.Compatible ) where -import Cardano.Api.Internal.Tx.Compatible +import Cardano.Api.Internal.Tx.Compatible diff --git a/cardano-api/src/Cardano/Api/Consensus.hs b/cardano-api/src/Cardano/Api/Consensus.hs index b98074d55b..3c17a6b14e 100644 --- a/cardano-api/src/Cardano/Api/Consensus.hs +++ b/cardano-api/src/Cardano/Api/Consensus.hs @@ -3,4 +3,4 @@ module Cardano.Api.Consensus ) where -import Cardano.Api.Internal.ReexposeConsensus +import Cardano.Api.Internal.ReexposeConsensus diff --git a/cardano-api/src/Cardano/Api/Crypto/Ed25519Bip32.hs b/cardano-api/src/Cardano/Api/Crypto/Ed25519Bip32.hs index e7e2fb6555..4fa28ca0cd 100644 --- a/cardano-api/src/Cardano/Api/Crypto/Ed25519Bip32.hs +++ b/cardano-api/src/Cardano/Api/Crypto/Ed25519Bip32.hs @@ -18,21 +18,21 @@ module Cardano.Api.Crypto.Ed25519Bip32 ) where -import Cardano.Binary (FromCBOR (..), ToCBOR (..)) -import Cardano.Crypto.DSIGN.Class -import Cardano.Crypto.Seed -import Cardano.Crypto.Util (SignableRepresentation (..)) -import qualified Cardano.Crypto.Wallet as CC - -import Control.DeepSeq (NFData) -import Data.ByteArray as BA (ByteArrayAccess, ScrubbedBytes, convert) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import GHC.Generics (Generic) - -import qualified Crypto.ECC.Edwards25519 as Ed25519 -import Crypto.Error (eitherCryptoError) -import NoThunks.Class (InspectHeap (..), NoThunks) +import Cardano.Binary (FromCBOR (..), ToCBOR (..)) +import Cardano.Crypto.DSIGN.Class +import Cardano.Crypto.Seed +import Cardano.Crypto.Util (SignableRepresentation (..)) +import Cardano.Crypto.Wallet qualified as CC + +import Control.DeepSeq (NFData) +import Data.ByteArray as BA (ByteArrayAccess, ScrubbedBytes, convert) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import GHC.Generics (Generic) + +import Crypto.ECC.Edwards25519 qualified as Ed25519 +import Crypto.Error (eitherCryptoError) +import NoThunks.Class (InspectHeap (..), NoThunks) data Ed25519Bip32DSIGN diff --git a/cardano-api/src/Cardano/Api/Experimental.hs b/cardano-api/src/Cardano/Api/Experimental.hs index da15ec4833..f7d482c9ca 100644 --- a/cardano-api/src/Cardano/Api/Experimental.hs +++ b/cardano-api/src/Cardano/Api/Experimental.hs @@ -27,6 +27,6 @@ module Cardano.Api.Experimental ) where -import Cardano.Api.Internal.Experimental.Eras -import Cardano.Api.Internal.Experimental.Tx -import Cardano.Api.Internal.Fees (evaluateTransactionExecutionUnitsShelley) +import Cardano.Api.Internal.Experimental.Eras +import Cardano.Api.Internal.Experimental.Tx +import Cardano.Api.Internal.Fees (evaluateTransactionExecutionUnitsShelley) diff --git a/cardano-api/src/Cardano/Api/Internal/Address.hs b/cardano-api/src/Cardano/Api/Internal/Address.hs index eea300b1a3..b22fab4c9d 100644 --- a/cardano-api/src/Cardano/Api/Internal/Address.hs +++ b/cardano-api/src/Cardano/Api/Internal/Address.hs @@ -90,39 +90,39 @@ module Cardano.Api.Internal.Address ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.Utils - -import qualified Cardano.Chain.Common as Byron -import qualified Cardano.Ledger.Address as Shelley -import qualified Cardano.Ledger.BaseTypes as Shelley -import qualified Cardano.Ledger.Credential as Shelley -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Plutus.TxInfo as Plutus -import qualified PlutusLedgerApi.V1 as PlutusAPI - -import Control.Applicative ((<|>)) -import Control.DeepSeq (NFData (..), deepseq) -import Data.Aeson (FromJSON (..), ToJSON (..), withText, (.=)) -import qualified Data.Aeson as Aeson -import Data.Bifunctor (first) -import qualified Data.ByteString.Base58 as Base58 -import Data.Char (isAsciiLower, isAsciiUpper, isDigit) -import Data.Either.Combinators (rightToMaybe) -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import qualified Text.Parsec as Parsec -import qualified Text.Parsec.String as Parsec +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.Utils + +import Cardano.Chain.Common qualified as Byron +import Cardano.Ledger.Address qualified as Shelley +import Cardano.Ledger.BaseTypes qualified as Shelley +import Cardano.Ledger.Credential qualified as Shelley +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Plutus.TxInfo qualified as Plutus +import PlutusLedgerApi.V1 qualified as PlutusAPI + +import Control.Applicative ((<|>)) +import Control.DeepSeq (NFData (..), deepseq) +import Data.Aeson (FromJSON (..), ToJSON (..), withText, (.=)) +import Data.Aeson qualified as Aeson +import Data.Bifunctor (first) +import Data.ByteString.Base58 qualified as Base58 +import Data.Char (isAsciiLower, isAsciiUpper, isDigit) +import Data.Either.Combinators (rightToMaybe) +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Text.Parsec qualified as Parsec +import Text.Parsec.String qualified as Parsec -- ---------------------------------------------------------------------------- -- Address Serialisation diff --git a/cardano-api/src/Cardano/Api/Internal/Anchor.hs b/cardano-api/src/Cardano/Api/Internal/Anchor.hs index ffc6e8eebc..793a3a74f6 100644 --- a/cardano-api/src/Cardano/Api/Internal/Anchor.hs +++ b/cardano-api/src/Cardano/Api/Internal/Anchor.hs @@ -4,9 +4,9 @@ module Cardano.Api.Internal.Anchor ) where -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Crypto as Crypto -import qualified Cardano.Ledger.SafeHash as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Crypto qualified as Crypto +import Cardano.Ledger.SafeHash qualified as L -- | The URL to build the anchor to pass to DRep registration certificate newtype AnchorUrl = AnchorUrl diff --git a/cardano-api/src/Cardano/Api/Internal/Block.hs b/cardano-api/src/Cardano/Api/Internal/Block.hs index 9781213fe6..b7719356ee 100644 --- a/cardano-api/src/Cardano/Api/Internal/Block.hs +++ b/cardano-api/src/Cardano/Api/Internal/Block.hs @@ -51,38 +51,38 @@ module Cardano.Api.Internal.Block ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.Tx.Sign - -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Crypto.Hashing -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Block as Ledger -import qualified Cardano.Ledger.Core as Ledger -import Cardano.Slotting.Block (BlockNo) -import Cardano.Slotting.Slot (EpochNo, SlotNo, WithOrigin (..)) -import qualified Ouroboros.Consensus.Block as Consensus -import qualified Ouroboros.Consensus.Byron.Ledger as Consensus -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import qualified Ouroboros.Consensus.HardFork.Combinator as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus -import qualified Ouroboros.Consensus.Shelley.Protocol.Abstract as Consensus -import qualified Ouroboros.Network.Block as Consensus - -import Data.Aeson (FromJSON (..), ToJSON (..), Value (..), object, withObject, (.:), (.=)) -import qualified Data.Aeson as Aeson -import qualified Data.ByteString as BS -import qualified Data.ByteString.Short as SBS -import Data.Foldable (Foldable (toList)) -import Data.String (IsString) -import Data.Text (Text) +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.Tx.Sign + +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Crypto.Hashing qualified +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Block qualified as Ledger +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Slotting.Block (BlockNo) +import Cardano.Slotting.Slot (EpochNo, SlotNo, WithOrigin (..)) +import Ouroboros.Consensus.Block qualified as Consensus +import Ouroboros.Consensus.Byron.Ledger qualified as Consensus +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus +import Ouroboros.Consensus.Shelley.Protocol.Abstract qualified as Consensus +import Ouroboros.Network.Block qualified as Consensus + +import Data.Aeson (FromJSON (..), ToJSON (..), Value (..), object, withObject, (.:), (.=)) +import Data.Aeson qualified as Aeson +import Data.ByteString qualified as BS +import Data.ByteString.Short qualified as SBS +import Data.Foldable (Foldable (toList)) +import Data.String (IsString) +import Data.Text (Text) {- HLINT ignore "Use lambda" -} {- HLINT ignore "Use lambda-case" -} diff --git a/cardano-api/src/Cardano/Api/Internal/Certificate.hs b/cardano-api/src/Cardano/Api/Internal/Certificate.hs index 9fc4ae9066..80895765d7 100644 --- a/cardano-api/src/Cardano/Api/Internal/Certificate.hs +++ b/cardano-api/src/Cardano/Api/Internal/Certificate.hs @@ -77,43 +77,43 @@ module Cardano.Api.Internal.Certificate ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.DRepMetadata -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eon.ShelleyToBabbageEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Error (Error (..)) -import Cardano.Api.Internal.Governance.Actions.VotingProcedure -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.Pretty (Doc) -import Cardano.Api.Internal.ReexposeLedger (EraCrypto, StandardCrypto) -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.StakePoolMetadata -import Cardano.Api.Internal.Utils (noInlineMaybeToStrictMaybe) -import Cardano.Api.Internal.Value - -import Cardano.Ledger.BaseTypes (strictMaybe) -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Keys as Ledger - -import Control.Monad.Except (MonadError (..)) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import Data.IP (IPv4, IPv6) -import Data.Maybe -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Typeable -import GHC.Exts (IsList (..), fromString) -import Network.Socket (PortNumber) +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.DRepMetadata +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eon.ShelleyToBabbageEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Error (Error (..)) +import Cardano.Api.Internal.Governance.Actions.VotingProcedure +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.Pretty (Doc) +import Cardano.Api.Internal.ReexposeLedger (EraCrypto, StandardCrypto) +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.StakePoolMetadata +import Cardano.Api.Internal.Utils (noInlineMaybeToStrictMaybe) +import Cardano.Api.Internal.Value + +import Cardano.Ledger.BaseTypes (strictMaybe) +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Keys qualified as Ledger + +import Control.Monad.Except (MonadError (..)) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.IP (IPv4, IPv6) +import Data.Maybe +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Typeable +import GHC.Exts (IsList (..), fromString) +import Network.Socket (PortNumber) -- ---------------------------------------------------------------------------- -- Certificates embedded in transactions diff --git a/cardano-api/src/Cardano/Api/Internal/Convenience/Construction.hs b/cardano-api/src/Cardano/Api/Internal/Convenience/Construction.hs index 6d408ce464..f7232a33dc 100644 --- a/cardano-api/src/Cardano/Api/Internal/Convenience/Construction.hs +++ b/cardano-api/src/Cardano/Api/Internal/Convenience/Construction.hs @@ -14,28 +14,28 @@ module Cardano.Api.Internal.Convenience.Construction ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Fees -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.Tx.UTxO (UTxO (..)) -import Cardano.Api.Internal.Utils +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Fees +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.Tx.UTxO (UTxO (..)) +import Cardano.Api.Internal.Utils -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Credential as L -import qualified Cardano.Ledger.Keys as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Credential qualified as L +import Cardano.Ledger.Keys qualified as L -import qualified Data.List as List -import qualified Data.Map.Strict as Map -import Data.Set (Set) -import Data.Text (Text) -import qualified Data.Text as Text -import GHC.Exts (IsList (..)) +import Data.List qualified as List +import Data.Map.Strict qualified as Map +import Data.Set (Set) +import Data.Text (Text) +import Data.Text qualified as Text +import GHC.Exts (IsList (..)) -- | Construct a balanced transaction. -- See Cardano.Api.Internal.Convenience.Query.queryStateForBalancedTx for a diff --git a/cardano-api/src/Cardano/Api/Internal/Convenience/Query.hs b/cardano-api/src/Cardano/Api/Internal/Convenience/Query.hs index 9d4230d7c9..d30e03d5c8 100644 --- a/cardano-api/src/Cardano/Api/Internal/Convenience/Query.hs +++ b/cardano-api/src/Cardano/Api/Internal/Convenience/Query.hs @@ -20,43 +20,43 @@ module Cardano.Api.Internal.Convenience.Query ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Feature (Featured (..)) -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.IPC -import Cardano.Api.Internal.IPC.Monad -import Cardano.Api.Internal.Monad.Error -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query -import Cardano.Api.Internal.Query.Expr -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.UTxO -import Cardano.Api.Internal.Utils - -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.CertState (DRepState (..)) -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Credential as L -import qualified Cardano.Ledger.Keys as L -import qualified Cardano.Ledger.Shelley.LedgerState as L -import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (EraMismatch (..)) -import Ouroboros.Network.Protocol.LocalStateQuery.Type (Target (..)) - -import Control.Exception.Safe (SomeException, displayException) -import Control.Monad -import Data.Bifunctor (first) -import Data.Function ((&)) -import Data.Map (Map) -import qualified Data.Map as Map -import Data.Maybe (mapMaybe) -import Data.Set (Set) -import Data.Text (Text) -import GHC.Exts (IsList (..), IsString (..)) +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Feature (Featured (..)) +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.IPC +import Cardano.Api.Internal.IPC.Monad +import Cardano.Api.Internal.Monad.Error +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query +import Cardano.Api.Internal.Query.Expr +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.UTxO +import Cardano.Api.Internal.Utils + +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.CertState (DRepState (..)) +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Credential qualified as L +import Cardano.Ledger.Keys qualified as L +import Cardano.Ledger.Shelley.LedgerState qualified as L +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (EraMismatch (..)) +import Ouroboros.Network.Protocol.LocalStateQuery.Type (Target (..)) + +import Control.Exception.Safe (SomeException, displayException) +import Control.Monad +import Data.Bifunctor (first) +import Data.Function ((&)) +import Data.Map (Map) +import Data.Map qualified as Map +import Data.Maybe (mapMaybe) +import Data.Set (Set) +import Data.Text (Text) +import GHC.Exts (IsList (..), IsString (..)) data QueryConvenienceError = AcqFailure AcquiringFailure diff --git a/cardano-api/src/Cardano/Api/Internal/DRepMetadata.hs b/cardano-api/src/Cardano/Api/Internal/DRepMetadata.hs index a0b66eec33..c0c4cb171f 100644 --- a/cardano-api/src/Cardano/Api/Internal/DRepMetadata.hs +++ b/cardano-api/src/Cardano/Api/Internal/DRepMetadata.hs @@ -14,20 +14,20 @@ module Cardano.Api.Internal.DRepMetadata ) where -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseRaw -import qualified Cardano.Crypto.Hash.Class as Crypto -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Shelley +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Shelley -import Data.ByteString (ByteString) -import Data.Either.Combinators (maybeToRight) +import Data.ByteString (ByteString) +import Data.Either.Combinators (maybeToRight) -- ---------------------------------------------------------------------------- -- DRep metadata diff --git a/cardano-api/src/Cardano/Api/Internal/DeserialiseAnyOf.hs b/cardano-api/src/Cardano/Api/Internal/DeserialiseAnyOf.hs index 9acc78d56c..9a410b23b6 100644 --- a/cardano-api/src/Cardano/Api/Internal/DeserialiseAnyOf.hs +++ b/cardano-api/src/Cardano/Api/Internal/DeserialiseAnyOf.hs @@ -21,31 +21,31 @@ module Cardano.Api.Internal.DeserialiseAnyOf ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope -import qualified Cardano.Chain.Common as Common -import qualified Cardano.Crypto.Signing as Crypto +import Cardano.Chain.Common qualified as Common +import Cardano.Crypto.Signing qualified as Crypto -import qualified Data.Aeson as Aeson -import Data.Bifunctor (first) -import Data.ByteString (ByteString) -import qualified Data.ByteString.Char8 as BSC -import Data.Char (toLower) -import Data.Data (Data) -import Data.List.NonEmpty (NonEmpty) -import Data.Text (Text) -import qualified Data.Text.Encoding as Text -import Formatting (build, sformat, (%)) -import GHC.Exts (IsList (..)) -import Prettyprinter +import Data.Aeson qualified as Aeson +import Data.Bifunctor (first) +import Data.ByteString (ByteString) +import Data.ByteString.Char8 qualified as BSC +import Data.Char (toLower) +import Data.Data (Data) +import Data.List.NonEmpty (NonEmpty) +import Data.Text (Text) +import Data.Text.Encoding qualified as Text +import Formatting (build, sformat, (%)) +import GHC.Exts (IsList (..)) +import Prettyprinter ------------------------------------------------------------------------------ -- Formatted/encoded input deserialisation diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/AllegraEraOnwards.hs b/cardano-api/src/Cardano/Api/Internal/Eon/AllegraEraOnwards.hs index 6ace6f9efc..afa28070f9 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/AllegraEraOnwards.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/AllegraEraOnwards.hs @@ -18,26 +18,26 @@ module Cardano.Api.Internal.Eon.AllegraEraOnwards ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types - -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus - -import Data.Aeson -import Data.Typeable (Typeable) +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types + +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus + +import Data.Aeson +import Data.Typeable (Typeable) data AllegraEraOnwards era where AllegraEraOnwardsAllegra :: AllegraEraOnwards AllegraEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/AlonzoEraOnwards.hs b/cardano-api/src/Cardano/Api/Internal/Eon/AlonzoEraOnwards.hs index a462b8b673..c936271a90 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/AlonzoEraOnwards.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/AlonzoEraOnwards.hs @@ -18,34 +18,34 @@ module Cardano.Api.Internal.Eon.AlonzoEraOnwards ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types - -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Alonzo.Plutus.Context as Plutus -import qualified Cardano.Ledger.Alonzo.Scripts as L -import qualified Cardano.Ledger.Alonzo.Tx as L -import qualified Cardano.Ledger.Alonzo.TxWits as L -import qualified Cardano.Ledger.Alonzo.UTxO as L -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.Mary.Value as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.UTxO as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus - -import Data.Aeson -import Data.Typeable (Typeable) +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types + +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Alonzo.Plutus.Context qualified as Plutus +import Cardano.Ledger.Alonzo.Scripts qualified as L +import Cardano.Ledger.Alonzo.Tx qualified as L +import Cardano.Ledger.Alonzo.TxWits qualified as L +import Cardano.Ledger.Alonzo.UTxO qualified as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.Mary.Value qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.UTxO qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus + +import Data.Aeson +import Data.Typeable (Typeable) data AlonzoEraOnwards era where AlonzoEraOnwardsAlonzo :: AlonzoEraOnwards AlonzoEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/BabbageEraOnwards.hs b/cardano-api/src/Cardano/Api/Internal/Eon/BabbageEraOnwards.hs index 01ec6efa9a..a54e104fe3 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/BabbageEraOnwards.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/BabbageEraOnwards.hs @@ -19,33 +19,33 @@ module Cardano.Api.Internal.Eon.BabbageEraOnwards ) where -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types - -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Alonzo.Scripts as L -import qualified Cardano.Ledger.Alonzo.UTxO as L -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Babbage.TxOut as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.Mary.Value as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.UTxO as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus - -import Data.Aeson -import Data.Typeable (Typeable) +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types + +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Alonzo.Scripts qualified as L +import Cardano.Ledger.Alonzo.UTxO qualified as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Babbage.TxOut qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.Mary.Value qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.UTxO qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus + +import Data.Aeson +import Data.Typeable (Typeable) data BabbageEraOnwards era where BabbageEraOnwardsBabbage :: BabbageEraOnwards BabbageEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ByronToAlonzoEra.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ByronToAlonzoEra.hs index 6b2a445c2f..96fd93f829 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ByronToAlonzoEra.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ByronToAlonzoEra.hs @@ -15,10 +15,10 @@ module Cardano.Api.Internal.Eon.ByronToAlonzoEra ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eras.Core -import Data.Typeable (Typeable) +import Data.Typeable (Typeable) data ByronToAlonzoEra era where ByronToAlonzoEraByron :: ByronToAlonzoEra ByronEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/Convert.hs b/cardano-api/src/Cardano/Api/Internal/Eon/Convert.hs index f471b6df33..d503ebc276 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/Convert.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/Convert.hs @@ -7,7 +7,7 @@ module Cardano.Api.Internal.Eon.Convert ) where -import Data.Kind (Type) +import Data.Kind (Type) -- | The Convert class is aimed at exposing a single interface that lets us -- convert between eons. However this is generalizable to any injective diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ConwayEraOnwards.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ConwayEraOnwards.hs index 1b43769ae6..1ab79054a1 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ConwayEraOnwards.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ConwayEraOnwards.hs @@ -19,34 +19,34 @@ module Cardano.Api.Internal.Eon.ConwayEraOnwards ) where -import Cardano.Api.Internal.Eon.AllegraEraOnwards (AllegraEraOnwards (..)) -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types - -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Alonzo.Scripts as L -import qualified Cardano.Ledger.Alonzo.UTxO as L -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Conway.Core as L -import qualified Cardano.Ledger.Conway.Governance as L -import qualified Cardano.Ledger.Conway.TxCert as L -import qualified Cardano.Ledger.Mary.Value as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.UTxO as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus - -import Data.Aeson -import Data.Typeable (Typeable) +import Cardano.Api.Internal.Eon.AllegraEraOnwards (AllegraEraOnwards (..)) +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types + +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Alonzo.Scripts qualified as L +import Cardano.Ledger.Alonzo.UTxO qualified as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Conway.Core qualified as L +import Cardano.Ledger.Conway.Governance qualified as L +import Cardano.Ledger.Conway.TxCert qualified as L +import Cardano.Ledger.Mary.Value qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.UTxO qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus + +import Data.Aeson +import Data.Typeable (Typeable) data ConwayEraOnwards era where ConwayEraOnwardsConway :: ConwayEraOnwards ConwayEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/MaryEraOnwards.hs b/cardano-api/src/Cardano/Api/Internal/Eon/MaryEraOnwards.hs index d2152fae59..daa93b0757 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/MaryEraOnwards.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/MaryEraOnwards.hs @@ -18,29 +18,29 @@ module Cardano.Api.Internal.Eon.MaryEraOnwards ) where -import Cardano.Api.Internal.Eon.AllegraEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types - -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.Mary.Value as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.UTxO as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus - -import Data.Aeson -import Data.Typeable (Typeable) +import Cardano.Api.Internal.Eon.AllegraEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types + +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.Mary.Value qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.UTxO qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus + +import Data.Aeson +import Data.Typeable (Typeable) data MaryEraOnwards era where MaryEraOnwardsMary :: MaryEraOnwards MaryEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyBasedEra.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyBasedEra.hs index fc45243dc3..df92542f65 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyBasedEra.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyBasedEra.hs @@ -36,34 +36,40 @@ module Cardano.Api.Internal.Eon.ShelleyBasedEra ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Internal.Pretty (Pretty) - -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import Cardano.Ledger.Binary (FromCBOR) -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.Rules as L -import qualified Cardano.Ledger.UTxO as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import Ouroboros.Consensus.Shelley.Eras as Consensus (StandardAllegra, StandardAlonzo, - StandardBabbage, StandardConway, StandardMary, StandardShelley) -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus - -import Control.DeepSeq -import Data.Aeson (FromJSON (..), ToJSON, toJSON, withText) -import qualified Data.Text as Text -import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) -import Data.Typeable (Typeable) -import Text.Pretty (Pretty (..)) +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Pretty (Pretty) + +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Binary (FromCBOR) +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.Rules qualified as L +import Cardano.Ledger.UTxO qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Eras as Consensus + ( StandardAllegra + , StandardAlonzo + , StandardBabbage + , StandardConway + , StandardMary + , StandardShelley + ) +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus + +import Control.DeepSeq +import Data.Aeson (FromJSON (..), ToJSON, toJSON, withText) +import Data.Text qualified as Text +import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) +import Data.Typeable (Typeable) +import Text.Pretty (Pretty (..)) -- | Determine the value to use for a feature in a given 'ShelleyBasedEra'. inEonForShelleyBasedEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyEraOnly.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyEraOnly.hs index 4a9e5d33f7..942378bed9 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyEraOnly.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyEraOnly.hs @@ -17,28 +17,28 @@ module Cardano.Api.Internal.Eon.ShelleyEraOnly ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.TxCert as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.TxCert qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus -import Data.Aeson -import Data.Typeable (Typeable) +import Data.Aeson +import Data.Typeable (Typeable) data ShelleyEraOnly era where ShelleyEraOnlyShelley :: ShelleyEraOnly ShelleyEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAllegraEra.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAllegraEra.hs index c6218f9f2e..71d1ab6703 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAllegraEra.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAllegraEra.hs @@ -17,29 +17,29 @@ module Cardano.Api.Internal.Eon.ShelleyToAllegraEra ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.TxCert as L -import qualified Cardano.Ledger.UTxO as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.TxCert qualified as L +import Cardano.Ledger.UTxO qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus -import Data.Aeson -import Data.Typeable (Typeable) +import Data.Aeson +import Data.Typeable (Typeable) data ShelleyToAllegraEra era where ShelleyToAllegraEraShelley :: ShelleyToAllegraEra ShelleyEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAlonzoEra.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAlonzoEra.hs index b650304905..a2ec10ae3b 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAlonzoEra.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToAlonzoEra.hs @@ -17,27 +17,27 @@ module Cardano.Api.Internal.Eon.ShelleyToAlonzoEra ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.TxCert as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.TxCert qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus -import Data.Aeson -import Data.Typeable (Typeable) +import Data.Aeson +import Data.Typeable (Typeable) data ShelleyToAlonzoEra era where ShelleyToAlonzoEraShelley :: ShelleyToAlonzoEra ShelleyEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToBabbageEra.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToBabbageEra.hs index 157d8fed14..a113d4f6de 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToBabbageEra.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToBabbageEra.hs @@ -17,27 +17,27 @@ module Cardano.Api.Internal.Eon.ShelleyToBabbageEra ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.TxCert as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.TxCert qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus -import Data.Aeson -import Data.Typeable (Typeable) +import Data.Aeson +import Data.Typeable (Typeable) data ShelleyToBabbageEra era where ShelleyToBabbageEraShelley :: ShelleyToBabbageEra ShelleyEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToMaryEra.hs b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToMaryEra.hs index 135bd61399..562c9c0f70 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToMaryEra.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eon/ShelleyToMaryEra.hs @@ -17,27 +17,27 @@ module Cardano.Api.Internal.Eon.ShelleyToMaryEra ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Query.Types +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Query.Types -import Cardano.Binary -import qualified Cardano.Crypto.Hash.Blake2b as Blake2b -import qualified Cardano.Crypto.Hash.Class as C -import qualified Cardano.Crypto.VRF as C -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.Core as L -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.TxCert as L -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus +import Cardano.Binary +import Cardano.Crypto.Hash.Blake2b qualified as Blake2b +import Cardano.Crypto.Hash.Class qualified as C +import Cardano.Crypto.VRF qualified as C +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.TxCert qualified as L +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus -import Data.Aeson -import Data.Typeable (Typeable) +import Data.Aeson +import Data.Typeable (Typeable) data ShelleyToMaryEra era where ShelleyToMaryEraShelley :: ShelleyToMaryEra ShelleyEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eras.hs b/cardano-api/src/Cardano/Api/Internal/Eras.hs index 2ce5c2b462..c349c2f615 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eras.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eras.hs @@ -50,6 +50,6 @@ module Cardano.Api.Internal.Eras ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Eras.Core diff --git a/cardano-api/src/Cardano/Api/Internal/Eras/Case.hs b/cardano-api/src/Cardano/Api/Internal/Eras/Case.hs index 2e8aefe064..a9126ef890 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eras/Case.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eras/Case.hs @@ -21,19 +21,19 @@ module Cardano.Api.Internal.Eras.Case ) where -import Cardano.Api.Internal.Eon.AllegraEraOnwards -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.ByronToAlonzoEra -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eon.ShelleyEraOnly -import Cardano.Api.Internal.Eon.ShelleyToAllegraEra -import Cardano.Api.Internal.Eon.ShelleyToAlonzoEra -import Cardano.Api.Internal.Eon.ShelleyToBabbageEra -import Cardano.Api.Internal.Eon.ShelleyToMaryEra -import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Eon.AllegraEraOnwards +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.ByronToAlonzoEra +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eon.ShelleyEraOnly +import Cardano.Api.Internal.Eon.ShelleyToAllegraEra +import Cardano.Api.Internal.Eon.ShelleyToAlonzoEra +import Cardano.Api.Internal.Eon.ShelleyToBabbageEra +import Cardano.Api.Internal.Eon.ShelleyToMaryEra +import Cardano.Api.Internal.Eras.Core -- | @caseByronOrShelleyBasedEra f g era@ returns @f@ in Byron and applies @g@ to Shelley-based eras. caseByronOrShelleyBasedEra diff --git a/cardano-api/src/Cardano/Api/Internal/Eras/Core.hs b/cardano-api/src/Cardano/Api/Internal/Eras/Core.hs index 2f03b5de6d..026c3ee371 100644 --- a/cardano-api/src/Cardano/Api/Internal/Eras/Core.hs +++ b/cardano-api/src/Cardano/Api/Internal/Eras/Core.hs @@ -49,19 +49,19 @@ module Cardano.Api.Internal.Eras.Core ) where -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Pretty - -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.BaseTypes (Inject (..)) - -import Data.Aeson (FromJSON (..), ToJSON, toJSON, withText) -import Data.Kind -import Data.Maybe (isJust) -import Data.String (IsString) -import qualified Data.Text as Text -import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) -import Data.Typeable (Typeable, showsTypeRep, typeOf) +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Pretty + +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes (Inject (..)) + +import Data.Aeson (FromJSON (..), ToJSON, toJSON, withText) +import Data.Kind +import Data.Maybe (isJust) +import Data.String (IsString) +import Data.Text qualified as Text +import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) +import Data.Typeable (Typeable, showsTypeRep, typeOf) -- ---------------------------------------------------------------------------- -- Eras diff --git a/cardano-api/src/Cardano/Api/Internal/Error.hs b/cardano-api/src/Cardano/Api/Internal/Error.hs index 590fd02e69..c26ff78196 100644 --- a/cardano-api/src/Cardano/Api/Internal/Error.hs +++ b/cardano-api/src/Cardano/Api/Internal/Error.hs @@ -15,15 +15,15 @@ module Cardano.Api.Internal.Error ) where -import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.Pretty -import Control.Exception (Exception (..), IOException, throwIO) -import Control.Monad.Except (throwError) -import Control.Monad.IO.Class (MonadIO) -import Control.Monad.Trans.Except (ExceptT) -import Control.Monad.Trans.Except.Extra (handleIOExceptT) -import System.Directory (doesFileExist) -import System.IO (Handle) +import Control.Exception (Exception (..), IOException, throwIO) +import Control.Monad.Except (throwError) +import Control.Monad.IO.Class (MonadIO) +import Control.Monad.Trans.Except (ExceptT) +import Control.Monad.Trans.Except.Extra (handleIOExceptT) +import System.Directory (doesFileExist) +import System.IO (Handle) class Error e where prettyError :: e -> Doc ann diff --git a/cardano-api/src/Cardano/Api/Internal/Experimental/Eras.hs b/cardano-api/src/Cardano/Api/Internal/Experimental/Eras.hs index 68d97813b9..5d2ba6f45b 100644 --- a/cardano-api/src/Cardano/Api/Internal/Experimental/Eras.hs +++ b/cardano-api/src/Cardano/Api/Internal/Experimental/Eras.hs @@ -32,33 +32,33 @@ module Cardano.Api.Internal.Experimental.Eras ) where -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEra (..), ShelleyLedgerEra) -import qualified Cardano.Api.Internal.Eras as Api -import Cardano.Api.Internal.Eras.Core (BabbageEra, ConwayEra, Eon (..)) -import qualified Cardano.Api.Internal.ReexposeLedger as L -import Cardano.Api.Internal.Via.ShowOf - -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Babbage as Ledger -import Cardano.Ledger.BaseTypes (Inject (..)) -import qualified Cardano.Ledger.Conway as Ledger -import qualified Cardano.Ledger.Core as Ledger -import Cardano.Ledger.Hashes -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.UTxO as L - -import Control.Monad.Error.Class -import Data.Aeson (FromJSON (..), ToJSON, withText) -import Data.Aeson.Types (ToJSON (..)) -import Data.Kind -import Data.Maybe (isJust) -import qualified Data.Text as Text -import Data.Type.Equality -import Data.Typeable -import GHC.Exts (IsString) -import Prettyprinter +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEra (..), ShelleyLedgerEra) +import Cardano.Api.Internal.Eras qualified as Api +import Cardano.Api.Internal.Eras.Core (BabbageEra, ConwayEra, Eon (..)) +import Cardano.Api.Internal.ReexposeLedger qualified as L +import Cardano.Api.Internal.Via.ShowOf + +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Babbage qualified as Ledger +import Cardano.Ledger.BaseTypes (Inject (..)) +import Cardano.Ledger.Conway qualified as Ledger +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Ledger.Hashes +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.UTxO qualified as L + +import Control.Monad.Error.Class +import Data.Aeson (FromJSON (..), ToJSON, withText) +import Data.Aeson.Types (ToJSON (..)) +import Data.Kind +import Data.Maybe (isJust) +import Data.Text qualified as Text +import Data.Type.Equality +import Data.Typeable +import GHC.Exts (IsString) +import Prettyprinter -- | Users typically interact with the latest features on the mainnet or experiment with features -- from the upcoming era. Hence, the protocol versions are limited to the current mainnet era diff --git a/cardano-api/src/Cardano/Api/Internal/Experimental/Tx.hs b/cardano-api/src/Cardano/Api/Internal/Experimental/Tx.hs index 6500d7342c..bc9b76aefb 100644 --- a/cardano-api/src/Cardano/Api/Internal/Experimental/Tx.hs +++ b/cardano-api/src/Cardano/Api/Internal/Experimental/Tx.hs @@ -20,31 +20,31 @@ module Cardano.Api.Internal.Experimental.Tx ) where -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core (ToCardanoEra (toCardanoEra), forEraInEon) -import Cardano.Api.Internal.Experimental.Eras -import Cardano.Api.Internal.Feature -import Cardano.Api.Internal.Pretty (docToString, pretty) -import Cardano.Api.Internal.ReexposeLedger (StrictMaybe (..), maybeToStrictMaybe) -import qualified Cardano.Api.Internal.ReexposeLedger as L -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign - -import qualified Cardano.Ledger.Alonzo.TxBody as L -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Babbage as Ledger -import qualified Cardano.Ledger.Conway as Ledger -import qualified Cardano.Ledger.Conway.TxBody as L -import qualified Cardano.Ledger.Core as Ledger -import Cardano.Ledger.Hashes -import qualified Cardano.Ledger.Keys as L -import qualified Cardano.Ledger.SafeHash as L - -import qualified Data.Set as Set -import GHC.Exts (IsList (..)) -import GHC.Stack -import Lens.Micro +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core (ToCardanoEra (toCardanoEra), forEraInEon) +import Cardano.Api.Internal.Experimental.Eras +import Cardano.Api.Internal.Feature +import Cardano.Api.Internal.Pretty (docToString, pretty) +import Cardano.Api.Internal.ReexposeLedger (StrictMaybe (..), maybeToStrictMaybe) +import Cardano.Api.Internal.ReexposeLedger qualified as L +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign + +import Cardano.Ledger.Alonzo.TxBody qualified as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Babbage qualified as Ledger +import Cardano.Ledger.Conway qualified as Ledger +import Cardano.Ledger.Conway.TxBody qualified as L +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Ledger.Hashes +import Cardano.Ledger.Keys qualified as L +import Cardano.Ledger.SafeHash qualified as L + +import Data.Set qualified as Set +import GHC.Exts (IsList (..)) +import GHC.Stack +import Lens.Micro -- | A transaction that can contain everything -- except key witnesses diff --git a/cardano-api/src/Cardano/Api/Internal/Feature.hs b/cardano-api/src/Cardano/Api/Internal/Feature.hs index 65ebaf3980..dad7884e5f 100644 --- a/cardano-api/src/Cardano/Api/Internal/Feature.hs +++ b/cardano-api/src/Cardano/Api/Internal/Feature.hs @@ -13,8 +13,8 @@ module Cardano.Api.Internal.Feature ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Core -- | A value only if the eon includes era data Featured eon era a where diff --git a/cardano-api/src/Cardano/Api/Internal/Fees.hs b/cardano-api/src/Cardano/Api/Internal/Fees.hs index d80a2bcb89..c05d84d406 100644 --- a/cardano-api/src/Cardano/Api/Internal/Fees.hs +++ b/cardano-api/src/Cardano/Api/Internal/Fees.hs @@ -48,59 +48,59 @@ module Cardano.Api.Internal.Fees ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Feature -import Cardano.Api.Internal.Plutus -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.Tx.UTxO -import Cardano.Api.Internal.Value -import qualified Cardano.Api.Ledger.Lens as A - -import qualified Cardano.Ledger.Alonzo.Core as Ledger -import qualified Cardano.Ledger.Alonzo.Plutus.Context as Plutus -import qualified Cardano.Ledger.Alonzo.Scripts as Alonzo -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Conway.Governance as L -import qualified Cardano.Ledger.Core as L -import Cardano.Ledger.Credential as Ledger (Credential) -import qualified Cardano.Ledger.Crypto as Ledger -import qualified Cardano.Ledger.Keys as Ledger -import qualified Cardano.Ledger.Plutus.Language as Plutus -import qualified Cardano.Ledger.Val as L -import qualified Ouroboros.Consensus.HardFork.History as Consensus - -import Control.Monad -import Data.Bifunctor (bimap, first, second) -import Data.ByteString.Short (ShortByteString) -import Data.Function ((&)) -import qualified Data.List as List -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Maybe -import qualified Data.OSet.Strict as OSet -import Data.Ratio -import Data.Set (Set) -import qualified Data.Set as Set -import Data.Text (Text) -import GHC.Exts (IsList (..)) -import GHC.Stack -import Lens.Micro ((.~), (^.)) +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.Feature +import Cardano.Api.Internal.Plutus +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.Tx.UTxO +import Cardano.Api.Internal.Value +import Cardano.Api.Ledger.Lens qualified as A + +import Cardano.Ledger.Alonzo.Core qualified as Ledger +import Cardano.Ledger.Alonzo.Plutus.Context qualified as Plutus +import Cardano.Ledger.Alonzo.Scripts qualified as Alonzo +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Conway.Governance qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.Credential as Ledger (Credential) +import Cardano.Ledger.Crypto qualified as Ledger +import Cardano.Ledger.Keys qualified as Ledger +import Cardano.Ledger.Plutus.Language qualified as Plutus +import Cardano.Ledger.Val qualified as L +import Ouroboros.Consensus.HardFork.History qualified as Consensus + +import Control.Monad +import Data.Bifunctor (bimap, first, second) +import Data.ByteString.Short (ShortByteString) +import Data.Function ((&)) +import Data.List qualified as List +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Maybe +import Data.OSet.Strict qualified as OSet +import Data.Ratio +import Data.Set (Set) +import Data.Set qualified as Set +import Data.Text (Text) +import GHC.Exts (IsList (..)) +import GHC.Stack +import Lens.Micro ((.~), (^.)) -- | Type synonym for logs returned by the ledger's @evalTxExUnitsWithLogs@ function. -- for scripts in transactions. diff --git a/cardano-api/src/Cardano/Api/Internal/Genesis.hs b/cardano-api/src/Cardano/Api/Internal/Genesis.hs index 1076bb6100..a8886a7b84 100644 --- a/cardano-api/src/Cardano/Api/Internal/Genesis.hs +++ b/cardano-api/src/Cardano/Api/Internal/Genesis.hs @@ -34,60 +34,66 @@ module Cardano.Api.Internal.Genesis ) where -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.Monad.Error -import Cardano.Api.Internal.Utils (unsafeBoundedRational) - -import qualified Cardano.Chain.Genesis -import qualified Cardano.Crypto.Hash.Blake2b -import qualified Cardano.Crypto.Hash.Class -import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis (..)) -import Cardano.Ledger.Alonzo.Scripts (ExUnits (..), Prices (..)) -import Cardano.Ledger.Api (CoinPerWord (..)) -import Cardano.Ledger.BaseTypes as Ledger -import Cardano.Ledger.Coin (Coin (..)) -import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..)) -import Cardano.Ledger.Conway.PParams (DRepVotingThresholds (..), - PoolVotingThresholds (..), UpgradeConwayPParams (..)) -import Cardano.Ledger.Crypto (StandardCrypto) -import Cardano.Ledger.Plutus (Language (..)) -import qualified Cardano.Ledger.Plutus as L -import Cardano.Ledger.Plutus.CostModels (mkCostModelsLenient) -import Cardano.Ledger.Shelley.Core -import Cardano.Ledger.Shelley.Genesis (NominalDiffTimeMicro, ShelleyGenesis (..), - emptyGenesisStaking) -import qualified Cardano.Ledger.Shelley.Genesis as Ledger -import qualified Ouroboros.Consensus.Shelley.Eras as Shelley -import qualified PlutusLedgerApi.V2 as V2 - -import Control.Monad -import Control.Monad.Trans.Fail.String (errorFail) -import qualified Data.Aeson as A -import Data.ByteString (ByteString) -import qualified Data.ByteString.Lazy as LBS -import qualified Data.Default.Class as DefaultClass -import Data.Functor.Identity (Identity) -import Data.Int (Int64) -import Data.List (sortOn) -import qualified Data.ListMap as ListMap -import Data.Map (Map) -import qualified Data.Map.Strict as M -import Data.Maybe -import Data.Ratio -import qualified Data.Set as S -import Data.Text (Text) -import qualified Data.Time as Time -import Data.Typeable -import qualified Data.Vector as V -import GHC.Exts (IsList (..)) -import GHC.Stack (HasCallStack) -import Lens.Micro -import qualified Lens.Micro.Aeson as AL - -import Test.Cardano.Ledger.Core.Rational ((%!)) -import Test.Cardano.Ledger.Plutus (testingCostModelV3) +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.Monad.Error +import Cardano.Api.Internal.Utils (unsafeBoundedRational) + +import Cardano.Chain.Genesis qualified +import Cardano.Crypto.Hash.Blake2b qualified +import Cardano.Crypto.Hash.Class qualified +import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis (..)) +import Cardano.Ledger.Alonzo.Scripts (ExUnits (..), Prices (..)) +import Cardano.Ledger.Api (CoinPerWord (..)) +import Cardano.Ledger.BaseTypes as Ledger +import Cardano.Ledger.Coin (Coin (..)) +import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..)) +import Cardano.Ledger.Conway.PParams + ( DRepVotingThresholds (..) + , PoolVotingThresholds (..) + , UpgradeConwayPParams (..) + ) +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Plutus (Language (..)) +import Cardano.Ledger.Plutus qualified as L +import Cardano.Ledger.Plutus.CostModels (mkCostModelsLenient) +import Cardano.Ledger.Shelley.Core +import Cardano.Ledger.Shelley.Genesis + ( NominalDiffTimeMicro + , ShelleyGenesis (..) + , emptyGenesisStaking + ) +import Cardano.Ledger.Shelley.Genesis qualified as Ledger +import Ouroboros.Consensus.Shelley.Eras qualified as Shelley +import PlutusLedgerApi.V2 qualified as V2 + +import Control.Monad +import Control.Monad.Trans.Fail.String (errorFail) +import Data.Aeson qualified as A +import Data.ByteString (ByteString) +import Data.ByteString.Lazy qualified as LBS +import Data.Default.Class qualified as DefaultClass +import Data.Functor.Identity (Identity) +import Data.Int (Int64) +import Data.List (sortOn) +import Data.ListMap qualified as ListMap +import Data.Map (Map) +import Data.Map.Strict qualified as M +import Data.Maybe +import Data.Ratio +import Data.Set qualified as S +import Data.Text (Text) +import Data.Time qualified as Time +import Data.Typeable +import Data.Vector qualified as V +import GHC.Exts (IsList (..)) +import GHC.Stack (HasCallStack) +import Lens.Micro +import Lens.Micro.Aeson qualified as AL + +import Test.Cardano.Ledger.Core.Rational ((%!)) +import Test.Cardano.Ledger.Plutus (testingCostModelV3) data ShelleyConfig = ShelleyConfig { scConfig :: !(Ledger.ShelleyGenesis Shelley.StandardCrypto) diff --git a/cardano-api/src/Cardano/Api/Internal/GenesisParameters.hs b/cardano-api/src/Cardano/Api/Internal/GenesisParameters.hs index c05b6db236..502868f579 100644 --- a/cardano-api/src/Cardano/Api/Internal/GenesisParameters.hs +++ b/cardano-api/src/Cardano/Api/Internal/GenesisParameters.hs @@ -14,16 +14,16 @@ module Cardano.Api.Internal.GenesisParameters ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.NetworkId -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Shelley.Genesis as Shelley -import Cardano.Slotting.Slot (EpochSize (..)) +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Shelley.Genesis qualified as Shelley +import Cardano.Slotting.Slot (EpochSize (..)) -import Data.Time (NominalDiffTime, UTCTime) +import Data.Time (NominalDiffTime, UTCTime) -- ---------------------------------------------------------------------------- -- Genesis parameters diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Actions/ProposalProcedure.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Actions/ProposalProcedure.hs index 1d79fc1de1..e0c71da257 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Actions/ProposalProcedure.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Actions/ProposalProcedure.hs @@ -12,33 +12,33 @@ module Cardano.Api.Internal.Governance.Actions.ProposalProcedure where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.ProtocolParameters -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.TxIn - -import qualified Cardano.Binary as CBOR -import qualified Cardano.Ledger.Address as L -import Cardano.Ledger.BaseTypes -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Conway as Conway -import qualified Cardano.Ledger.Conway.Governance as Gov -import qualified Cardano.Ledger.Conway.Governance as Ledger -import Cardano.Ledger.Core (EraCrypto) -import qualified Cardano.Ledger.Core as Shelley -import qualified Cardano.Ledger.Credential as L -import Cardano.Ledger.Crypto (StandardCrypto) -import Cardano.Ledger.Keys (KeyRole (ColdCommitteeRole)) - -import Data.ByteString (ByteString) -import Data.Map.Strict (Map) -import Data.Maybe (fromMaybe) -import Data.Word -import GHC.Exts (IsList (..)) +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.TxIn + +import Cardano.Binary qualified as CBOR +import Cardano.Ledger.Address qualified as L +import Cardano.Ledger.BaseTypes +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Conway qualified as Conway +import Cardano.Ledger.Conway.Governance qualified as Gov +import Cardano.Ledger.Conway.Governance qualified as Ledger +import Cardano.Ledger.Core (EraCrypto) +import Cardano.Ledger.Core qualified as Shelley +import Cardano.Ledger.Credential qualified as L +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys (KeyRole (ColdCommitteeRole)) + +import Data.ByteString (ByteString) +import Data.Map.Strict (Map) +import Data.Maybe (fromMaybe) +import Data.Word +import GHC.Exts (IsList (..)) data AnyGovernanceAction = forall era. AnyGovernanceAction (Gov.GovAction era) diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Actions/VotingProcedure.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Actions/VotingProcedure.hs index 27d03d0b57..78ec8190c2 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Actions/VotingProcedure.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Actions/VotingProcedure.hs @@ -16,26 +16,26 @@ module Cardano.Api.Internal.Governance.Actions.VotingProcedure where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Governance.Actions.ProposalProcedure -import Cardano.Api.Internal.HasTypeProxy -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseTextEnvelope - -import qualified Cardano.Binary as CBOR -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.Core (EraCrypto) -import qualified Cardano.Ledger.Core as L - -import Control.Monad (foldM) -import qualified Data.Map as Map -import qualified Data.Set as Set -import Data.Text (Text) -import qualified Data.Text.Encoding as Text -import GHC.Generics +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Governance.Actions.ProposalProcedure +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseTextEnvelope + +import Cardano.Binary qualified as CBOR +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Core (EraCrypto) +import Cardano.Ledger.Core qualified as L + +import Control.Monad (foldM) +import Data.Map qualified as Map +import Data.Set qualified as Set +import Data.Text (Text) +import Data.Text.Encoding qualified as Text +import GHC.Generics newtype GovernanceActionId era = GovernanceActionId { unGovernanceActionId :: Ledger.GovActionId (EraCrypto (ShelleyLedgerEra era)) diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/DrepRegistration.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/DrepRegistration.hs index 4c692053c4..f3e593bb17 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/DrepRegistration.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/DrepRegistration.hs @@ -17,15 +17,19 @@ module Cardano.Api.Internal.Governance.Metadata.DrepRegistration ) where -import Cardano.Api.Internal.Governance.Metadata.Parsers (textWithMaxLength) -import Cardano.Api.Internal.Governance.Metadata.Validation (Authors, Body, - GovActionMetadata (..), HashAlgorithm) - -import Data.Aeson (FromJSON, withObject, (.:), (.:?)) -import qualified Data.Aeson as Aeson -import Data.Aeson.Types (Parser) -import Data.Text (Text) -import GHC.Generics (Generic) +import Cardano.Api.Internal.Governance.Metadata.Parsers (textWithMaxLength) +import Cardano.Api.Internal.Governance.Metadata.Validation + ( Authors + , Body + , GovActionMetadata (..) + , HashAlgorithm + ) + +import Data.Aeson (FromJSON, withObject, (.:), (.:?)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Types (Parser) +import Data.Text (Text) +import GHC.Generics (Generic) data CIP119 = DrepRegistrationMetadata diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/GovAction.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/GovAction.hs index 8ddcca95c7..a5aeb59697 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/GovAction.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/GovAction.hs @@ -18,15 +18,19 @@ module Cardano.Api.Internal.Governance.Metadata.GovAction ) where -import Cardano.Api.Internal.Governance.Metadata.Parsers (textWithMaxLength) -import Cardano.Api.Internal.Governance.Metadata.Validation (Authors, Body, - GovActionMetadata (..), HashAlgorithm) - -import Data.Aeson (FromJSON, withArray, withObject, withText, (.:), (.:?)) -import qualified Data.Aeson as Aeson -import Data.Aeson.Types (Parser, Value (..)) -import Data.Text (Text) -import GHC.Generics (Generic) +import Cardano.Api.Internal.Governance.Metadata.Parsers (textWithMaxLength) +import Cardano.Api.Internal.Governance.Metadata.Validation + ( Authors + , Body + , GovActionMetadata (..) + , HashAlgorithm + ) + +import Data.Aeson (FromJSON, withArray, withObject, withText, (.:), (.:?)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Types (Parser, Value (..)) +import Data.Text (Text) +import GHC.Generics (Generic) data CIP108 = BaseGovActionMetadata diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Parsers.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Parsers.hs index bc27454f55..dbbde4bff9 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Parsers.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Parsers.hs @@ -1,8 +1,8 @@ module Cardano.Api.Internal.Governance.Metadata.Parsers (textWithMaxLength) where -import Data.Aeson.Types (Parser, Value, parseJSON) -import Data.Text (Text) -import qualified Data.Text as T +import Data.Aeson.Types (Parser, Value, parseJSON) +import Data.Text (Text) +import Data.Text qualified as T -- | Parser for 'Text' that validates that the number of characters is -- under a given maximum. The 'String' parameter is meant to be the name diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Validation.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Validation.hs index b571ed22a6..2cbeb531cb 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Validation.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Metadata/Validation.hs @@ -4,9 +4,9 @@ module Cardano.Api.Internal.Governance.Metadata.Validation (GovActionMetadata (..), Authors, Body, HashAlgorithm, validateGovActionAnchorData) where -import Data.Aeson (FromJSON, eitherDecodeStrict) -import Data.ByteString (ByteString) -import Data.Either.Combinators (mapRight) +import Data.Aeson (FromJSON, eitherDecodeStrict) +import Data.ByteString (ByteString) +import Data.Either.Combinators (mapRight) data GovActionMetadata cip = GovActionMetadata diff --git a/cardano-api/src/Cardano/Api/Internal/Governance/Poll.hs b/cardano-api/src/Cardano/Api/Internal/Governance/Poll.hs index db3da70f01..f3b011cf2c 100644 --- a/cardano-api/src/Cardano/Api/Internal/Governance/Poll.hs +++ b/cardano-api/src/Cardano/Api/Internal/Governance/Poll.hs @@ -36,38 +36,38 @@ module Cardano.Api.Internal.Governance.Poll ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.TxMetadata -import Cardano.Api.Internal.Utils - -import Cardano.Binary (DecoderError (..)) -import Cardano.Crypto.Hash (hashFromBytes, hashToBytes, hashWith) -import qualified Cardano.Crypto.Hash as Hash -import Cardano.Ledger.Crypto (HASH, StandardCrypto) - -import Control.Arrow (left) -import Control.Monad (foldM, when) -import Data.Either.Combinators (maybeToRight) -import Data.Function ((&)) -import qualified Data.Map.Strict as Map -import Data.String (IsString (..)) -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Lazy as Text.Lazy -import qualified Data.Text.Lazy.Builder as Text.Builder -import Data.Word (Word64) -import Formatting (build, sformat) -import GHC.Exts (IsList (..)) +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.TxMetadata +import Cardano.Api.Internal.Utils + +import Cardano.Binary (DecoderError (..)) +import Cardano.Crypto.Hash (hashFromBytes, hashToBytes, hashWith) +import Cardano.Crypto.Hash qualified as Hash +import Cardano.Ledger.Crypto (HASH, StandardCrypto) + +import Control.Arrow (left) +import Control.Monad (foldM, when) +import Data.Either.Combinators (maybeToRight) +import Data.Function ((&)) +import Data.Map.Strict qualified as Map +import Data.String (IsString (..)) +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Lazy qualified as Text.Lazy +import Data.Text.Lazy.Builder qualified as Text.Builder +import Data.Word (Word64) +import Formatting (build, sformat) +import GHC.Exts (IsList (..)) -- | Associated metadata label as defined in CIP-0094 pollMetadataLabel :: Word64 diff --git a/cardano-api/src/Cardano/Api/Internal/HasTypeProxy.hs b/cardano-api/src/Cardano/Api/Internal/HasTypeProxy.hs index 043d924031..5126fbc9a5 100644 --- a/cardano-api/src/Cardano/Api/Internal/HasTypeProxy.hs +++ b/cardano-api/src/Cardano/Api/Internal/HasTypeProxy.hs @@ -9,9 +9,9 @@ module Cardano.Api.Internal.HasTypeProxy ) where -import Data.Kind (Constraint, Type) -import Data.Proxy (Proxy (..)) -import Data.Typeable (Typeable) +import Data.Kind (Constraint, Type) +import Data.Proxy (Proxy (..)) +import Data.Typeable (Typeable) class Typeable t => HasTypeProxy t where -- | A family of singleton types used in this API to indicate which type to diff --git a/cardano-api/src/Cardano/Api/Internal/Hash.hs b/cardano-api/src/Cardano/Api/Internal/Hash.hs index 1050c6c5ee..0d714c5cb3 100644 --- a/cardano-api/src/Cardano/Api/Internal/Hash.hs +++ b/cardano-api/src/Cardano/Api/Internal/Hash.hs @@ -9,13 +9,13 @@ module Cardano.Api.Internal.Hash ) where -import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.HasTypeProxy -import qualified Cardano.Crypto.Hash as Hash -import qualified Cardano.Ledger.SafeHash as Ledger +import Cardano.Crypto.Hash qualified as Hash +import Cardano.Ledger.SafeHash qualified as Ledger -import Data.Kind (Type) -import qualified Data.Text as Text +import Data.Kind (Type) +import Data.Text qualified as Text data family Hash keyrole :: Type diff --git a/cardano-api/src/Cardano/Api/Internal/IO.hs b/cardano-api/src/Cardano/Api/Internal/IO.hs index e121d169e3..037f0265ad 100644 --- a/cardano-api/src/Cardano/Api/Internal/IO.hs +++ b/cardano-api/src/Cardano/Api/Internal/IO.hs @@ -28,20 +28,20 @@ module Cardano.Api.Internal.IO ) where -import Cardano.Api.Internal.Error (FileError (..), fileIOExceptT) -import Cardano.Api.Internal.IO.Base -import Cardano.Api.Internal.IO.Compat - -import Control.Monad.Except (runExceptT) -import Control.Monad.IO.Class (MonadIO (..)) -import Control.Monad.Trans.Except.Extra (handleIOExceptT) -import Data.ByteString (ByteString) -import qualified Data.ByteString.Char8 as BS -import qualified Data.ByteString.Char8 as BSC -import qualified Data.ByteString.Lazy as LBS -import qualified Data.ByteString.Lazy as LBSC -import Data.Text (Text) -import qualified Data.Text.IO as Text +import Cardano.Api.Internal.Error (FileError (..), fileIOExceptT) +import Cardano.Api.Internal.IO.Base +import Cardano.Api.Internal.IO.Compat + +import Control.Monad.Except (runExceptT) +import Control.Monad.IO.Class (MonadIO (..)) +import Control.Monad.Trans.Except.Extra (handleIOExceptT) +import Data.ByteString (ByteString) +import Data.ByteString.Char8 qualified as BS +import Data.ByteString.Char8 qualified as BSC +import Data.ByteString.Lazy qualified as LBS +import Data.ByteString.Lazy qualified as LBSC +import Data.Text (Text) +import Data.Text.IO qualified as Text readByteStringFile :: () diff --git a/cardano-api/src/Cardano/Api/Internal/IO/Base.hs b/cardano-api/src/Cardano/Api/Internal/IO/Base.hs index a65e3e7a85..02a1870b82 100644 --- a/cardano-api/src/Cardano/Api/Internal/IO/Base.hs +++ b/cardano-api/src/Cardano/Api/Internal/IO/Base.hs @@ -13,8 +13,8 @@ module Cardano.Api.Internal.IO.Base ) where -import Data.Aeson (FromJSON, ToJSON) -import Data.String (IsString) +import Data.Aeson (FromJSON, ToJSON) +import Data.String (IsString) data FileDirection = -- | Indicate the file is to be used for reading. diff --git a/cardano-api/src/Cardano/Api/Internal/IO/Compat.hs b/cardano-api/src/Cardano/Api/Internal/IO/Compat.hs index 29b4084082..6e071312de 100644 --- a/cardano-api/src/Cardano/Api/Internal/IO/Compat.hs +++ b/cardano-api/src/Cardano/Api/Internal/IO/Compat.hs @@ -8,14 +8,14 @@ module Cardano.Api.Internal.IO.Compat ) where -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.IO.Base -import Cardano.Api.Internal.IO.Compat.Posix -import Cardano.Api.Internal.IO.Compat.Win32 +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.IO.Base +import Cardano.Api.Internal.IO.Compat.Posix +import Cardano.Api.Internal.IO.Compat.Win32 -import Control.Monad.Except (ExceptT) -import Data.ByteString (ByteString) -import System.IO +import Control.Monad.Except (ExceptT) +import Data.ByteString (ByteString) +import System.IO handleFileForWritingWithOwnerPermission :: FilePath diff --git a/cardano-api/src/Cardano/Api/Internal/IPC.hs b/cardano-api/src/Cardano/Api/Internal/IPC.hs index ce9c8a6f0f..de531d047e 100644 --- a/cardano-api/src/Cardano/Api/Internal/IPC.hs +++ b/cardano-api/src/Cardano/Api/Internal/IPC.hs @@ -74,63 +74,75 @@ module Cardano.Api.Internal.IPC ) where -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.InMode -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.IPC.Version -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Monad.Error (ExceptT (..)) -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.Protocol -import Cardano.Api.Internal.Query -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign - -import qualified Cardano.Ledger.Api as L -import qualified Ouroboros.Consensus.Block as Consensus -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import Ouroboros.Consensus.Cardano.CanHardFork -import qualified Ouroboros.Consensus.Ledger.Query as Consensus -import qualified Ouroboros.Consensus.Ledger.SupportsMempool as Consensus -import qualified Ouroboros.Consensus.Ledger.SupportsProtocol as Consensus -import qualified Ouroboros.Consensus.Network.NodeToClient as Consensus -import qualified Ouroboros.Consensus.Node.NetworkProtocolVersion as Consensus -import qualified Ouroboros.Consensus.Node.ProtocolInfo as Consensus -import qualified Ouroboros.Consensus.Protocol.TPraos as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger.Block as Consensus -import Ouroboros.Consensus.Shelley.Ledger.SupportsProtocol () -import qualified Ouroboros.Network.Block as Net -import qualified Ouroboros.Network.Mux as Net -import Ouroboros.Network.NodeToClient (NodeToClientProtocols (..), - NodeToClientVersionData (..)) -import qualified Ouroboros.Network.NodeToClient as Net -import Ouroboros.Network.NodeToClient.Version (NodeToClientVersion (..)) -import Ouroboros.Network.Protocol.ChainSync.Client as Net.Sync -import Ouroboros.Network.Protocol.ChainSync.ClientPipelined as Net.SyncP -import Ouroboros.Network.Protocol.LocalStateQuery.Client (LocalStateQueryClient (..)) -import qualified Ouroboros.Network.Protocol.LocalStateQuery.Client as Net.Query -import Ouroboros.Network.Protocol.LocalStateQuery.Type (AcquireFailure (..)) -import qualified Ouroboros.Network.Protocol.LocalStateQuery.Type as Net.Query -import Ouroboros.Network.Protocol.LocalTxMonitor.Client (LocalTxMonitorClient (..), - localTxMonitorClientPeer) -import qualified Ouroboros.Network.Protocol.LocalTxMonitor.Client as CTxMon -import qualified Ouroboros.Network.Protocol.LocalTxMonitor.Type as Consensus -import Ouroboros.Network.Protocol.LocalTxSubmission.Client (LocalTxSubmissionClient (..), - SubmitResult (..)) -import qualified Ouroboros.Network.Protocol.LocalTxSubmission.Client as Net.Tx - -import Control.Concurrent.STM (TMVar, atomically, newEmptyTMVarIO, putTMVar, takeTMVar, - tryPutTMVar) -import Control.Exception (throwIO) -import Control.Monad (void) -import Control.Monad.IO.Class -import Control.Tracer (nullTracer) -import Data.Aeson (ToJSON, object, toJSON, (.=)) -import qualified Data.ByteString.Lazy as LBS -import Data.Void (Void) -import GHC.Exts (IsList (..)) -import qualified Network.Mux as Net +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.IPC.Version +import Cardano.Api.Internal.InMode +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Monad.Error (ExceptT (..)) +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.Protocol +import Cardano.Api.Internal.Query +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign + +import Cardano.Ledger.Api qualified as L +import Ouroboros.Consensus.Block qualified as Consensus +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.Cardano.CanHardFork +import Ouroboros.Consensus.Ledger.Query qualified as Consensus +import Ouroboros.Consensus.Ledger.SupportsMempool qualified as Consensus +import Ouroboros.Consensus.Ledger.SupportsProtocol qualified as Consensus +import Ouroboros.Consensus.Network.NodeToClient qualified as Consensus +import Ouroboros.Consensus.Node.NetworkProtocolVersion qualified as Consensus +import Ouroboros.Consensus.Node.ProtocolInfo qualified as Consensus +import Ouroboros.Consensus.Protocol.TPraos qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger.Block qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger.SupportsProtocol () +import Ouroboros.Network.Block qualified as Net +import Ouroboros.Network.Mux qualified as Net +import Ouroboros.Network.NodeToClient + ( NodeToClientProtocols (..) + , NodeToClientVersionData (..) + ) +import Ouroboros.Network.NodeToClient qualified as Net +import Ouroboros.Network.NodeToClient.Version (NodeToClientVersion (..)) +import Ouroboros.Network.Protocol.ChainSync.Client as Net.Sync +import Ouroboros.Network.Protocol.ChainSync.ClientPipelined as Net.SyncP +import Ouroboros.Network.Protocol.LocalStateQuery.Client (LocalStateQueryClient (..)) +import Ouroboros.Network.Protocol.LocalStateQuery.Client qualified as Net.Query +import Ouroboros.Network.Protocol.LocalStateQuery.Type (AcquireFailure (..)) +import Ouroboros.Network.Protocol.LocalStateQuery.Type qualified as Net.Query +import Ouroboros.Network.Protocol.LocalTxMonitor.Client + ( LocalTxMonitorClient (..) + , localTxMonitorClientPeer + ) +import Ouroboros.Network.Protocol.LocalTxMonitor.Client qualified as CTxMon +import Ouroboros.Network.Protocol.LocalTxMonitor.Type qualified as Consensus +import Ouroboros.Network.Protocol.LocalTxSubmission.Client + ( LocalTxSubmissionClient (..) + , SubmitResult (..) + ) +import Ouroboros.Network.Protocol.LocalTxSubmission.Client qualified as Net.Tx + +import Control.Concurrent.STM + ( TMVar + , atomically + , newEmptyTMVarIO + , putTMVar + , takeTMVar + , tryPutTMVar + ) +import Control.Exception (throwIO) +import Control.Monad (void) +import Control.Monad.IO.Class +import Control.Tracer (nullTracer) +import Data.Aeson (ToJSON, object, toJSON, (.=)) +import Data.ByteString.Lazy qualified as LBS +import Data.Void (Void) +import GHC.Exts (IsList (..)) +import Network.Mux qualified as Net -- ---------------------------------------------------------------------------- -- The types for the client side of the node-to-client IPC protocols diff --git a/cardano-api/src/Cardano/Api/Internal/IPC/Monad.hs b/cardano-api/src/Cardano/Api/Internal/IPC/Monad.hs index a89058b4f9..70696e9b29 100644 --- a/cardano-api/src/Cardano/Api/Internal/IPC/Monad.hs +++ b/cardano-api/src/Cardano/Api/Internal/IPC/Monad.hs @@ -9,19 +9,19 @@ module Cardano.Api.Internal.IPC.Monad ) where -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.IPC -import Cardano.Api.Internal.IPC.Version +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.IPC +import Cardano.Api.Internal.IPC.Version -import Cardano.Ledger.Shelley.Scripts () -import qualified Ouroboros.Network.Protocol.LocalStateQuery.Client as Net.Query -import qualified Ouroboros.Network.Protocol.LocalStateQuery.Type as Net.Query +import Cardano.Ledger.Shelley.Scripts () +import Ouroboros.Network.Protocol.LocalStateQuery.Client qualified as Net.Query +import Ouroboros.Network.Protocol.LocalStateQuery.Type qualified as Net.Query -import Control.Concurrent.STM -import Control.Monad -import Control.Monad.IO.Class -import Control.Monad.Reader -import Control.Monad.Trans.Cont +import Control.Concurrent.STM +import Control.Monad +import Control.Monad.IO.Class +import Control.Monad.Reader +import Control.Monad.Trans.Cont {- HLINT ignore "Use const" -} {- HLINT ignore "Use let" -} diff --git a/cardano-api/src/Cardano/Api/Internal/IPC/Version.hs b/cardano-api/src/Cardano/Api/Internal/IPC/Version.hs index 4ffb89ccbe..d489c854ba 100644 --- a/cardano-api/src/Cardano/Api/Internal/IPC/Version.hs +++ b/cardano-api/src/Cardano/Api/Internal/IPC/Version.hs @@ -7,7 +7,7 @@ module Cardano.Api.Internal.IPC.Version ) where -import Ouroboros.Network.NodeToClient.Version (NodeToClientVersion (..)) +import Ouroboros.Network.NodeToClient.Version (NodeToClientVersion (..)) -- | The query 'a' is a versioned query, which means it requires the Node to support a minimum -- Node-to-Client version. diff --git a/cardano-api/src/Cardano/Api/Internal/InMode.hs b/cardano-api/src/Cardano/Api/Internal/InMode.hs index cc62b595d5..3690777f4c 100644 --- a/cardano-api/src/Cardano/Api/Internal/InMode.hs +++ b/cardano-api/src/Cardano/Api/Internal/InMode.hs @@ -27,29 +27,29 @@ module Cardano.Api.Internal.InMode ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.Utils (textShow) +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.Utils (textShow) -import qualified Cardano.Ledger.Api as L -import qualified Ouroboros.Consensus.Byron.Ledger as Consensus -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import qualified Ouroboros.Consensus.HardFork.Combinator as Consensus -import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (EraMismatch) -import qualified Ouroboros.Consensus.Ledger.SupportsMempool as Consensus -import qualified Ouroboros.Consensus.Shelley.HFEras as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus -import qualified Ouroboros.Consensus.TypeFamilyWrappers as Consensus +import Cardano.Ledger.Api qualified as L +import Ouroboros.Consensus.Byron.Ledger qualified as Consensus +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (EraMismatch) +import Ouroboros.Consensus.Ledger.SupportsMempool qualified as Consensus +import Ouroboros.Consensus.Shelley.HFEras qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus +import Ouroboros.Consensus.TypeFamilyWrappers qualified as Consensus -import Data.Aeson (ToJSON (..), (.=)) -import qualified Data.Aeson as Aeson -import Data.SOP.Strict (NS (S, Z)) -import qualified Data.Text as Text -import GHC.Generics +import Data.Aeson (ToJSON (..), (.=)) +import Data.Aeson qualified as Aeson +import Data.SOP.Strict (NS (S, Z)) +import Data.Text qualified as Text +import GHC.Generics -- ---------------------------------------------------------------------------- -- Transactions in the context of a consensus mode diff --git a/cardano-api/src/Cardano/Api/Internal/Json.hs b/cardano-api/src/Cardano/Api/Internal/Json.hs index 1a9f7559b3..59e35fd5aa 100644 --- a/cardano-api/src/Cardano/Api/Internal/Json.hs +++ b/cardano-api/src/Cardano/Api/Internal/Json.hs @@ -3,8 +3,8 @@ module Cardano.Api.Internal.Json ) where -import Data.Aeson -import Data.Scientific +import Data.Aeson +import Data.Scientific -- Rationals and JSON are an awkward mix. We cannot convert rationals -- like @1/3@ to JSON numbers. But _most_ of the numbers we want to use diff --git a/cardano-api/src/Cardano/Api/Internal/Keys/Byron.hs b/cardano-api/src/Cardano/Api/Internal/Keys/Byron.hs index 17b581f5f5..465fd0feb8 100644 --- a/cardano-api/src/Cardano/Api/Internal/Keys/Byron.hs +++ b/cardano-api/src/Cardano/Api/Internal/Keys/Byron.hs @@ -28,34 +28,34 @@ module Cardano.Api.Internal.Keys.Byron ) where -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing - -import Cardano.Binary (cborError, toStrictByteString) -import qualified Cardano.Chain.Common as Crypto -import qualified Cardano.Crypto.DSIGN.Class as Crypto -import qualified Cardano.Crypto.Hashing as Crypto -import qualified Cardano.Crypto.Seed as Crypto -import qualified Cardano.Crypto.Signing as Crypto -import qualified Cardano.Crypto.Wallet as Crypto.HD -import qualified Cardano.Crypto.Wallet as Wallet - -import qualified Codec.CBOR.Decoding as CBOR -import qualified Codec.CBOR.Read as CBOR -import Control.Monad -import Data.Bifunctor -import qualified Data.ByteString.Lazy as LB -import Data.Either.Combinators -import Data.String (IsString) -import Data.Text (Text) -import qualified Data.Text as Text -import Formatting (build, formatToString) +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing + +import Cardano.Binary (cborError, toStrictByteString) +import Cardano.Chain.Common qualified as Crypto +import Cardano.Crypto.DSIGN.Class qualified as Crypto +import Cardano.Crypto.Hashing qualified as Crypto +import Cardano.Crypto.Seed qualified as Crypto +import Cardano.Crypto.Signing qualified as Crypto +import Cardano.Crypto.Wallet qualified as Crypto.HD +import Cardano.Crypto.Wallet qualified as Wallet + +import Codec.CBOR.Decoding qualified as CBOR +import Codec.CBOR.Read qualified as CBOR +import Control.Monad +import Data.Bifunctor +import Data.ByteString.Lazy qualified as LB +import Data.Either.Combinators +import Data.String (IsString) +import Data.Text (Text) +import Data.Text qualified as Text +import Formatting (build, formatToString) -- | Byron-era payment keys. Used for Byron addresses and witnessing -- transactions that spend from these addresses. diff --git a/cardano-api/src/Cardano/Api/Internal/Keys/Praos.hs b/cardano-api/src/Cardano/Api/Internal/Keys/Praos.hs index c53aee2e35..74c151a975 100644 --- a/cardano-api/src/Cardano/Api/Internal/Keys/Praos.hs +++ b/cardano-api/src/Cardano/Api/Internal/Keys/Praos.hs @@ -25,26 +25,26 @@ module Cardano.Api.Internal.Keys.Praos ) where -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing - -import qualified Cardano.Crypto.DSIGN.Class as Crypto -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Crypto.KES.Class as Crypto -import qualified Cardano.Crypto.VRF.Class as Crypto -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Crypto as Shelley (KES, VRF) -import qualified Cardano.Ledger.Keys as Shelley - -import Data.ByteString (ByteString) -import Data.Either.Combinators (maybeToRight) -import Data.String (IsString (..)) +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing + +import Cardano.Crypto.DSIGN.Class qualified as Crypto +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Crypto.KES.Class qualified as Crypto +import Cardano.Crypto.VRF.Class qualified as Crypto +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Crypto qualified as Shelley (KES, VRF) +import Cardano.Ledger.Keys qualified as Shelley + +import Data.ByteString (ByteString) +import Data.Either.Combinators (maybeToRight) +import Data.String (IsString (..)) -- -- KES keys diff --git a/cardano-api/src/Cardano/Api/Internal/Keys/Read.hs b/cardano-api/src/Cardano/Api/Internal/Keys/Read.hs index 93ebd2b688..65783bc772 100644 --- a/cardano-api/src/Cardano/Api/Internal/Keys/Read.hs +++ b/cardano-api/src/Cardano/Api/Internal/Keys/Read.hs @@ -11,17 +11,17 @@ module Cardano.Api.Internal.Keys.Read ) where -import Cardano.Api.Internal.DeserialiseAnyOf -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.Utils +import Cardano.Api.Internal.DeserialiseAnyOf +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.Utils -import Control.Monad.Except (runExceptT) -import Data.Bifunctor -import Data.List.NonEmpty (NonEmpty) +import Control.Monad.Except (runExceptT) +import Data.Bifunctor +import Data.List.NonEmpty (NonEmpty) -- | Read a cryptographic key from a file. -- diff --git a/cardano-api/src/Cardano/Api/Internal/Keys/Shelley.hs b/cardano-api/src/Cardano/Api/Internal/Keys/Shelley.hs index 0c4e5940ff..eb1ef50630 100644 --- a/cardano-api/src/Cardano/Api/Internal/Keys/Shelley.hs +++ b/cardano-api/src/Cardano/Api/Internal/Keys/Shelley.hs @@ -39,33 +39,33 @@ module Cardano.Api.Internal.Keys.Shelley ) where -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing - -import qualified Cardano.Crypto.DSIGN.Class as Crypto -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Crypto.Seed as Crypto -import qualified Cardano.Crypto.Wallet as Crypto.HD -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Crypto as Shelley (DSIGN) -import qualified Cardano.Ledger.Keys as Shelley - -import Data.Aeson.Types (ToJSONKey (..), toJSONKeyText, withText) -import Data.Bifunctor (first) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import Data.Either.Combinators (maybeToRight) -import Data.Maybe -import Data.String (IsString (..)) +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing + +import Cardano.Crypto.DSIGN.Class qualified as Crypto +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Crypto.Seed qualified as Crypto +import Cardano.Crypto.Wallet qualified as Crypto.HD +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Crypto qualified as Shelley (DSIGN) +import Cardano.Ledger.Keys qualified as Shelley + +import Data.Aeson.Types (ToJSONKey (..), toJSONKeyText, withText) +import Data.Bifunctor (first) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.Either.Combinators (maybeToRight) +import Data.Maybe +import Data.String (IsString (..)) -- -- Shelley payment keys diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/ConvertLedgerEvent.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/ConvertLedgerEvent.hs index 08b4687aa8..d205ea003b 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/ConvertLedgerEvent.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/ConvertLedgerEvent.hs @@ -13,37 +13,49 @@ module Cardano.Api.Internal.LedgerEvents.ConvertLedgerEvent ) where -import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.DELEGS -import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.LEDGER -import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.UTXOW -import Cardano.Api.Internal.LedgerEvents.Rule.TICK.NEWEPOCH -import Cardano.Api.Internal.LedgerEvents.Rule.TICK.RUPD - -import qualified Cardano.Ledger.Allegra.Rules as Allegra -import Cardano.Ledger.Alonzo.Rules (AlonzoBbodyEvent (..)) -import Cardano.Ledger.Api.Era (AllegraEra, AlonzoEra, BabbageEra, ConwayEra, MaryEra, - ShelleyEra) -import qualified Cardano.Ledger.Conway.Rules as Conway -import Cardano.Ledger.Core -import qualified Cardano.Ledger.Core as Ledger.Core -import Cardano.Ledger.Crypto (StandardCrypto) -import Cardano.Ledger.Shelley.Rules (RupdEvent (..), ShelleyBbodyEvent (LedgersEvent), - ShelleyNewEpochEvent (..), ShelleyTickEvent (TickNewEpochEvent, TickRupdEvent), - ShelleyUtxowEvent (..)) -import qualified Cardano.Ledger.Shelley.Rules as Shelley -import Ouroboros.Consensus.Byron.Ledger.Block (ByronBlock) -import Ouroboros.Consensus.Cardano.Block (HardForkBlock) -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (getOneEraLedgerEvent) -import qualified Ouroboros.Consensus.Protocol.Praos as Consensus -import qualified Ouroboros.Consensus.Protocol.TPraos as Consensus -import Ouroboros.Consensus.Shelley.Ledger (ShelleyBlock, - ShelleyLedgerEvent (ShelleyLedgerEventBBODY, ShelleyLedgerEventTICK)) -import Ouroboros.Consensus.TypeFamilyWrappers (WrapLedgerEvent (unwrapLedgerEvent)) - -import Control.State.Transition (Event) -import Data.SOP.Strict +import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.DELEGS +import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.LEDGER +import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.UTXOW +import Cardano.Api.Internal.LedgerEvents.Rule.TICK.NEWEPOCH +import Cardano.Api.Internal.LedgerEvents.Rule.TICK.RUPD + +import Cardano.Ledger.Allegra.Rules qualified as Allegra +import Cardano.Ledger.Alonzo.Rules (AlonzoBbodyEvent (..)) +import Cardano.Ledger.Api.Era + ( AllegraEra + , AlonzoEra + , BabbageEra + , ConwayEra + , MaryEra + , ShelleyEra + ) +import Cardano.Ledger.Conway.Rules qualified as Conway +import Cardano.Ledger.Core +import Cardano.Ledger.Core qualified as Ledger.Core +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Shelley.Rules + ( RupdEvent (..) + , ShelleyBbodyEvent (LedgersEvent) + , ShelleyNewEpochEvent (..) + , ShelleyTickEvent (TickNewEpochEvent, TickRupdEvent) + , ShelleyUtxowEvent (..) + ) +import Cardano.Ledger.Shelley.Rules qualified as Shelley +import Ouroboros.Consensus.Byron.Ledger.Block (ByronBlock) +import Ouroboros.Consensus.Cardano.Block (HardForkBlock) +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (getOneEraLedgerEvent) +import Ouroboros.Consensus.Protocol.Praos qualified as Consensus +import Ouroboros.Consensus.Protocol.TPraos qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger + ( ShelleyBlock + , ShelleyLedgerEvent (ShelleyLedgerEventBBODY, ShelleyLedgerEventTICK) + ) +import Ouroboros.Consensus.TypeFamilyWrappers (WrapLedgerEvent (unwrapLedgerEvent)) + +import Control.State.Transition (Event) +import Data.SOP.Strict class ConvertLedgerEvent blk where toLedgerEvent :: WrapLedgerEvent blk -> Maybe LedgerEvent diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/LedgerEvent.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/LedgerEvent.hs index b1b37190bb..10e6977b6c 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/LedgerEvent.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/LedgerEvent.hs @@ -14,25 +14,25 @@ module Cardano.Api.Internal.LedgerEvents.LedgerEvent ) where -import Cardano.Api.Internal.Address (StakeCredential, fromShelleyStakeCredential) -import Cardano.Api.Internal.Block (EpochNo) -import Cardano.Api.Internal.Keys.Shelley (Hash (..), StakePoolKey) +import Cardano.Api.Internal.Address (StakeCredential, fromShelleyStakeCredential) +import Cardano.Api.Internal.Block (EpochNo) +import Cardano.Api.Internal.Keys.Shelley (Hash (..), StakePoolKey) -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Coin as Ledger -import qualified Cardano.Ledger.Conway.Governance as Ledger -import qualified Cardano.Ledger.Core as Ledger.Core -import qualified Cardano.Ledger.Credential as Ledger -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Ledger -import Cardano.Ledger.Plutus.Evaluate (PlutusWithContext) -import Cardano.Ledger.Shelley.Rewards (Reward) -import qualified Cardano.Ledger.TxIn as Ledger +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Coin qualified as Ledger +import Cardano.Ledger.Conway.Governance qualified as Ledger +import Cardano.Ledger.Core qualified as Ledger.Core +import Cardano.Ledger.Credential qualified as Ledger +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Ledger +import Cardano.Ledger.Plutus.Evaluate (PlutusWithContext) +import Cardano.Ledger.Shelley.Rewards (Reward) +import Cardano.Ledger.TxIn qualified as Ledger -import Data.List.NonEmpty (NonEmpty) -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Set (Set) +import Data.List.NonEmpty (NonEmpty) +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Set (Set) data AnyProposals = forall era. Ledger.Core.EraPParams era => AnyProposals (Ledger.Proposals era) diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/DELEGS.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/DELEGS.hs index 67c4d97570..7e3395cea2 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/DELEGS.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/DELEGS.hs @@ -6,9 +6,9 @@ module Cardano.Api.Internal.LedgerEvents.Rule.BBODY.DELEGS ) where -import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import qualified Cardano.Ledger.Shelley.Rules as Shelley +import Cardano.Ledger.Shelley.Rules qualified as Shelley handleShelleyDELEGSEvent :: Shelley.ShelleyDelegsEvent ledgerera -> Maybe LedgerEvent handleShelleyDELEGSEvent _ = Nothing diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/LEDGER.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/LEDGER.hs index 7e64854feb..e0f90b3f5c 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/LEDGER.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/LEDGER.hs @@ -9,18 +9,21 @@ module Cardano.Api.Internal.LedgerEvents.Rule.BBODY.LEDGER ) where -import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.DELEGS -import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.UTXOW +import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.DELEGS +import Cardano.Api.Internal.LedgerEvents.Rule.BBODY.UTXOW -import Cardano.Ledger.Alonzo.Rules (AlonzoUtxoEvent (..), AlonzoUtxosEvent (..), - AlonzoUtxowEvent (..)) -import qualified Cardano.Ledger.Alonzo.Rules as Alonzo -import qualified Cardano.Ledger.Core as Ledger.Core -import qualified Cardano.Ledger.Crypto as Crypto -import qualified Cardano.Ledger.Shelley.Rules as Shelley +import Cardano.Ledger.Alonzo.Rules + ( AlonzoUtxoEvent (..) + , AlonzoUtxosEvent (..) + , AlonzoUtxowEvent (..) + ) +import Cardano.Ledger.Alonzo.Rules qualified as Alonzo +import Cardano.Ledger.Core qualified as Ledger.Core +import Cardano.Ledger.Crypto qualified as Crypto +import Cardano.Ledger.Shelley.Rules qualified as Shelley -import Control.State.Transition.Extended +import Control.State.Transition.Extended type LatestBBodyEventConstraints ledgerera = ( Event (Ledger.Core.EraRule "BBODY" ledgerera) ~ Alonzo.AlonzoBbodyEvent ledgerera diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/UTXOW.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/UTXOW.hs index 32cc629c9e..08448283cb 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/UTXOW.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/BBODY/UTXOW.hs @@ -11,19 +11,22 @@ module Cardano.Api.Internal.LedgerEvents.Rule.BBODY.UTXOW ) where -import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import qualified Cardano.Ledger.Allegra.Rules as Allegra -import Cardano.Ledger.Alonzo.Rules (AlonzoUtxoEvent (..), AlonzoUtxosEvent (..), - AlonzoUtxowEvent (..)) -import qualified Cardano.Ledger.Alonzo.Rules as Alonzo -import Cardano.Ledger.Conway -import qualified Cardano.Ledger.Conway.Rules as Conway -import qualified Cardano.Ledger.Core as Ledger.Core -import qualified Cardano.Ledger.Crypto as Crypto -import qualified Cardano.Ledger.Shelley.Rules as Shelley +import Cardano.Ledger.Allegra.Rules qualified as Allegra +import Cardano.Ledger.Alonzo.Rules + ( AlonzoUtxoEvent (..) + , AlonzoUtxosEvent (..) + , AlonzoUtxowEvent (..) + ) +import Cardano.Ledger.Alonzo.Rules qualified as Alonzo +import Cardano.Ledger.Conway +import Cardano.Ledger.Conway.Rules qualified as Conway +import Cardano.Ledger.Core qualified as Ledger.Core +import Cardano.Ledger.Crypto qualified as Crypto +import Cardano.Ledger.Shelley.Rules qualified as Shelley -import Control.State.Transition.Extended +import Control.State.Transition.Extended handleConwayUTxOWEvent :: AlonzoUtxowEvent (ConwayEra Crypto.StandardCrypto) -> Maybe LedgerEvent diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/NEWEPOCH.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/NEWEPOCH.hs index af27bbe516..7e96c088ee 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/NEWEPOCH.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/NEWEPOCH.hs @@ -12,18 +12,18 @@ module Cardano.Api.Internal.LedgerEvents.Rule.TICK.NEWEPOCH ) where -import Cardano.Api.Internal.Address (fromShelleyStakeCredential) -import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import Cardano.Api.Internal.LedgerEvents.Rule.TICK.RUPD -import Cardano.Api.Internal.ReexposeLedger +import Cardano.Api.Internal.Address (fromShelleyStakeCredential) +import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.LedgerEvents.Rule.TICK.RUPD +import Cardano.Api.Internal.ReexposeLedger -import Cardano.Ledger.Conway.Rules (ConwayNewEpochEvent) -import qualified Cardano.Ledger.Conway.Rules as Conway -import qualified Cardano.Ledger.Core as Core -import Cardano.Ledger.Shelley.Rules -import qualified Cardano.Ledger.Shelley.Rules as Shelley +import Cardano.Ledger.Conway.Rules (ConwayNewEpochEvent) +import Cardano.Ledger.Conway.Rules qualified as Conway +import Cardano.Ledger.Core qualified as Core +import Cardano.Ledger.Shelley.Rules +import Cardano.Ledger.Shelley.Rules qualified as Shelley -import qualified Data.Map.Strict as Map +import Data.Map.Strict qualified as Map type LatestTickEventConstraints ledgerera = ( Event (Core.EraRule "TICK" ledgerera) ~ ShelleyTickEvent ledgerera diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/RUPD.hs b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/RUPD.hs index 855f53e3c0..900cfab65e 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/RUPD.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerEvents/Rule/TICK/RUPD.hs @@ -3,14 +3,15 @@ module Cardano.Api.Internal.LedgerEvents.Rule.TICK.RUPD ) where -import Cardano.Api.Internal.Address (fromShelleyStakeCredential) -import Cardano.Api.Internal.LedgerEvents.LedgerEvent - (LedgerEvent (IncrementalRewardsDistribution)) +import Cardano.Api.Internal.Address (fromShelleyStakeCredential) +import Cardano.Api.Internal.LedgerEvents.LedgerEvent + ( LedgerEvent (IncrementalRewardsDistribution) + ) -import Cardano.Ledger.Crypto (StandardCrypto) -import Cardano.Ledger.Shelley.Rules +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Shelley.Rules -import qualified Data.Map.Strict as Map +import Data.Map.Strict qualified as Map handleLedgerRUPDEvents :: RupdEvent StandardCrypto -> Maybe LedgerEvent handleLedgerRUPDEvents (RupdEvent epochNum rewards) = diff --git a/cardano-api/src/Cardano/Api/Internal/LedgerState.hs b/cardano-api/src/Cardano/Api/Internal/LedgerState.hs index de46ff7e39..145736faf9 100644 --- a/cardano-api/src/Cardano/Api/Internal/LedgerState.hs +++ b/cardano-api/src/Cardano/Api/Internal/LedgerState.hs @@ -94,134 +94,151 @@ module Cardano.Api.Internal.LedgerState ) where -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Eras.Core (CardanoEra, forEraMaybeEon) -import Cardano.Api.Internal.Error as Api -import Cardano.Api.Internal.Genesis -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.IPC (ConsensusModeParams (..), - LocalChainSyncClient (LocalChainSyncClientPipelined), - LocalNodeClientProtocols (..), LocalNodeClientProtocolsInMode, - LocalNodeConnectInfo (..), connectToLocalNode) -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.LedgerEvents.ConvertLedgerEvent -import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import Cardano.Api.Internal.Modes (EpochSlots (..)) -import qualified Cardano.Api.Internal.Modes as Api -import Cardano.Api.Internal.Monad.Error -import Cardano.Api.Internal.NetworkId (NetworkId (..), NetworkMagic (NetworkMagic)) -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.Query (CurrentEpochState (..), PoolDistribution (unPoolDistr), - ProtocolState, SerialisedCurrentEpochState (..), SerialisedPoolDistribution, - decodeCurrentEpochState, decodePoolDistribution, decodeProtocolState) -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.SpecialByron as Byron -import Cardano.Api.Internal.Utils (textShow) - -import qualified Cardano.Binary as CBOR -import qualified Cardano.Chain.Genesis -import qualified Cardano.Chain.Update -import Cardano.Crypto (ProtocolMagicId (unProtocolMagicId), RequiresNetworkMagic (..)) -import qualified Cardano.Crypto.Hash.Blake2b -import qualified Cardano.Crypto.Hash.Class -import qualified Cardano.Crypto.Hashing -import qualified Cardano.Crypto.ProtocolMagic -import qualified Cardano.Crypto.VRF as Crypto -import qualified Cardano.Crypto.VRF.Class as VRF -import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis (..)) -import qualified Cardano.Ledger.Api.Era as Ledger -import qualified Cardano.Ledger.Api.Transition as Ledger -import Cardano.Ledger.BaseTypes (Globals (..), Nonce, ProtVer (..), natVersion, (â­’)) -import qualified Cardano.Ledger.BaseTypes as Ledger -import qualified Cardano.Ledger.BHeaderView as Ledger -import Cardano.Ledger.Binary (DecoderError) -import qualified Cardano.Ledger.Coin as SL -import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..)) -import qualified Cardano.Ledger.Keys as SL -import qualified Cardano.Ledger.PoolDistr as SL -import qualified Cardano.Ledger.Shelley.API as ShelleyAPI -import qualified Cardano.Ledger.Shelley.Core as Core -import qualified Cardano.Ledger.Shelley.Genesis as Ledger -import qualified Cardano.Protocol.TPraos.API as TPraos -import Cardano.Protocol.TPraos.BHeader (checkLeaderNatValue) -import qualified Cardano.Protocol.TPraos.BHeader as TPraos -import Cardano.Slotting.EpochInfo (EpochInfo) -import qualified Cardano.Slotting.EpochInfo.API as Slot -import Cardano.Slotting.Slot (WithOrigin (At, Origin)) -import qualified Cardano.Slotting.Slot as Slot -import qualified Ouroboros.Consensus.Block.Abstract as Consensus -import Ouroboros.Consensus.Block.Forging (BlockForging) -import qualified Ouroboros.Consensus.Byron.Ledger as Byron -import qualified Ouroboros.Consensus.Cardano as Consensus -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import qualified Ouroboros.Consensus.Cardano.CanHardFork as Consensus -import qualified Ouroboros.Consensus.Cardano.Node as Consensus -import qualified Ouroboros.Consensus.Config as Consensus -import qualified Ouroboros.Consensus.HardFork.Combinator as Consensus -import qualified Ouroboros.Consensus.HardFork.Combinator.AcrossEras as HFC -import qualified Ouroboros.Consensus.HardFork.Combinator.Basics as HFC -import qualified Ouroboros.Consensus.Ledger.Abstract as Ledger -import qualified Ouroboros.Consensus.Ledger.Extended as Ledger -import qualified Ouroboros.Consensus.Node.ProtocolInfo as Consensus -import Ouroboros.Consensus.Protocol.Abstract (ChainDepState, ConsensusProtocol (..)) -import qualified Ouroboros.Consensus.Protocol.Praos.Common as Consensus -import Ouroboros.Consensus.Protocol.Praos.VRF (mkInputVRF, vrfLeaderValue) -import qualified Ouroboros.Consensus.Shelley.HFEras as Shelley -import qualified Ouroboros.Consensus.Shelley.Ledger.Ledger as Shelley -import qualified Ouroboros.Consensus.Shelley.Ledger.Query.Types as Consensus -import Ouroboros.Consensus.Storage.Serialisation -import Ouroboros.Consensus.TypeFamilyWrappers (WrapLedgerEvent (WrapLedgerEvent)) -import Ouroboros.Network.Block (blockNo) -import qualified Ouroboros.Network.Block -import qualified Ouroboros.Network.Protocol.ChainSync.Client as CS -import qualified Ouroboros.Network.Protocol.ChainSync.ClientPipelined as CSP -import Ouroboros.Network.Protocol.ChainSync.PipelineDecision - -import Control.Concurrent -import Control.DeepSeq -import Control.Error.Util (note) -import Control.Exception.Safe -import Control.Monad -import Control.Monad.State.Strict -import Data.Aeson as Aeson (FromJSON (parseJSON), Object, eitherDecodeStrict', withObject, - (.:), (.:?)) -import Data.Aeson.Types (Parser) -import Data.Bifunctor -import Data.ByteArray (ByteArrayAccess) -import qualified Data.ByteArray -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Lazy as LBS -import Data.ByteString.Short as BSS -import Data.Foldable (asum) -import Data.IORef -import qualified Data.List as List -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Maybe -import Data.Proxy (Proxy (Proxy)) -import Data.Sequence (Seq) -import qualified Data.Sequence as Seq -import Data.Set (Set) -import qualified Data.Set as Set -import Data.SOP.Strict.NP -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import qualified Data.Text.Lazy as LT -import Data.Text.Lazy.Builder (toLazyText) -import Data.Word -import qualified Data.Yaml as Yaml -import Formatting.Buildable (build) -import GHC.Exts (IsList (..)) -import Lens.Micro -import qualified Network.Mux as Mux -import Network.TypedProtocol.Core (Nat (..)) -import System.FilePath +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Eras.Core (CardanoEra, forEraMaybeEon) +import Cardano.Api.Internal.Error as Api +import Cardano.Api.Internal.Genesis +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.IPC + ( ConsensusModeParams (..) + , LocalChainSyncClient (LocalChainSyncClientPipelined) + , LocalNodeClientProtocols (..) + , LocalNodeClientProtocolsInMode + , LocalNodeConnectInfo (..) + , connectToLocalNode + ) +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.LedgerEvents.ConvertLedgerEvent +import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.Modes (EpochSlots (..)) +import Cardano.Api.Internal.Modes qualified as Api +import Cardano.Api.Internal.Monad.Error +import Cardano.Api.Internal.NetworkId (NetworkId (..), NetworkMagic (NetworkMagic)) +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.Query + ( CurrentEpochState (..) + , PoolDistribution (unPoolDistr) + , ProtocolState + , SerialisedCurrentEpochState (..) + , SerialisedPoolDistribution + , decodeCurrentEpochState + , decodePoolDistribution + , decodeProtocolState + ) +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.SpecialByron as Byron +import Cardano.Api.Internal.Utils (textShow) + +import Cardano.Binary qualified as CBOR +import Cardano.Chain.Genesis qualified +import Cardano.Chain.Update qualified +import Cardano.Crypto (ProtocolMagicId (unProtocolMagicId), RequiresNetworkMagic (..)) +import Cardano.Crypto.Hash.Blake2b qualified +import Cardano.Crypto.Hash.Class qualified +import Cardano.Crypto.Hashing qualified +import Cardano.Crypto.ProtocolMagic qualified +import Cardano.Crypto.VRF qualified as Crypto +import Cardano.Crypto.VRF.Class qualified as VRF +import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis (..)) +import Cardano.Ledger.Api.Era qualified as Ledger +import Cardano.Ledger.Api.Transition qualified as Ledger +import Cardano.Ledger.BHeaderView qualified as Ledger +import Cardano.Ledger.BaseTypes (Globals (..), Nonce, ProtVer (..), natVersion, (â­’)) +import Cardano.Ledger.BaseTypes qualified as Ledger +import Cardano.Ledger.Binary (DecoderError) +import Cardano.Ledger.Coin qualified as SL +import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..)) +import Cardano.Ledger.Keys qualified as SL +import Cardano.Ledger.PoolDistr qualified as SL +import Cardano.Ledger.Shelley.API qualified as ShelleyAPI +import Cardano.Ledger.Shelley.Core qualified as Core +import Cardano.Ledger.Shelley.Genesis qualified as Ledger +import Cardano.Protocol.TPraos.API qualified as TPraos +import Cardano.Protocol.TPraos.BHeader (checkLeaderNatValue) +import Cardano.Protocol.TPraos.BHeader qualified as TPraos +import Cardano.Slotting.EpochInfo (EpochInfo) +import Cardano.Slotting.EpochInfo.API qualified as Slot +import Cardano.Slotting.Slot (WithOrigin (At, Origin)) +import Cardano.Slotting.Slot qualified as Slot +import Ouroboros.Consensus.Block.Abstract qualified as Consensus +import Ouroboros.Consensus.Block.Forging (BlockForging) +import Ouroboros.Consensus.Byron.Ledger qualified as Byron +import Ouroboros.Consensus.Cardano qualified as Consensus +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.Cardano.CanHardFork qualified as Consensus +import Ouroboros.Consensus.Cardano.Node qualified as Consensus +import Ouroboros.Consensus.Config qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras qualified as HFC +import Ouroboros.Consensus.HardFork.Combinator.Basics qualified as HFC +import Ouroboros.Consensus.Ledger.Abstract qualified as Ledger +import Ouroboros.Consensus.Ledger.Extended qualified as Ledger +import Ouroboros.Consensus.Node.ProtocolInfo qualified as Consensus +import Ouroboros.Consensus.Protocol.Abstract (ChainDepState, ConsensusProtocol (..)) +import Ouroboros.Consensus.Protocol.Praos.Common qualified as Consensus +import Ouroboros.Consensus.Protocol.Praos.VRF (mkInputVRF, vrfLeaderValue) +import Ouroboros.Consensus.Shelley.HFEras qualified as Shelley +import Ouroboros.Consensus.Shelley.Ledger.Ledger qualified as Shelley +import Ouroboros.Consensus.Shelley.Ledger.Query.Types qualified as Consensus +import Ouroboros.Consensus.Storage.Serialisation +import Ouroboros.Consensus.TypeFamilyWrappers (WrapLedgerEvent (WrapLedgerEvent)) +import Ouroboros.Network.Block (blockNo) +import Ouroboros.Network.Block qualified +import Ouroboros.Network.Protocol.ChainSync.Client qualified as CS +import Ouroboros.Network.Protocol.ChainSync.ClientPipelined qualified as CSP +import Ouroboros.Network.Protocol.ChainSync.PipelineDecision + +import Control.Concurrent +import Control.DeepSeq +import Control.Error.Util (note) +import Control.Exception.Safe +import Control.Monad +import Control.Monad.State.Strict +import Data.Aeson as Aeson + ( FromJSON (parseJSON) + , Object + , eitherDecodeStrict' + , withObject + , (.:) + , (.:?) + ) +import Data.Aeson.Types (Parser) +import Data.Bifunctor +import Data.ByteArray (ByteArrayAccess) +import Data.ByteArray qualified +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Lazy qualified as LBS +import Data.ByteString.Short as BSS +import Data.Foldable (asum) +import Data.IORef +import Data.List qualified as List +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Maybe +import Data.Proxy (Proxy (Proxy)) +import Data.SOP.Strict.NP +import Data.Sequence (Seq) +import Data.Sequence qualified as Seq +import Data.Set (Set) +import Data.Set qualified as Set +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Text.Lazy qualified as LT +import Data.Text.Lazy.Builder (toLazyText) +import Data.Word +import Data.Yaml qualified as Yaml +import Formatting.Buildable (build) +import GHC.Exts (IsList (..)) +import Lens.Micro +import Network.Mux qualified as Mux +import Network.TypedProtocol.Core (Nat (..)) +import System.FilePath data InitialLedgerStateError = -- | Failed to read or parse the network config file. diff --git a/cardano-api/src/Cardano/Api/Internal/Modes.hs b/cardano-api/src/Cardano/Api/Internal/Modes.hs index cd43442c1c..71557d4289 100644 --- a/cardano-api/src/Cardano/Api/Internal/Modes.hs +++ b/cardano-api/src/Cardano/Api/Internal/Modes.hs @@ -27,23 +27,26 @@ module Cardano.Api.Internal.Modes ) where -import Cardano.Api.Internal.Eras.Core - -import qualified Cardano.Chain.Slotting as Byron (EpochSlots (..)) -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Ouroboros.Consensus.Byron.Ledger as Consensus -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import qualified Ouroboros.Consensus.Cardano.ByronHFC as Consensus -import Ouroboros.Consensus.HardFork.Combinator as Consensus (EraIndex (..), eraIndexSucc, - eraIndexZero) -import qualified Ouroboros.Consensus.Protocol.Praos as Consensus -import qualified Ouroboros.Consensus.Protocol.TPraos as Consensus -import qualified Ouroboros.Consensus.Shelley.HFEras as Consensus -import qualified Ouroboros.Consensus.Shelley.ShelleyHFC as Consensus - -import Data.SOP (K (K)) -import Data.SOP.Strict (NS (S, Z)) +import Cardano.Api.Internal.Eras.Core + +import Cardano.Chain.Slotting qualified as Byron (EpochSlots (..)) +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Crypto (StandardCrypto) +import Ouroboros.Consensus.Byron.Ledger qualified as Consensus +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.Cardano.ByronHFC qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator as Consensus + ( EraIndex (..) + , eraIndexSucc + , eraIndexZero + ) +import Ouroboros.Consensus.Protocol.Praos qualified as Consensus +import Ouroboros.Consensus.Protocol.TPraos qualified as Consensus +import Ouroboros.Consensus.Shelley.HFEras qualified as Consensus +import Ouroboros.Consensus.Shelley.ShelleyHFC qualified as Consensus + +import Data.SOP (K (K)) +import Data.SOP.Strict (NS (S, Z)) -- ---------------------------------------------------------------------------- -- Consensus modes diff --git a/cardano-api/src/Cardano/Api/Internal/Monad/Error.hs b/cardano-api/src/Cardano/Api/Internal/Monad/Error.hs index 51e265c0f1..d39c295c8e 100644 --- a/cardano-api/src/Cardano/Api/Internal/Monad/Error.hs +++ b/cardano-api/src/Cardano/Api/Internal/Monad/Error.hs @@ -21,14 +21,23 @@ module Cardano.Api.Internal.Monad.Error ) where -import Control.Exception.Safe -import Control.Monad.Except (ExceptT (..), MonadError (..), catchError, liftEither, - mapExcept, mapExceptT, runExcept, runExceptT, withExcept) -import Control.Monad.IO.Class -import Control.Monad.Trans.Class -import Control.Monad.Trans.Except -import Control.Monad.Trans.Except.Extra -import Data.Bifunctor (first) +import Control.Exception.Safe +import Control.Monad.Except + ( ExceptT (..) + , MonadError (..) + , catchError + , liftEither + , mapExcept + , mapExceptT + , runExcept + , runExceptT + , withExcept + ) +import Control.Monad.IO.Class +import Control.Monad.Trans.Class +import Control.Monad.Trans.Except +import Control.Monad.Trans.Except.Extra +import Data.Bifunctor (first) -- | Convenience alias type MonadTransError e t m = (Monad m, MonadTrans t, MonadError e (t m)) diff --git a/cardano-api/src/Cardano/Api/Internal/NetworkId.hs b/cardano-api/src/Cardano/Api/Internal/NetworkId.hs index 41da0818c1..6dc0bd38cf 100644 --- a/cardano-api/src/Cardano/Api/Internal/NetworkId.hs +++ b/cardano-api/src/Cardano/Api/Internal/NetworkId.hs @@ -16,12 +16,14 @@ module Cardano.Api.Internal.NetworkId ) where -import qualified Cardano.Chain.Common as Byron (NetworkMagic (..)) -import qualified Cardano.Chain.Genesis as Byron (mainnetProtocolMagicId) -import qualified Cardano.Crypto.ProtocolMagic as Byron (ProtocolMagicId (..), - RequiresNetworkMagic (..)) -import qualified Cardano.Ledger.BaseTypes as Shelley (Network (..)) -import Ouroboros.Network.Magic (NetworkMagic (..)) +import Cardano.Chain.Common qualified as Byron (NetworkMagic (..)) +import Cardano.Chain.Genesis qualified as Byron (mainnetProtocolMagicId) +import Cardano.Crypto.ProtocolMagic qualified as Byron + ( ProtocolMagicId (..) + , RequiresNetworkMagic (..) + ) +import Cardano.Ledger.BaseTypes qualified as Shelley (Network (..)) +import Ouroboros.Network.Magic (NetworkMagic (..)) -- ---------------------------------------------------------------------------- -- NetworkId type diff --git a/cardano-api/src/Cardano/Api/Internal/OperationalCertificate.hs b/cardano-api/src/Cardano/Api/Internal/OperationalCertificate.hs index 7f0b5ad435..d40c89b5bd 100644 --- a/cardano-api/src/Cardano/Api/Internal/OperationalCertificate.hs +++ b/cardano-api/src/Cardano/Api/Internal/OperationalCertificate.hs @@ -18,24 +18,24 @@ module Cardano.Api.Internal.OperationalCertificate ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.Tx.Sign - -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Shelley -import qualified Cardano.Protocol.TPraos.OCert as Shelley - -import Data.Word +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.Tx.Sign + +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Shelley +import Cardano.Protocol.TPraos.OCert qualified as Shelley + +import Data.Word -- ---------------------------------------------------------------------------- -- Operational certificates diff --git a/cardano-api/src/Cardano/Api/Internal/Orphans.hs b/cardano-api/src/Cardano/Api/Internal/Orphans.hs index 0391bd46c2..508d1b9795 100644 --- a/cardano-api/src/Cardano/Api/Internal/Orphans.hs +++ b/cardano-api/src/Cardano/Api/Internal/Orphans.hs @@ -15,89 +15,89 @@ module Cardano.Api.Internal.Orphans () where -import Cardano.Api.Internal.Pretty (Pretty (..), prettyException, (<+>)) -import Cardano.Api.Internal.Via.ShowOf - -import Cardano.Binary (DecoderError (..)) -import qualified Cardano.Chain.Byron.API as L -import qualified Cardano.Chain.Common as L -import qualified Cardano.Chain.Delegation.Validation.Scheduling as L.Scheduling -import qualified Cardano.Chain.Update as L -import qualified Cardano.Chain.Update.Validation.Endorsement as L.Endorsement -import qualified Cardano.Chain.Update.Validation.Interface as L.Interface -import qualified Cardano.Chain.Update.Validation.Registration as L.Registration -import qualified Cardano.Chain.Update.Validation.Voting as L.Voting -import qualified Cardano.Chain.UTxO.UTxO as L -import qualified Cardano.Chain.UTxO.Validation as L -import qualified Cardano.Ledger.Allegra.Rules as L -import qualified Cardano.Ledger.Alonzo.PParams as Ledger -import qualified Cardano.Ledger.Alonzo.Rules as L -import qualified Cardano.Ledger.Alonzo.Tx as L -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Babbage.PParams as Ledger -import qualified Cardano.Ledger.Babbage.Rules as L -import Cardano.Ledger.BaseTypes (strictMaybeToMaybe) -import qualified Cardano.Ledger.BaseTypes as L -import qualified Cardano.Ledger.BaseTypes as Ledger -import Cardano.Ledger.Binary -import qualified Cardano.Ledger.Binary.Plain as Plain -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Conway.PParams as Ledger -import qualified Cardano.Ledger.Conway.Rules as L -import qualified Cardano.Ledger.Conway.TxCert as L -import qualified Cardano.Ledger.Core as L -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Crypto as CC (Crypto) -import qualified Cardano.Ledger.Crypto as Crypto -import qualified Cardano.Ledger.Crypto as L -import Cardano.Ledger.HKD (NoUpdate (..)) -import qualified Cardano.Ledger.Keys as L.Keys -import qualified Cardano.Ledger.SafeHash as L -import qualified Cardano.Ledger.Shelley.API.Mempool as L -import qualified Cardano.Ledger.Shelley.PParams as Ledger -import qualified Cardano.Ledger.Shelley.Rules as L -import qualified Cardano.Ledger.Shelley.TxBody as L -import qualified Cardano.Ledger.Shelley.TxCert as L -import qualified Cardano.Protocol.TPraos.API as Ledger -import Cardano.Protocol.TPraos.BHeader (HashHeader (..)) -import qualified Cardano.Protocol.TPraos.Rules.Prtcl as L -import qualified Cardano.Protocol.TPraos.Rules.Prtcl as Ledger -import qualified Cardano.Protocol.TPraos.Rules.Tickn as Ledger -import Ouroboros.Consensus.Byron.Ledger.Block (ByronHash (..)) -import Ouroboros.Consensus.HardFork.Combinator (OneEraHash (..)) -import Ouroboros.Consensus.Protocol.Praos (PraosState) -import qualified Ouroboros.Consensus.Protocol.Praos as Consensus -import Ouroboros.Consensus.Protocol.TPraos (TPraosState) -import qualified Ouroboros.Consensus.Protocol.TPraos as Consensus -import qualified Ouroboros.Consensus.Shelley.Eras as Consensus -import Ouroboros.Consensus.Shelley.Ledger.Block (ShelleyHash (..)) -import qualified Ouroboros.Consensus.Shelley.Ledger.Query as Consensus -import Ouroboros.Network.Block (HeaderHash, Tip (..)) -import qualified PlutusLedgerApi.Common as P -import qualified PlutusLedgerApi.V2 as V2 - -import qualified Codec.Binary.Bech32 as Bech32 -import qualified Codec.CBOR.Read as CBOR -import Data.Aeson (KeyValue ((.=)), ToJSON (..), ToJSONKey (..), object, pairs) -import qualified Data.Aeson as A -import qualified Data.Aeson as Aeson -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Short as SBS -import Data.Data (Data) -import Data.Kind (Constraint, Type) -import Data.ListMap (ListMap) -import qualified Data.ListMap as ListMap -import Data.Maybe.Strict (StrictMaybe (..)) -import Data.Monoid -import qualified Data.Text as T -import qualified Data.Text.Encoding as Text -import Data.Typeable (Typeable) -import GHC.Exts (IsList (..)) -import GHC.Generics -import GHC.Stack (HasCallStack) -import GHC.TypeLits -import Lens.Micro -import qualified Network.Mux as Mux +import Cardano.Api.Internal.Pretty (Pretty (..), prettyException, (<+>)) +import Cardano.Api.Internal.Via.ShowOf + +import Cardano.Binary (DecoderError (..)) +import Cardano.Chain.Byron.API qualified as L +import Cardano.Chain.Common qualified as L +import Cardano.Chain.Delegation.Validation.Scheduling qualified as L.Scheduling +import Cardano.Chain.UTxO.UTxO qualified as L +import Cardano.Chain.UTxO.Validation qualified as L +import Cardano.Chain.Update qualified as L +import Cardano.Chain.Update.Validation.Endorsement qualified as L.Endorsement +import Cardano.Chain.Update.Validation.Interface qualified as L.Interface +import Cardano.Chain.Update.Validation.Registration qualified as L.Registration +import Cardano.Chain.Update.Validation.Voting qualified as L.Voting +import Cardano.Ledger.Allegra.Rules qualified as L +import Cardano.Ledger.Alonzo.PParams qualified as Ledger +import Cardano.Ledger.Alonzo.Rules qualified as L +import Cardano.Ledger.Alonzo.Tx qualified as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Babbage.PParams qualified as Ledger +import Cardano.Ledger.Babbage.Rules qualified as L +import Cardano.Ledger.BaseTypes (strictMaybeToMaybe) +import Cardano.Ledger.BaseTypes qualified as L +import Cardano.Ledger.BaseTypes qualified as Ledger +import Cardano.Ledger.Binary +import Cardano.Ledger.Binary.Plain qualified as Plain +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Conway.PParams qualified as Ledger +import Cardano.Ledger.Conway.Rules qualified as L +import Cardano.Ledger.Conway.TxCert qualified as L +import Cardano.Ledger.Core qualified as L +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Crypto qualified as CC (Crypto) +import Cardano.Ledger.Crypto qualified as Crypto +import Cardano.Ledger.Crypto qualified as L +import Cardano.Ledger.HKD (NoUpdate (..)) +import Cardano.Ledger.Keys qualified as L.Keys +import Cardano.Ledger.SafeHash qualified as L +import Cardano.Ledger.Shelley.API.Mempool qualified as L +import Cardano.Ledger.Shelley.PParams qualified as Ledger +import Cardano.Ledger.Shelley.Rules qualified as L +import Cardano.Ledger.Shelley.TxBody qualified as L +import Cardano.Ledger.Shelley.TxCert qualified as L +import Cardano.Protocol.TPraos.API qualified as Ledger +import Cardano.Protocol.TPraos.BHeader (HashHeader (..)) +import Cardano.Protocol.TPraos.Rules.Prtcl qualified as L +import Cardano.Protocol.TPraos.Rules.Prtcl qualified as Ledger +import Cardano.Protocol.TPraos.Rules.Tickn qualified as Ledger +import Ouroboros.Consensus.Byron.Ledger.Block (ByronHash (..)) +import Ouroboros.Consensus.HardFork.Combinator (OneEraHash (..)) +import Ouroboros.Consensus.Protocol.Praos (PraosState) +import Ouroboros.Consensus.Protocol.Praos qualified as Consensus +import Ouroboros.Consensus.Protocol.TPraos (TPraosState) +import Ouroboros.Consensus.Protocol.TPraos qualified as Consensus +import Ouroboros.Consensus.Shelley.Eras qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger.Block (ShelleyHash (..)) +import Ouroboros.Consensus.Shelley.Ledger.Query qualified as Consensus +import Ouroboros.Network.Block (HeaderHash, Tip (..)) +import PlutusLedgerApi.Common qualified as P +import PlutusLedgerApi.V2 qualified as V2 + +import Codec.Binary.Bech32 qualified as Bech32 +import Codec.CBOR.Read qualified as CBOR +import Data.Aeson (KeyValue ((.=)), ToJSON (..), ToJSONKey (..), object, pairs) +import Data.Aeson qualified as A +import Data.Aeson qualified as Aeson +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Short qualified as SBS +import Data.Data (Data) +import Data.Kind (Constraint, Type) +import Data.ListMap (ListMap) +import Data.ListMap qualified as ListMap +import Data.Maybe.Strict (StrictMaybe (..)) +import Data.Monoid +import Data.Text qualified as T +import Data.Text.Encoding qualified as Text +import Data.Typeable (Typeable) +import GHC.Exts (IsList (..)) +import GHC.Generics +import GHC.Stack (HasCallStack) +import GHC.TypeLits +import Lens.Micro +import Network.Mux qualified as Mux deriving instance Generic (L.ApplyTxError era) diff --git a/cardano-api/src/Cardano/Api/Internal/Plutus.hs b/cardano-api/src/Cardano/Api/Internal/Plutus.hs index 0a4ffddf7c..8f8c096833 100644 --- a/cardano-api/src/Cardano/Api/Internal/Plutus.hs +++ b/cardano-api/src/Cardano/Api/Internal/Plutus.hs @@ -9,39 +9,41 @@ module Cardano.Api.Internal.Plutus ) where -import Cardano.Api.Internal.Eon.AlonzoEraOnwards (AlonzoEraOnwards (..), - alonzoEraOnwardsConstraints) -import Cardano.Api.Internal.Eon.Convert (convert) -import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyLedgerEra) -import Cardano.Api.Internal.Pretty (Pretty (pretty), docToText) -import Cardano.Api.Internal.Query (toLedgerUTxO) -import qualified Cardano.Api.Internal.ReexposeLedger as L -import Cardano.Api.Internal.Script (ScriptHash, fromShelleyScriptHash) -import qualified Cardano.Api.Internal.Script as Api -import Cardano.Api.Internal.Tx.Body (ScriptWitnessIndex (..), toScriptIndex) -import Cardano.Api.Internal.Tx.Sign (Tx (..)) -import Cardano.Api.Internal.Tx.UTxO (UTxO) +import Cardano.Api.Internal.Eon.AlonzoEraOnwards + ( AlonzoEraOnwards (..) + , alonzoEraOnwardsConstraints + ) +import Cardano.Api.Internal.Eon.Convert (convert) +import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyLedgerEra) +import Cardano.Api.Internal.Pretty (Pretty (pretty), docToText) +import Cardano.Api.Internal.Query (toLedgerUTxO) +import Cardano.Api.Internal.ReexposeLedger qualified as L +import Cardano.Api.Internal.Script (ScriptHash, fromShelleyScriptHash) +import Cardano.Api.Internal.Script qualified as Api +import Cardano.Api.Internal.Tx.Body (ScriptWitnessIndex (..), toScriptIndex) +import Cardano.Api.Internal.Tx.Sign (Tx (..)) +import Cardano.Api.Internal.Tx.UTxO (UTxO) -import qualified Cardano.Ledger.Alonzo.Scripts as L -import qualified Cardano.Ledger.Alonzo.UTxO as Alonzo -import Cardano.Ledger.Binary.Encoding (serialize') -import Cardano.Ledger.Binary.Plain (serializeAsHexText) -import qualified Cardano.Ledger.Plutus.Evaluate as Plutus -import qualified Cardano.Ledger.Plutus.ExUnits as Plutus -import qualified Cardano.Ledger.Plutus.Language as Plutus -import qualified Cardano.Ledger.UTxO as L -import qualified PlutusLedgerApi.V1 as Plutus +import Cardano.Ledger.Alonzo.Scripts qualified as L +import Cardano.Ledger.Alonzo.UTxO qualified as Alonzo +import Cardano.Ledger.Binary.Encoding (serialize') +import Cardano.Ledger.Binary.Plain (serializeAsHexText) +import Cardano.Ledger.Plutus.Evaluate qualified as Plutus +import Cardano.Ledger.Plutus.ExUnits qualified as Plutus +import Cardano.Ledger.Plutus.Language qualified as Plutus +import Cardano.Ledger.UTxO qualified as L +import PlutusLedgerApi.V1 qualified as Plutus -import Data.Bifunctor (Bifunctor (..)) -import qualified Data.ByteString.Base64 as B64 -import qualified Data.ByteString.Short as BSS -import Data.Map (Map) -import qualified Data.Map as Map -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Lens.Micro ((^.)) -import Prettyprinter (indent, line) +import Data.Bifunctor (Bifunctor (..)) +import Data.ByteString.Base64 qualified as B64 +import Data.ByteString.Short qualified as BSS +import Data.Map (Map) +import Data.Map qualified as Map +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Lens.Micro ((^.)) +import Prettyprinter (indent, line) -- | A structured representation of Plutus script validation failures, -- providing detailed information about the failed execution for debugging purposes. diff --git a/cardano-api/src/Cardano/Api/Internal/Pretty.hs b/cardano-api/src/Cardano/Api/Internal/Pretty.hs index bf4bf922cb..87d3983520 100644 --- a/cardano-api/src/Cardano/Api/Internal/Pretty.hs +++ b/cardano-api/src/Cardano/Api/Internal/Pretty.hs @@ -22,13 +22,13 @@ module Cardano.Api.Internal.Pretty ) where -import Cardano.Api.Internal.Via.ShowOf +import Cardano.Api.Internal.Via.ShowOf -import Control.Exception.Safe -import qualified Data.Text as Text -import qualified Data.Text.Lazy as TextLazy -import Prettyprinter -import Prettyprinter.Render.Terminal +import Control.Exception.Safe +import Data.Text qualified as Text +import Data.Text.Lazy qualified as TextLazy +import Prettyprinter +import Prettyprinter.Render.Terminal -- | 'Ann' is the prettyprinter annotation for cardano-api and cardano-cli to enable the printing -- of colored output. This is a type alias for AnsiStyle. diff --git a/cardano-api/src/Cardano/Api/Internal/Protocol.hs b/cardano-api/src/Cardano/Api/Internal/Protocol.hs index 40e4ba0384..c8c9b19e1c 100644 --- a/cardano-api/src/Cardano/Api/Internal/Protocol.hs +++ b/cardano-api/src/Cardano/Api/Internal/Protocol.hs @@ -20,27 +20,27 @@ module Cardano.Api.Internal.Protocol ) where -import Cardano.Api.Internal.Modes - -import Ouroboros.Consensus.Block.Forging (BlockForging) -import Ouroboros.Consensus.Cardano -import Ouroboros.Consensus.Cardano.Block -import Ouroboros.Consensus.Cardano.ByronHFC (ByronBlockHFC) -import Ouroboros.Consensus.Cardano.Node -import Ouroboros.Consensus.HardFork.Combinator.Embed.Unary -import qualified Ouroboros.Consensus.Ledger.SupportsProtocol as Consensus (LedgerSupportsProtocol) -import Ouroboros.Consensus.Node.ProtocolInfo (ProtocolClientInfo (..), ProtocolInfo (..)) -import Ouroboros.Consensus.Node.Run (RunNode) -import qualified Ouroboros.Consensus.Protocol.TPraos as Consensus -import qualified Ouroboros.Consensus.Shelley.Eras as Consensus (ShelleyEra) -import qualified Ouroboros.Consensus.Shelley.Ledger.Block as Consensus (ShelleyBlock) -import Ouroboros.Consensus.Shelley.Ledger.SupportsProtocol () -import Ouroboros.Consensus.Shelley.ShelleyHFC (ShelleyBlockHFC) -import Ouroboros.Consensus.Util.IOLike (IOLike) - -import Data.Bifunctor (bimap) - -import Type.Reflection ((:~:) (..)) +import Cardano.Api.Internal.Modes + +import Ouroboros.Consensus.Block.Forging (BlockForging) +import Ouroboros.Consensus.Cardano +import Ouroboros.Consensus.Cardano.Block +import Ouroboros.Consensus.Cardano.ByronHFC (ByronBlockHFC) +import Ouroboros.Consensus.Cardano.Node +import Ouroboros.Consensus.HardFork.Combinator.Embed.Unary +import Ouroboros.Consensus.Ledger.SupportsProtocol qualified as Consensus (LedgerSupportsProtocol) +import Ouroboros.Consensus.Node.ProtocolInfo (ProtocolClientInfo (..), ProtocolInfo (..)) +import Ouroboros.Consensus.Node.Run (RunNode) +import Ouroboros.Consensus.Protocol.TPraos qualified as Consensus +import Ouroboros.Consensus.Shelley.Eras qualified as Consensus (ShelleyEra) +import Ouroboros.Consensus.Shelley.Ledger.Block qualified as Consensus (ShelleyBlock) +import Ouroboros.Consensus.Shelley.Ledger.SupportsProtocol () +import Ouroboros.Consensus.Shelley.ShelleyHFC (ShelleyBlockHFC) +import Ouroboros.Consensus.Util.IOLike (IOLike) + +import Data.Bifunctor (bimap) + +import Type.Reflection ((:~:) (..)) class (RunNode blk, IOLike m) => Protocol m blk where data ProtocolInfoArgs blk diff --git a/cardano-api/src/Cardano/Api/Internal/ProtocolParameters.hs b/cardano-api/src/Cardano/Api/Internal/ProtocolParameters.hs index 675a45393c..f0b27aba9e 100644 --- a/cardano-api/src/Cardano/Api/Internal/ProtocolParameters.hs +++ b/cardano-api/src/Cardano/Api/Internal/ProtocolParameters.hs @@ -95,68 +95,76 @@ module Cardano.Api.Internal.ProtocolParameters ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Json (toRationalJSON) -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.StakePoolMetadata -import Cardano.Api.Internal.TxMetadata -import Cardano.Api.Internal.Utils -import Cardano.Api.Internal.Value - -import qualified Cardano.Binary as CBOR -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Ledger.Alonzo.PParams as Ledger -import qualified Cardano.Ledger.Alonzo.Scripts as Alonzo -import qualified Cardano.Ledger.Api.Era as Ledger -import Cardano.Ledger.Api.PParams -import qualified Cardano.Ledger.Babbage.Core as Ledger -import Cardano.Ledger.BaseTypes (strictMaybeToMaybe) -import qualified Cardano.Ledger.BaseTypes as Ledger -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Conway.PParams as Ledger -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Ledger -import qualified Cardano.Ledger.Plutus.CostModels as Plutus -import qualified Cardano.Ledger.Plutus.Language as Plutus -import qualified Cardano.Ledger.Shelley.API as Ledger -import Cardano.Slotting.Slot (EpochNo (..)) -import PlutusLedgerApi.Common (CostModelApplyError) - -import Control.Monad -import Data.Aeson (FromJSON (..), ToJSON (..), object, withObject, (.!=), (.:), (.:?), - (.=)) -import Data.Bifunctor (bimap, first) -import Data.ByteString (ByteString) -import Data.Data (Data) -import Data.Either.Combinators (maybeToRight) -import Data.Int (Int64) -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Maybe (isJust) -import Data.Maybe.Strict (StrictMaybe (..)) -import Data.String (IsString) -import Data.Text (Text) -import Data.Word -import GHC.Exts (IsList (..)) -import GHC.Generics -import Lens.Micro -import Numeric.Natural -import Text.PrettyBy.Default (display) +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Json (toRationalJSON) +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.StakePoolMetadata +import Cardano.Api.Internal.TxMetadata +import Cardano.Api.Internal.Utils +import Cardano.Api.Internal.Value + +import Cardano.Binary qualified as CBOR +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Ledger.Alonzo.PParams qualified as Ledger +import Cardano.Ledger.Alonzo.Scripts qualified as Alonzo +import Cardano.Ledger.Api.Era qualified as Ledger +import Cardano.Ledger.Api.PParams +import Cardano.Ledger.Babbage.Core qualified as Ledger +import Cardano.Ledger.BaseTypes (strictMaybeToMaybe) +import Cardano.Ledger.BaseTypes qualified as Ledger +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Conway.PParams qualified as Ledger +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Ledger +import Cardano.Ledger.Plutus.CostModels qualified as Plutus +import Cardano.Ledger.Plutus.Language qualified as Plutus +import Cardano.Ledger.Shelley.API qualified as Ledger +import Cardano.Slotting.Slot (EpochNo (..)) +import PlutusLedgerApi.Common (CostModelApplyError) + +import Control.Monad +import Data.Aeson + ( FromJSON (..) + , ToJSON (..) + , object + , withObject + , (.!=) + , (.:) + , (.:?) + , (.=) + ) +import Data.Bifunctor (bimap, first) +import Data.ByteString (ByteString) +import Data.Data (Data) +import Data.Either.Combinators (maybeToRight) +import Data.Int (Int64) +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Maybe (isJust) +import Data.Maybe.Strict (StrictMaybe (..)) +import Data.String (IsString) +import Data.Text (Text) +import Data.Word +import GHC.Exts (IsList (..)) +import GHC.Generics +import Lens.Micro +import Numeric.Natural +import Text.PrettyBy.Default (display) -- ----------------------------------------------------------------------------- -- Era based ledger protocol parameters diff --git a/cardano-api/src/Cardano/Api/Internal/Query.hs b/cardano-api/src/Cardano/Api/Internal/Query.hs index 86d235d904..b7b41e096d 100644 --- a/cardano-api/src/Cardano/Api/Internal/Query.hs +++ b/cardano-api/src/Cardano/Api/Internal/Query.hs @@ -64,74 +64,74 @@ module Cardano.Api.Internal.Query ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.GenesisParameters -import Cardano.Api.Internal.IPC.Version -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.Modes -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query.Types -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.UTxO - -import qualified Cardano.Chain.Update.Validation.Interface as Byron.Update -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Api.State.Query as L -import Cardano.Ledger.Binary -import qualified Cardano.Ledger.Binary.Plain as Plain -import qualified Cardano.Ledger.CertState as L -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Credential as Shelley -import Cardano.Ledger.Crypto (Crypto) -import qualified Cardano.Ledger.Shelley.API as Shelley -import qualified Cardano.Ledger.Shelley.Core as Core -import qualified Cardano.Ledger.Shelley.LedgerState as L -import qualified Cardano.Ledger.Shelley.LedgerState as Shelley -import Cardano.Slotting.EpochInfo (hoistEpochInfo) -import Cardano.Slotting.Slot (WithOrigin (..)) -import Cardano.Slotting.Time (SystemStart (..)) -import Ouroboros.Consensus.BlockchainTime.WallClock.Types (RelativeTime, SlotLength) -import qualified Ouroboros.Consensus.Byron.Ledger as Consensus -import Ouroboros.Consensus.Cardano.Block (LedgerState (..), StandardCrypto) -import qualified Ouroboros.Consensus.Cardano.Block as Consensus -import qualified Ouroboros.Consensus.HardFork.Combinator as Consensus -import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (EraMismatch) -import qualified Ouroboros.Consensus.HardFork.Combinator.AcrossEras as Consensus -import qualified Ouroboros.Consensus.HardFork.History as Consensus -import qualified Ouroboros.Consensus.HardFork.History as History -import qualified Ouroboros.Consensus.HardFork.History.Qry as Qry -import qualified Ouroboros.Consensus.Ledger.Query as Consensus -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger as Consensus -import qualified Ouroboros.Consensus.Shelley.Ledger.Query.Types as Consensus -import Ouroboros.Network.Block (Serialised (..)) -import Ouroboros.Network.NodeToClient.Version (NodeToClientVersion (..)) -import Ouroboros.Network.PeerSelection.LedgerPeers.Type (LedgerPeerSnapshot) -import Ouroboros.Network.Protocol.LocalStateQuery.Client (Some (..)) - -import Control.Monad.Trans.Except -import Data.Bifunctor (bimap, first) -import qualified Data.ByteString.Lazy as LBS -import Data.Either.Combinators (rightToMaybe) -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Maybe (mapMaybe) -import Data.Sequence (Seq) -import Data.Set (Set) -import qualified Data.Set as Set -import Data.SOP.Constraint (SListI) -import Data.Text (Text) -import qualified Data.Text as Text -import Data.Word (Word64) -import GHC.Exts (IsList (..)) -import GHC.Stack +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.GenesisParameters +import Cardano.Api.Internal.IPC.Version +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.Modes +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query.Types +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.UTxO + +import Cardano.Chain.Update.Validation.Interface qualified as Byron.Update +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Api.State.Query qualified as L +import Cardano.Ledger.Binary +import Cardano.Ledger.Binary.Plain qualified as Plain +import Cardano.Ledger.CertState qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Credential qualified as Shelley +import Cardano.Ledger.Crypto (Crypto) +import Cardano.Ledger.Shelley.API qualified as Shelley +import Cardano.Ledger.Shelley.Core qualified as Core +import Cardano.Ledger.Shelley.LedgerState qualified as L +import Cardano.Ledger.Shelley.LedgerState qualified as Shelley +import Cardano.Slotting.EpochInfo (hoistEpochInfo) +import Cardano.Slotting.Slot (WithOrigin (..)) +import Cardano.Slotting.Time (SystemStart (..)) +import Ouroboros.Consensus.BlockchainTime.WallClock.Types (RelativeTime, SlotLength) +import Ouroboros.Consensus.Byron.Ledger qualified as Consensus +import Ouroboros.Consensus.Cardano.Block (LedgerState (..), StandardCrypto) +import Ouroboros.Consensus.Cardano.Block qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator qualified as Consensus +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras (EraMismatch) +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras qualified as Consensus +import Ouroboros.Consensus.HardFork.History qualified as Consensus +import Ouroboros.Consensus.HardFork.History qualified as History +import Ouroboros.Consensus.HardFork.History.Qry qualified as Qry +import Ouroboros.Consensus.Ledger.Query qualified as Consensus +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger qualified as Consensus +import Ouroboros.Consensus.Shelley.Ledger.Query.Types qualified as Consensus +import Ouroboros.Network.Block (Serialised (..)) +import Ouroboros.Network.NodeToClient.Version (NodeToClientVersion (..)) +import Ouroboros.Network.PeerSelection.LedgerPeers.Type (LedgerPeerSnapshot) +import Ouroboros.Network.Protocol.LocalStateQuery.Client (Some (..)) + +import Control.Monad.Trans.Except +import Data.Bifunctor (bimap, first) +import Data.ByteString.Lazy qualified as LBS +import Data.Either.Combinators (rightToMaybe) +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Maybe (mapMaybe) +import Data.SOP.Constraint (SListI) +import Data.Sequence (Seq) +import Data.Set (Set) +import Data.Set qualified as Set +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Word (Word64) +import GHC.Exts (IsList (..)) +import GHC.Stack -- ---------------------------------------------------------------------------- -- Queries diff --git a/cardano-api/src/Cardano/Api/Internal/Query/Expr.hs b/cardano-api/src/Cardano/Api/Internal/Query/Expr.hs index 1fb6011523..79e933be98 100644 --- a/cardano-api/src/Cardano/Api/Internal/Query/Expr.hs +++ b/cardano-api/src/Cardano/Api/Internal/Query/Expr.hs @@ -42,42 +42,42 @@ module Cardano.Api.Internal.Query.Expr ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.GenesisParameters -import Cardano.Api.Internal.IPC -import Cardano.Api.Internal.IPC.Monad -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.Tx.UTxO - -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Api.State.Query as L -import qualified Cardano.Ledger.CertState as L -import qualified Cardano.Ledger.Coin as L -import Cardano.Ledger.Core (EraCrypto) -import qualified Cardano.Ledger.Credential as L -import qualified Cardano.Ledger.Keys as L -import Cardano.Ledger.SafeHash -import qualified Cardano.Ledger.Shelley.LedgerState as L -import Cardano.Slotting.Slot -import Ouroboros.Consensus.HardFork.Combinator.AcrossEras as Consensus -import Ouroboros.Network.Block (Serialised) -import Ouroboros.Network.PeerSelection.LedgerPeers (LedgerPeerSnapshot) - -import Data.Map (Map) -import Data.Sequence (Seq) -import Data.Set (Set) -import qualified Data.Set as S +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.GenesisParameters +import Cardano.Api.Internal.IPC +import Cardano.Api.Internal.IPC.Monad +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.Tx.UTxO + +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Api.State.Query qualified as L +import Cardano.Ledger.CertState qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Core (EraCrypto) +import Cardano.Ledger.Credential qualified as L +import Cardano.Ledger.Keys qualified as L +import Cardano.Ledger.SafeHash +import Cardano.Ledger.Shelley.LedgerState qualified as L +import Cardano.Slotting.Slot +import Ouroboros.Consensus.HardFork.Combinator.AcrossEras as Consensus +import Ouroboros.Network.Block (Serialised) +import Ouroboros.Network.PeerSelection.LedgerPeers (LedgerPeerSnapshot) + +import Data.Map (Map) +import Data.Sequence (Seq) +import Data.Set (Set) +import Data.Set qualified as S queryChainBlockNo :: () diff --git a/cardano-api/src/Cardano/Api/Internal/Query/Types.hs b/cardano-api/src/Cardano/Api/Internal/Query/Types.hs index b098fc6e6a..910f08882f 100644 --- a/cardano-api/src/Cardano/Api/Internal/Query/Types.hs +++ b/cardano-api/src/Cardano/Api/Internal/Query/Types.hs @@ -8,15 +8,15 @@ module Cardano.Api.Internal.Query.Types ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Orphans () -import Cardano.Binary -import qualified Cardano.Ledger.Binary.Plain as Plain -import qualified Cardano.Ledger.Shelley.API as Shelley +import Cardano.Binary +import Cardano.Ledger.Binary.Plain qualified as Plain +import Cardano.Ledger.Shelley.API qualified as Shelley -import Data.Aeson (ToJSON (..), object, (.=)) -import qualified Data.Aeson as Aeson +import Data.Aeson (ToJSON (..), object, (.=)) +import Data.Aeson qualified as Aeson newtype DebugLedgerState era = DebugLedgerState { unDebugLedgerState :: Shelley.NewEpochState (ShelleyLedgerEra era) diff --git a/cardano-api/src/Cardano/Api/Internal/ReexposeConsensus.hs b/cardano-api/src/Cardano/Api/Internal/ReexposeConsensus.hs index 3b583eaeaa..2d0688c8d1 100644 --- a/cardano-api/src/Cardano/Api/Internal/ReexposeConsensus.hs +++ b/cardano-api/src/Cardano/Api/Internal/ReexposeConsensus.hs @@ -16,14 +16,19 @@ module Cardano.Api.Internal.ReexposeConsensus ) where -import Ouroboros.Consensus.Byron.Ledger (ByronBlock, GenTx (..), byronIdTx) -import Ouroboros.Consensus.Cardano.Block (EraMismatch (..)) -import Ouroboros.Consensus.HardFork.History.EpochInfo (interpreterToEpochInfo) -import Ouroboros.Consensus.HardFork.History.Qry (PastHorizonException, - unsafeExtendSafeZone) -import Ouroboros.Consensus.Ledger.SupportsMempool (txId) -import Ouroboros.Consensus.Protocol.Abstract (ChainDepState) -import Ouroboros.Consensus.Protocol.Praos.Common (PraosProtocolSupportsNode, - PraosProtocolSupportsNodeCrypto, getOpCertCounters) -import Ouroboros.Consensus.Shelley.Node (ShelleyGenesisStaking (..)) -import Ouroboros.Consensus.Util.Condense (condense) +import Ouroboros.Consensus.Byron.Ledger (ByronBlock, GenTx (..), byronIdTx) +import Ouroboros.Consensus.Cardano.Block (EraMismatch (..)) +import Ouroboros.Consensus.HardFork.History.EpochInfo (interpreterToEpochInfo) +import Ouroboros.Consensus.HardFork.History.Qry + ( PastHorizonException + , unsafeExtendSafeZone + ) +import Ouroboros.Consensus.Ledger.SupportsMempool (txId) +import Ouroboros.Consensus.Protocol.Abstract (ChainDepState) +import Ouroboros.Consensus.Protocol.Praos.Common + ( PraosProtocolSupportsNode + , PraosProtocolSupportsNodeCrypto + , getOpCertCounters + ) +import Ouroboros.Consensus.Shelley.Node (ShelleyGenesisStaking (..)) +import Ouroboros.Consensus.Util.Condense (condense) diff --git a/cardano-api/src/Cardano/Api/Internal/ReexposeLedger.hs b/cardano-api/src/Cardano/Api/Internal/ReexposeLedger.hs index 54264b9abd..fa42b65fa4 100644 --- a/cardano-api/src/Cardano/Api/Internal/ReexposeLedger.hs +++ b/cardano-api/src/Cardano/Api/Internal/ReexposeLedger.hs @@ -182,63 +182,172 @@ module Cardano.Api.Internal.ReexposeLedger ) where -import Cardano.Crypto.Hash.Class (hashFromBytes, hashToBytes) -import Cardano.Ledger.Address (RewardAccount (..)) -import Cardano.Ledger.Allegra.Scripts (showTimelock) -import Cardano.Ledger.Alonzo.Core (AlonzoEraScript (..), AlonzoEraTxBody (..), - AlonzoEraTxWits (..), AsIx (..), AsIxItem (AsIxItem), CoinPerWord (..), EraGov, - EraTx (bodyTxL, witsTxL), EraTxWits (..), PParamsUpdate (..), Tx, ppPricesL) -import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis) -import Cardano.Ledger.Alonzo.Scripts (AlonzoPlutusPurpose (..), CostModels, ExUnits (..), - Prices (..), Script, plutusScriptLanguage) -import Cardano.Ledger.Alonzo.TxWits (TxDats (..)) -import Cardano.Ledger.Api (Constitution (..), GovAction (..), unRedeemers) -import Cardano.Ledger.Api.Tx.Cert (pattern AuthCommitteeHotKeyTxCert, - pattern DelegStakeTxCert, pattern DelegTxCert, pattern GenesisDelegTxCert, - pattern MirTxCert, pattern RegDRepTxCert, pattern RegDepositDelegTxCert, - pattern RegDepositTxCert, pattern RegPoolTxCert, pattern RegTxCert, - pattern ResignCommitteeColdTxCert, pattern RetirePoolTxCert, - pattern UnRegDRepTxCert, pattern UnRegDepositTxCert, pattern UnRegTxCert) -import Cardano.Ledger.Babbage.Core (CoinPerByte (..), getNativeScript) -import Cardano.Ledger.BaseTypes (AnchorData (..), DnsName, EpochInterval (..), - Network (..), NonNegativeInterval, ProtVer (..), StrictMaybe (..), UnitInterval, - Url, boundRational, dnsToText, hashAnchorData, maybeToStrictMaybe, mkVersion, - portToWord16, strictMaybeToMaybe, textToDns, textToUrl, txIxToInt, - unboundRational, urlToText) -import Cardano.Ledger.Binary (Annotated (..), ByteSpan (..), byronProtVer, fromCBOR, - serialize', slice, toCBOR, toPlainDecoder) -import Cardano.Ledger.Binary.Plain (Decoder, serializeAsHexText) -import Cardano.Ledger.CertState (DRepState (..), csCommitteeCredsL) -import Cardano.Ledger.Coin (Coin (..), addDeltaCoin, toDeltaCoin) -import Cardano.Ledger.Conway.Core (DRepVotingThresholds (..), PoolVotingThresholds (..), - dvtPPEconomicGroupL, dvtPPGovGroupL, dvtPPNetworkGroupL, dvtPPTechnicalGroupL, - dvtUpdateToConstitutionL) -import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..)) -import Cardano.Ledger.Conway.Governance (Anchor (..), Committee (..), GovActionId (..), - GovActionIx (..), GovActionState (..), GovState, ProposalProcedure (..), - Vote (..), Voter (..), VotingProcedure (..), VotingProcedures (..)) -import Cardano.Ledger.Conway.PParams (UpgradeConwayPParams (..)) -import Cardano.Ledger.Conway.Scripts (ConwayPlutusPurpose (..)) -import Cardano.Ledger.Conway.TxCert (ConwayDelegCert (..), ConwayEraTxCert (..), - ConwayGovCert (..), ConwayTxCert (..), Delegatee (..), pattern UpdateDRepTxCert) -import Cardano.Ledger.Core (Era (..), EraPParams (..), EraTxOut, PParams (..), - PoolCert (..), Value, fromEraCBOR, ppMinFeeAL, ppMinUTxOValueL, toEraCBOR) -import Cardano.Ledger.Credential (Credential (..), credToText) -import Cardano.Ledger.Crypto (ADDRHASH, Crypto, StandardCrypto) -import Cardano.Ledger.DRep (DRep (..), drepAnchorL, drepDepositL, drepExpiryL) -import Cardano.Ledger.Keys (HasKeyRole, KeyHash (..), KeyRole (..), VKey (..), - fromVRFVerKeyHash, hashWithSerialiser, toVRFVerKeyHash) -import Cardano.Ledger.Plutus.Data (Data (..), unData) -import Cardano.Ledger.Plutus.Language (Language, Plutus, languageToText, plutusBinary) -import Cardano.Ledger.PoolParams (PoolMetadata (..), PoolParams (..), StakePoolRelay (..)) -import Cardano.Ledger.SafeHash (SafeHash, castSafeHash, extractHash, unsafeMakeSafeHash) -import Cardano.Ledger.Shelley.API (AccountState (..), GenDelegPair (..), - NewEpochState (..), StakeReference (..), WitVKey (..), hashKey, hashVerKeyVRF) -import Cardano.Ledger.Shelley.Genesis (ShelleyGenesisStaking (..), - secondsToNominalDiffTimeMicro) -import Cardano.Ledger.Shelley.LedgerState (PState (..)) -import Cardano.Ledger.Shelley.TxCert (EraTxCert (..), GenesisDelegCert (..), MIRCert (..), - MIRPot (..), MIRTarget (..), ShelleyDelegCert (..), ShelleyEraTxCert (..), - ShelleyTxCert (..)) -import Cardano.Ledger.TxIn (TxId (..), TxIn (..)) -import Cardano.Slotting.Slot (EpochNo (..)) +import Cardano.Crypto.Hash.Class (hashFromBytes, hashToBytes) +import Cardano.Ledger.Address (RewardAccount (..)) +import Cardano.Ledger.Allegra.Scripts (showTimelock) +import Cardano.Ledger.Alonzo.Core + ( AlonzoEraScript (..) + , AlonzoEraTxBody (..) + , AlonzoEraTxWits (..) + , AsIx (..) + , AsIxItem (AsIxItem) + , CoinPerWord (..) + , EraGov + , EraTx (bodyTxL, witsTxL) + , EraTxWits (..) + , PParamsUpdate (..) + , Tx + , ppPricesL + ) +import Cardano.Ledger.Alonzo.Genesis (AlonzoGenesis) +import Cardano.Ledger.Alonzo.Scripts + ( AlonzoPlutusPurpose (..) + , CostModels + , ExUnits (..) + , Prices (..) + , Script + , plutusScriptLanguage + ) +import Cardano.Ledger.Alonzo.TxWits (TxDats (..)) +import Cardano.Ledger.Api (Constitution (..), GovAction (..), unRedeemers) +import Cardano.Ledger.Api.Tx.Cert + ( pattern AuthCommitteeHotKeyTxCert + , pattern DelegStakeTxCert + , pattern DelegTxCert + , pattern GenesisDelegTxCert + , pattern MirTxCert + , pattern RegDRepTxCert + , pattern RegDepositDelegTxCert + , pattern RegDepositTxCert + , pattern RegPoolTxCert + , pattern RegTxCert + , pattern ResignCommitteeColdTxCert + , pattern RetirePoolTxCert + , pattern UnRegDRepTxCert + , pattern UnRegDepositTxCert + , pattern UnRegTxCert + ) +import Cardano.Ledger.Babbage.Core (CoinPerByte (..), getNativeScript) +import Cardano.Ledger.BaseTypes + ( AnchorData (..) + , DnsName + , EpochInterval (..) + , Network (..) + , NonNegativeInterval + , ProtVer (..) + , StrictMaybe (..) + , UnitInterval + , Url + , boundRational + , dnsToText + , hashAnchorData + , maybeToStrictMaybe + , mkVersion + , portToWord16 + , strictMaybeToMaybe + , textToDns + , textToUrl + , txIxToInt + , unboundRational + , urlToText + ) +import Cardano.Ledger.Binary + ( Annotated (..) + , ByteSpan (..) + , byronProtVer + , fromCBOR + , serialize' + , slice + , toCBOR + , toPlainDecoder + ) +import Cardano.Ledger.Binary.Plain (Decoder, serializeAsHexText) +import Cardano.Ledger.CertState (DRepState (..), csCommitteeCredsL) +import Cardano.Ledger.Coin (Coin (..), addDeltaCoin, toDeltaCoin) +import Cardano.Ledger.Conway.Core + ( DRepVotingThresholds (..) + , PoolVotingThresholds (..) + , dvtPPEconomicGroupL + , dvtPPGovGroupL + , dvtPPNetworkGroupL + , dvtPPTechnicalGroupL + , dvtUpdateToConstitutionL + ) +import Cardano.Ledger.Conway.Genesis (ConwayGenesis (..)) +import Cardano.Ledger.Conway.Governance + ( Anchor (..) + , Committee (..) + , GovActionId (..) + , GovActionIx (..) + , GovActionState (..) + , GovState + , ProposalProcedure (..) + , Vote (..) + , Voter (..) + , VotingProcedure (..) + , VotingProcedures (..) + ) +import Cardano.Ledger.Conway.PParams (UpgradeConwayPParams (..)) +import Cardano.Ledger.Conway.Scripts (ConwayPlutusPurpose (..)) +import Cardano.Ledger.Conway.TxCert + ( ConwayDelegCert (..) + , ConwayEraTxCert (..) + , ConwayGovCert (..) + , ConwayTxCert (..) + , Delegatee (..) + , pattern UpdateDRepTxCert + ) +import Cardano.Ledger.Core + ( Era (..) + , EraPParams (..) + , EraTxOut + , PParams (..) + , PoolCert (..) + , Value + , fromEraCBOR + , ppMinFeeAL + , ppMinUTxOValueL + , toEraCBOR + ) +import Cardano.Ledger.Credential (Credential (..), credToText) +import Cardano.Ledger.Crypto (ADDRHASH, Crypto, StandardCrypto) +import Cardano.Ledger.DRep (DRep (..), drepAnchorL, drepDepositL, drepExpiryL) +import Cardano.Ledger.Keys + ( HasKeyRole + , KeyHash (..) + , KeyRole (..) + , VKey (..) + , fromVRFVerKeyHash + , hashWithSerialiser + , toVRFVerKeyHash + ) +import Cardano.Ledger.Plutus.Data (Data (..), unData) +import Cardano.Ledger.Plutus.Language (Language, Plutus, languageToText, plutusBinary) +import Cardano.Ledger.PoolParams (PoolMetadata (..), PoolParams (..), StakePoolRelay (..)) +import Cardano.Ledger.SafeHash (SafeHash, castSafeHash, extractHash, unsafeMakeSafeHash) +import Cardano.Ledger.Shelley.API + ( AccountState (..) + , GenDelegPair (..) + , NewEpochState (..) + , StakeReference (..) + , WitVKey (..) + , hashKey + , hashVerKeyVRF + ) +import Cardano.Ledger.Shelley.Genesis + ( ShelleyGenesisStaking (..) + , secondsToNominalDiffTimeMicro + ) +import Cardano.Ledger.Shelley.LedgerState (PState (..)) +import Cardano.Ledger.Shelley.TxCert + ( EraTxCert (..) + , GenesisDelegCert (..) + , MIRCert (..) + , MIRPot (..) + , MIRTarget (..) + , ShelleyDelegCert (..) + , ShelleyEraTxCert (..) + , ShelleyTxCert (..) + ) +import Cardano.Ledger.TxIn (TxId (..), TxIn (..)) +import Cardano.Slotting.Slot (EpochNo (..)) diff --git a/cardano-api/src/Cardano/Api/Internal/ReexposeNetwork.hs b/cardano-api/src/Cardano/Api/Internal/ReexposeNetwork.hs index 4478a5e884..2ff44a23ea 100644 --- a/cardano-api/src/Cardano/Api/Internal/ReexposeNetwork.hs +++ b/cardano-api/src/Cardano/Api/Internal/ReexposeNetwork.hs @@ -6,7 +6,7 @@ module Cardano.Api.Internal.ReexposeNetwork ) where -import Ouroboros.Network.Block (Serialised (..)) -import Ouroboros.Network.PeerSelection.LedgerPeers.Type (LedgerPeerSnapshot (..)) -import Ouroboros.Network.Protocol.LocalStateQuery.Type (Target (..)) -import Ouroboros.Network.Protocol.LocalTxSubmission.Type (SubmitResult (..)) +import Ouroboros.Network.Block (Serialised (..)) +import Ouroboros.Network.PeerSelection.LedgerPeers.Type (LedgerPeerSnapshot (..)) +import Ouroboros.Network.Protocol.LocalStateQuery.Type (Target (..)) +import Ouroboros.Network.Protocol.LocalTxSubmission.Type (SubmitResult (..)) diff --git a/cardano-api/src/Cardano/Api/Internal/Rewards.hs b/cardano-api/src/Cardano/Api/Internal/Rewards.hs index f60cf7e63f..48888e940a 100644 --- a/cardano-api/src/Cardano/Api/Internal/Rewards.hs +++ b/cardano-api/src/Cardano/Api/Internal/Rewards.hs @@ -4,17 +4,17 @@ module Cardano.Api.Internal.Rewards ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate -import qualified Cardano.Ledger.Coin as L +import Cardano.Ledger.Coin qualified as L -import Data.Aeson as Aeson -import qualified Data.Aeson.Types as Aeson -import Data.List (nub) -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import GHC.Exts (IsList (..)) +import Data.Aeson as Aeson +import Data.Aeson.Types qualified as Aeson +import Data.List (nub) +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import GHC.Exts (IsList (..)) -- | A mapping of Shelley reward accounts to both the stake pool that they -- delegate to and their reward account balance. diff --git a/cardano-api/src/Cardano/Api/Internal/Script.hs b/cardano-api/src/Cardano/Api/Internal/Script.hs index e199d2a0d4..434a20a77b 100644 --- a/cardano-api/src/Cardano/Api/Internal/Script.hs +++ b/cardano-api/src/Cardano/Api/Internal/Script.hs @@ -121,65 +121,65 @@ module Cardano.Api.Internal.Script ) where -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.ScriptData -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseTextEnvelope -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.TxIn -import Cardano.Api.Internal.Utils (failEitherWith) - -import qualified Cardano.Binary as CBOR -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Ledger.Allegra.Scripts as Allegra -import qualified Cardano.Ledger.Allegra.Scripts as Timelock -import qualified Cardano.Ledger.Alonzo.Scripts as Alonzo -import qualified Cardano.Ledger.Babbage.Scripts as Babbage -import Cardano.Ledger.BaseTypes (StrictMaybe (..)) -import qualified Cardano.Ledger.Binary as Binary (decCBOR, decodeFullAnnotator) -import qualified Cardano.Ledger.Conway.Scripts as Conway -import Cardano.Ledger.Core (Era (EraCrypto)) -import qualified Cardano.Ledger.Core as Ledger -import qualified Cardano.Ledger.Keys as Shelley -import qualified Cardano.Ledger.Plutus.Language as Plutus -import qualified Cardano.Ledger.Shelley.Scripts as Shelley -import Cardano.Slotting.Slot (SlotNo) -import Ouroboros.Consensus.Shelley.Eras (StandardCrypto) -import qualified PlutusLedgerApi.Test.Examples as Plutus - -import qualified Codec.CBOR.Read as CBOR -import Control.Applicative -import Control.Monad -import Data.Aeson (Value (..), object, (.:), (.=)) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Types as Aeson -import Data.Bifunctor -import qualified Data.ByteString.Lazy as LBS -import Data.ByteString.Short (ShortByteString) -import qualified Data.ByteString.Short as SBS -import Data.Either.Combinators (maybeToRight) -import Data.Functor -import Data.Scientific (toBoundedInteger) -import Data.String (IsString) -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) -import Data.Typeable (Typeable) -import Data.Vector (Vector) -import qualified Formatting as B -import GHC.Exts (IsList (..)) -import Numeric.Natural (Natural) -import Prettyprinter +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.ScriptData +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseTextEnvelope +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.TxIn +import Cardano.Api.Internal.Utils (failEitherWith) + +import Cardano.Binary qualified as CBOR +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Ledger.Allegra.Scripts qualified as Allegra +import Cardano.Ledger.Allegra.Scripts qualified as Timelock +import Cardano.Ledger.Alonzo.Scripts qualified as Alonzo +import Cardano.Ledger.Babbage.Scripts qualified as Babbage +import Cardano.Ledger.BaseTypes (StrictMaybe (..)) +import Cardano.Ledger.Binary qualified as Binary (decCBOR, decodeFullAnnotator) +import Cardano.Ledger.Conway.Scripts qualified as Conway +import Cardano.Ledger.Core (Era (EraCrypto)) +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Ledger.Keys qualified as Shelley +import Cardano.Ledger.Plutus.Language qualified as Plutus +import Cardano.Ledger.Shelley.Scripts qualified as Shelley +import Cardano.Slotting.Slot (SlotNo) +import Ouroboros.Consensus.Shelley.Eras (StandardCrypto) +import PlutusLedgerApi.Test.Examples qualified as Plutus + +import Codec.CBOR.Read qualified as CBOR +import Control.Applicative +import Control.Monad +import Data.Aeson (Value (..), object, (.:), (.=)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Types qualified as Aeson +import Data.Bifunctor +import Data.ByteString.Lazy qualified as LBS +import Data.ByteString.Short (ShortByteString) +import Data.ByteString.Short qualified as SBS +import Data.Either.Combinators (maybeToRight) +import Data.Functor +import Data.Scientific (toBoundedInteger) +import Data.String (IsString) +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) +import Data.Typeable (Typeable) +import Data.Vector (Vector) +import Formatting qualified as B +import GHC.Exts (IsList (..)) +import Numeric.Natural (Natural) +import Prettyprinter -- ---------------------------------------------------------------------------- -- Types for script language and version diff --git a/cardano-api/src/Cardano/Api/Internal/ScriptData.hs b/cardano-api/src/Cardano/Api/Internal/ScriptData.hs index e63c3332ac..15fd0aec53 100644 --- a/cardano-api/src/Cardano/Api/Internal/ScriptData.hs +++ b/cardano-api/src/Cardano/Api/Internal/ScriptData.hs @@ -45,52 +45,52 @@ module Cardano.Api.Internal.ScriptData ) where -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.TxMetadata (pBytes, pSigned, parseAll) - -import qualified Cardano.Binary as CBOR -import qualified Cardano.Crypto.Hash.Class as Crypto -import Cardano.Ledger.Core (Era) -import qualified Cardano.Ledger.Plutus.Data as Plutus -import qualified Cardano.Ledger.SafeHash as Ledger -import Ouroboros.Consensus.Shelley.Eras (StandardAlonzo, StandardCrypto) -import qualified PlutusLedgerApi.V1 as PlutusAPI - -import Codec.Serialise.Class (Serialise (..)) -import Control.Applicative (Alternative (..)) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Key as Aeson -import qualified Data.Aeson.KeyMap as KeyMap -import qualified Data.Aeson.Text as Aeson.Text -import qualified Data.Attoparsec.ByteString.Char8 as Atto -import Data.Bifunctor (first) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Char8 as BSC -import qualified Data.ByteString.Lazy.Char8 as LBS -import qualified Data.ByteString.Short as SB -import qualified Data.Char as Char -import Data.Data (Data) -import Data.Either.Combinators -import qualified Data.List as List -import Data.Maybe (fromMaybe) -import qualified Data.Scientific as Scientific -import Data.String (IsString) -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import qualified Data.Text.Lazy as Text.Lazy -import Data.Word -import GHC.Exts (IsList (..)) +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.TxMetadata (pBytes, pSigned, parseAll) + +import Cardano.Binary qualified as CBOR +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Ledger.Core (Era) +import Cardano.Ledger.Plutus.Data qualified as Plutus +import Cardano.Ledger.SafeHash qualified as Ledger +import Ouroboros.Consensus.Shelley.Eras (StandardAlonzo, StandardCrypto) +import PlutusLedgerApi.V1 qualified as PlutusAPI + +import Codec.Serialise.Class (Serialise (..)) +import Control.Applicative (Alternative (..)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Key qualified as Aeson +import Data.Aeson.KeyMap qualified as KeyMap +import Data.Aeson.Text qualified as Aeson.Text +import Data.Attoparsec.ByteString.Char8 qualified as Atto +import Data.Bifunctor (first) +import Data.ByteString qualified as BS +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Char8 qualified as BSC +import Data.ByteString.Lazy.Char8 qualified as LBS +import Data.ByteString.Short qualified as SB +import Data.Char qualified as Char +import Data.Data (Data) +import Data.Either.Combinators +import Data.List qualified as List +import Data.Maybe (fromMaybe) +import Data.Scientific qualified as Scientific +import Data.String (IsString) +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Text.Lazy qualified as Text.Lazy +import Data.Word +import GHC.Exts (IsList (..)) -- Original script data bytes data HashableScriptData diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseBech32.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseBech32.hs index 8edb5c1349..10b0f49ecc 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseBech32.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseBech32.hs @@ -13,21 +13,21 @@ module Cardano.Api.Internal.SerialiseBech32 ) where -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.Utils - -import qualified Codec.Binary.Bech32 as Bech32 -import Control.Monad (guard) -import Data.ByteString (ByteString) -import Data.Data (Data) -import qualified Data.List as List -import Data.Set (Set) -import Data.Text (Text) -import GHC.Exts (IsList (..)) +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.Utils + +import Codec.Binary.Bech32 qualified as Bech32 +import Control.Monad (guard) +import Data.ByteString (ByteString) +import Data.Data (Data) +import Data.List qualified as List +import Data.Set (Set) +import Data.Text (Text) +import GHC.Exts (IsList (..)) class (HasTypeProxy a, SerialiseAsRawBytes a) => SerialiseAsBech32 a where -- | The human readable prefix to use when encoding this value to Bech32. diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseCBOR.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseCBOR.hs index 9859089a97..1bb1ab8dd6 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseCBOR.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseCBOR.hs @@ -8,12 +8,12 @@ module Cardano.Api.Internal.SerialiseCBOR ) where -import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.HasTypeProxy -import Cardano.Binary (FromCBOR, ToCBOR) -import qualified Cardano.Binary as CBOR +import Cardano.Binary (FromCBOR, ToCBOR) +import Cardano.Binary qualified as CBOR -import Data.ByteString (ByteString) +import Data.ByteString (ByteString) class HasTypeProxy a => SerialiseAsCBOR a where serialiseToCBOR :: a -> ByteString diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseJSON.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseJSON.hs index ab1221a7f2..8e6a9c6913 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseJSON.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseJSON.hs @@ -15,19 +15,19 @@ module Cardano.Api.Internal.SerialiseJSON ) where -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Pretty -import Control.Monad.Trans.Except (runExceptT) -import Control.Monad.Trans.Except.Extra (firstExceptT, handleIOExceptT, hoistEither) -import Data.Aeson (FromJSON (..), FromJSONKey, ToJSON (..), ToJSONKey) -import qualified Data.Aeson as Aeson -import Data.Aeson.Encode.Pretty (encodePretty) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Lazy as LBS -import Data.Data (Data) +import Control.Monad.Trans.Except (runExceptT) +import Control.Monad.Trans.Except.Extra (firstExceptT, handleIOExceptT, hoistEither) +import Data.Aeson (FromJSON (..), FromJSONKey, ToJSON (..), ToJSONKey) +import Data.Aeson qualified as Aeson +import Data.Aeson.Encode.Pretty (encodePretty) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Lazy qualified as LBS +import Data.Data (Data) newtype JsonDecodeError = JsonDecodeError String deriving (Eq, Show, Data) diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseLedgerCddl.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseLedgerCddl.hs index 6b187972e9..3e4998ce74 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseLedgerCddl.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseLedgerCddl.hs @@ -32,34 +32,44 @@ module Cardano.Api.Internal.SerialiseLedgerCddl ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseTextEnvelope (TextEnvelope (..), - TextEnvelopeDescr (TextEnvelopeDescr), TextEnvelopeError (..), - TextEnvelopeType (TextEnvelopeType), deserialiseFromTextEnvelope, - legacyComparison, serialiseToTextEnvelope) -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.Utils +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseTextEnvelope + ( TextEnvelope (..) + , TextEnvelopeDescr (TextEnvelopeDescr) + , TextEnvelopeError (..) + , TextEnvelopeType (TextEnvelopeType) + , deserialiseFromTextEnvelope + , legacyComparison + , serialiseToTextEnvelope + ) +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.Utils -import qualified Cardano.Chain.UTxO as Byron -import Cardano.Ledger.Binary (DecoderError) -import qualified Cardano.Ledger.Binary as CBOR +import Cardano.Chain.UTxO qualified as Byron +import Cardano.Ledger.Binary (DecoderError) +import Cardano.Ledger.Binary qualified as CBOR -import Control.Monad.Trans.Except.Extra (firstExceptT, handleIOExceptT, hoistEither, - newExceptT, runExceptT) -import qualified Data.Aeson as Aeson -import Data.Aeson.Encode.Pretty (Config (..), defConfig, encodePretty', keyOrder) -import Data.Bifunctor (first) -import Data.ByteString (ByteString) -import qualified Data.ByteString.Lazy as LBS -import Data.Data (Data) -import Data.Either.Combinators (mapLeft) -import qualified Data.List as List -import Data.Text (Text) -import qualified Data.Text as T +import Control.Monad.Trans.Except.Extra + ( firstExceptT + , handleIOExceptT + , hoistEither + , newExceptT + , runExceptT + ) +import Data.Aeson qualified as Aeson +import Data.Aeson.Encode.Pretty (Config (..), defConfig, encodePretty', keyOrder) +import Data.Bifunctor (first) +import Data.ByteString (ByteString) +import Data.ByteString.Lazy qualified as LBS +import Data.Data (Data) +import Data.Either.Combinators (mapLeft) +import Data.List qualified as List +import Data.Text (Text) +import Data.Text qualified as T -- Why have we gone this route? The serialization format of `TxBody era` -- differs from the CDDL. We serialize to an intermediate type in order to simplify diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseRaw.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseRaw.hs index f02fd7943d..f4e84c6800 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseRaw.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseRaw.hs @@ -13,18 +13,18 @@ module Cardano.Api.Internal.SerialiseRaw ) where -import Cardano.Api.Internal.Error (Error, prettyError) -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.Error (Error, prettyError) +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Pretty -import Data.Bifunctor (Bifunctor (..)) -import Data.ByteString (ByteString) -import qualified Data.ByteString.Base16 as Base16 -import Data.Data (typeRep) -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Typeable (TypeRep, Typeable) +import Data.Bifunctor (Bifunctor (..)) +import Data.ByteString (ByteString) +import Data.ByteString.Base16 qualified as Base16 +import Data.Data (typeRep) +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Typeable (TypeRep, Typeable) newtype SerialiseAsRawBytesError = SerialiseAsRawBytesError -- TODO We can do better than use String to carry the error message diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseTextEnvelope.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseTextEnvelope.hs index bd8bc9fa03..9df7aeff96 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseTextEnvelope.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseTextEnvelope.hs @@ -37,33 +37,33 @@ module Cardano.Api.Internal.SerialiseTextEnvelope ) where -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.IO -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.Utils (readFileBlocking) - -import Cardano.Binary (DecoderError) - -import Control.Monad (unless) -import Control.Monad.Trans.Except (ExceptT (..), runExceptT) -import Control.Monad.Trans.Except.Extra (firstExceptT, hoistEither) -import Data.Aeson (FromJSON (..), ToJSON (..), object, withObject, (.:), (.=)) -import qualified Data.Aeson as Aeson -import Data.Aeson.Encode.Pretty (Config (..), defConfig, encodePretty', keyOrder) -import Data.Bifunctor (first) -import Data.ByteString (ByteString) -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Lazy as LBS -import Data.Data (Data) -import qualified Data.List as List -import Data.Maybe (fromMaybe) -import Data.String (IsString) -import Data.Text (Text) -import qualified Data.Text.Encoding as Text +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.IO +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.Utils (readFileBlocking) + +import Cardano.Binary (DecoderError) + +import Control.Monad (unless) +import Control.Monad.Trans.Except (ExceptT (..), runExceptT) +import Control.Monad.Trans.Except.Extra (firstExceptT, hoistEither) +import Data.Aeson (FromJSON (..), ToJSON (..), object, withObject, (.:), (.=)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Encode.Pretty (Config (..), defConfig, encodePretty', keyOrder) +import Data.Bifunctor (first) +import Data.ByteString (ByteString) +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Lazy qualified as LBS +import Data.Data (Data) +import Data.List qualified as List +import Data.Maybe (fromMaybe) +import Data.String (IsString) +import Data.Text (Text) +import Data.Text.Encoding qualified as Text -- ---------------------------------------------------------------------------- -- Text envelopes diff --git a/cardano-api/src/Cardano/Api/Internal/SerialiseUsing.hs b/cardano-api/src/Cardano/Api/Internal/SerialiseUsing.hs index 16025b8935..7be4fe83ed 100644 --- a/cardano-api/src/Cardano/Api/Internal/SerialiseUsing.hs +++ b/cardano-api/src/Cardano/Api/Internal/SerialiseUsing.hs @@ -8,22 +8,22 @@ module Cardano.Api.Internal.SerialiseUsing ) where -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseBech32 -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw - -import qualified Data.Aeson.Types as Aeson -import Data.ByteString (ByteString) -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Char8 as BSC -import Data.String (IsString (..)) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Typeable (tyConName, typeRep, typeRepTyCon) +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseBech32 +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw + +import Data.Aeson.Types qualified as Aeson +import Data.ByteString (ByteString) +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Char8 qualified as BSC +import Data.String (IsString (..)) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Typeable (tyConName, typeRep, typeRepTyCon) -- | For use with @deriving via@, to provide 'ToCBOR' and 'FromCBOR' instances, -- based on the 'SerialiseAsRawBytes' instance. diff --git a/cardano-api/src/Cardano/Api/Internal/SpecialByron.hs b/cardano-api/src/Cardano/Api/Internal/SpecialByron.hs index e08c4c36dd..c84c0e2c7f 100644 --- a/cardano-api/src/Cardano/Api/Internal/SpecialByron.hs +++ b/cardano-api/src/Cardano/Api/Internal/SpecialByron.hs @@ -18,31 +18,48 @@ module Cardano.Api.Internal.SpecialByron ) where -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.NetworkId (NetworkId, toByronProtocolMagicId) -import Cardano.Api.Internal.SerialiseRaw - -import qualified Cardano.Binary as Binary -import Cardano.Chain.Common (LovelacePortion, TxFeePolicy) -import Cardano.Chain.Slotting -import Cardano.Chain.Update (AProposal (aBody, annotation), InstallerHash, - ProposalBody (ProposalBody), ProtocolParametersUpdate (..), ProtocolVersion (..), - SoftforkRule, SoftwareVersion, SystemTag, UpId, mkVote, recoverUpId, - recoverVoteId, signProposal) -import qualified Cardano.Chain.Update as Update -import qualified Cardano.Chain.Update.Vote as ByronVote -import Cardano.Crypto (SafeSigner, noPassSafeSigner) -import qualified Cardano.Ledger.Binary as Binary (Annotated (..), ByteSpan (..), annotation, - annotationBytes, byronProtVer, reAnnotate) -import Ouroboros.Consensus.Byron.Ledger.Block (ByronBlock) -import qualified Ouroboros.Consensus.Byron.Ledger.Mempool as Mempool - -import Data.ByteString (ByteString) -import qualified Data.ByteString.Lazy as LB -import qualified Data.Map.Strict as M -import Data.Word -import Numeric.Natural +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.NetworkId (NetworkId, toByronProtocolMagicId) +import Cardano.Api.Internal.SerialiseRaw + +import Cardano.Binary qualified as Binary +import Cardano.Chain.Common (LovelacePortion, TxFeePolicy) +import Cardano.Chain.Slotting +import Cardano.Chain.Update + ( AProposal (aBody, annotation) + , InstallerHash + , ProposalBody (ProposalBody) + , ProtocolParametersUpdate (..) + , ProtocolVersion (..) + , SoftforkRule + , SoftwareVersion + , SystemTag + , UpId + , mkVote + , recoverUpId + , recoverVoteId + , signProposal + ) +import Cardano.Chain.Update qualified as Update +import Cardano.Chain.Update.Vote qualified as ByronVote +import Cardano.Crypto (SafeSigner, noPassSafeSigner) +import Cardano.Ledger.Binary qualified as Binary + ( Annotated (..) + , ByteSpan (..) + , annotation + , annotationBytes + , byronProtVer + , reAnnotate + ) +import Ouroboros.Consensus.Byron.Ledger.Block (ByronBlock) +import Ouroboros.Consensus.Byron.Ledger.Mempool qualified as Mempool + +import Data.ByteString (ByteString) +import Data.ByteString.Lazy qualified as LB +import Data.Map.Strict qualified as M +import Data.Word +import Numeric.Natural {- HLINT ignore "Use void" -} diff --git a/cardano-api/src/Cardano/Api/Internal/StakePoolMetadata.hs b/cardano-api/src/Cardano/Api/Internal/StakePoolMetadata.hs index 1420d0efeb..74755d35ea 100644 --- a/cardano-api/src/Cardano/Api/Internal/StakePoolMetadata.hs +++ b/cardano-api/src/Cardano/Api/Internal/StakePoolMetadata.hs @@ -16,31 +16,31 @@ module Cardano.Api.Internal.StakePoolMetadata ) where -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw - -import qualified Cardano.Crypto.Hash.Class as Crypto -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Shelley - -import Data.Aeson ((.:)) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Types as Aeson -import Data.Bifunctor (first) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import Data.Data (Data) -import Data.Either.Combinators (maybeToRight) -import Data.Text (Text) -import qualified Data.Text as Text -import Prettyprinter +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw + +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Shelley + +import Data.Aeson ((.:)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Types qualified as Aeson +import Data.Bifunctor (first) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.Data (Data) +import Data.Either.Combinators (maybeToRight) +import Data.Text (Text) +import Data.Text qualified as Text +import Prettyprinter -- ---------------------------------------------------------------------------- -- Stake pool metadata diff --git a/cardano-api/src/Cardano/Api/Internal/Tx/Body.hs b/cardano-api/src/Cardano/Api/Internal/Tx/Body.hs index 343ed7f2c8..a8ac5d4a3e 100644 --- a/cardano-api/src/Cardano/Api/Internal/Tx/Body.hs +++ b/cardano-api/src/Cardano/Api/Internal/Tx/Body.hs @@ -216,117 +216,123 @@ module Cardano.Api.Internal.Tx.Body ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.AllegraEraOnwards -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.Convert -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eon.ShelleyToBabbageEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Eras.Core -import Cardano.Api.Internal.Error (Error (..), displayError) -import Cardano.Api.Internal.Feature -import Cardano.Api.Internal.Governance.Actions.VotingProcedure -import Cardano.Api.Internal.Hash -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.ProtocolParameters -import qualified Cardano.Api.Internal.ReexposeLedger as Ledger -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.ScriptData -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.TxIn -import Cardano.Api.Internal.TxMetadata -import Cardano.Api.Internal.Utils -import Cardano.Api.Internal.Value -import Cardano.Api.Internal.ValueParser -import qualified Cardano.Api.Ledger.Lens as A - -import qualified Cardano.Chain.Common as Byron -import qualified Cardano.Chain.UTxO as Byron -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Crypto.Hashing as Byron -import qualified Cardano.Ledger.Allegra.Core as L -import qualified Cardano.Ledger.Alonzo.Core as L -import qualified Cardano.Ledger.Alonzo.Scripts as Alonzo -import qualified Cardano.Ledger.Alonzo.Tx as Alonzo (hashScriptIntegrity) -import qualified Cardano.Ledger.Alonzo.TxWits as Alonzo -import qualified Cardano.Ledger.Api as L -import qualified Cardano.Ledger.Babbage.UTxO as L -import Cardano.Ledger.BaseTypes (StrictMaybe (..)) -import Cardano.Ledger.Binary (Annotated (..)) -import qualified Cardano.Ledger.Binary as CBOR -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Conway.Core as L -import Cardano.Ledger.Core () -import qualified Cardano.Ledger.Core as Core -import qualified Cardano.Ledger.Core as Ledger -import qualified Cardano.Ledger.Credential as Shelley -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Shelley -import Cardano.Ledger.Mary.Value as L (MaryValue (..), MultiAsset) -import qualified Cardano.Ledger.Plutus.Data as Plutus -import qualified Cardano.Ledger.Plutus.Language as Plutus -import qualified Cardano.Ledger.SafeHash as SafeHash -import qualified Cardano.Ledger.Shelley.API as Ledger -import qualified Cardano.Ledger.Shelley.Genesis as Shelley -import qualified Cardano.Ledger.Shelley.TxCert as Shelley -import qualified Cardano.Ledger.TxIn as L -import Cardano.Ledger.Val as L (isZero) -import Cardano.Slotting.Slot (SlotNo (..)) -import Ouroboros.Consensus.Shelley.Eras (StandardAllegra, StandardAlonzo, StandardBabbage, - StandardConway, StandardMary, StandardShelley) - -import Control.Applicative -import Control.Monad -import Data.Aeson (object, withObject, (.:), (.:?), (.=)) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Key as Aeson -import qualified Data.Aeson.Types as Aeson -import Data.Bifunctor (Bifunctor (..)) -import Data.ByteString (ByteString) -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Char8 as BSC -import Data.Foldable (for_) -import Data.Function (on) -import Data.Functor (($>)) -import Data.List (sortBy) -import qualified Data.List as List -import qualified Data.List.NonEmpty as NonEmpty -import Data.Map.Ordered.Strict (OMap) -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Maybe -import Data.Monoid -import Data.OSet.Strict (OSet) -import qualified Data.OSet.Strict as OSet -import Data.Scientific (toBoundedInteger) -import qualified Data.Sequence.Strict as Seq -import Data.Set (Set) -import qualified Data.Set as Set -import Data.String -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Type.Equality -import Data.Typeable -import Data.Word (Word16, Word32, Word64) -import GHC.Exts (IsList (..)) -import GHC.Stack -import Lens.Micro hiding (ix) -import Lens.Micro.Extras (view) -import qualified Text.Parsec as Parsec -import Text.Parsec (()) -import qualified Text.Parsec.String as Parsec +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.AllegraEraOnwards +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.Convert +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eon.ShelleyToBabbageEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Eras.Core +import Cardano.Api.Internal.Error (Error (..), displayError) +import Cardano.Api.Internal.Feature +import Cardano.Api.Internal.Governance.Actions.VotingProcedure +import Cardano.Api.Internal.Hash +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.ReexposeLedger qualified as Ledger +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.ScriptData +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.TxIn +import Cardano.Api.Internal.TxMetadata +import Cardano.Api.Internal.Utils +import Cardano.Api.Internal.Value +import Cardano.Api.Internal.ValueParser +import Cardano.Api.Ledger.Lens qualified as A + +import Cardano.Chain.Common qualified as Byron +import Cardano.Chain.UTxO qualified as Byron +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Crypto.Hashing qualified as Byron +import Cardano.Ledger.Allegra.Core qualified as L +import Cardano.Ledger.Alonzo.Core qualified as L +import Cardano.Ledger.Alonzo.Scripts qualified as Alonzo +import Cardano.Ledger.Alonzo.Tx qualified as Alonzo (hashScriptIntegrity) +import Cardano.Ledger.Alonzo.TxWits qualified as Alonzo +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Babbage.UTxO qualified as L +import Cardano.Ledger.BaseTypes (StrictMaybe (..)) +import Cardano.Ledger.Binary (Annotated (..)) +import Cardano.Ledger.Binary qualified as CBOR +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Conway.Core qualified as L +import Cardano.Ledger.Core () +import Cardano.Ledger.Core qualified as Core +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Ledger.Credential qualified as Shelley +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Shelley +import Cardano.Ledger.Mary.Value as L (MaryValue (..), MultiAsset) +import Cardano.Ledger.Plutus.Data qualified as Plutus +import Cardano.Ledger.Plutus.Language qualified as Plutus +import Cardano.Ledger.SafeHash qualified as SafeHash +import Cardano.Ledger.Shelley.API qualified as Ledger +import Cardano.Ledger.Shelley.Genesis qualified as Shelley +import Cardano.Ledger.Shelley.TxCert qualified as Shelley +import Cardano.Ledger.TxIn qualified as L +import Cardano.Ledger.Val as L (isZero) +import Cardano.Slotting.Slot (SlotNo (..)) +import Ouroboros.Consensus.Shelley.Eras + ( StandardAllegra + , StandardAlonzo + , StandardBabbage + , StandardConway + , StandardMary + , StandardShelley + ) + +import Control.Applicative +import Control.Monad +import Data.Aeson (object, withObject, (.:), (.:?), (.=)) +import Data.Aeson qualified as Aeson +import Data.Aeson.Key qualified as Aeson +import Data.Aeson.Types qualified as Aeson +import Data.Bifunctor (Bifunctor (..)) +import Data.ByteString (ByteString) +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Char8 qualified as BSC +import Data.Foldable (for_) +import Data.Function (on) +import Data.Functor (($>)) +import Data.List (sortBy) +import Data.List qualified as List +import Data.List.NonEmpty qualified as NonEmpty +import Data.Map.Ordered.Strict (OMap) +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Maybe +import Data.Monoid +import Data.OSet.Strict (OSet) +import Data.OSet.Strict qualified as OSet +import Data.Scientific (toBoundedInteger) +import Data.Sequence.Strict qualified as Seq +import Data.Set (Set) +import Data.Set qualified as Set +import Data.String +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Type.Equality +import Data.Typeable +import Data.Word (Word16, Word32, Word64) +import GHC.Exts (IsList (..)) +import GHC.Stack +import Lens.Micro hiding (ix) +import Lens.Micro.Extras (view) +import Text.Parsec (()) +import Text.Parsec qualified as Parsec +import Text.Parsec.String qualified as Parsec -- ---------------------------------------------------------------------------- -- Transaction outputs diff --git a/cardano-api/src/Cardano/Api/Internal/Tx/Compatible.hs b/cardano-api/src/Cardano/Api/Internal/Tx/Compatible.hs index de89c4abea..3070099a23 100644 --- a/cardano-api/src/Cardano/Api/Internal/Tx/Compatible.hs +++ b/cardano-api/src/Cardano/Api/Internal/Tx/Compatible.hs @@ -14,31 +14,31 @@ module Cardano.Api.Internal.Tx.Compatible ) where -import Cardano.Api.Internal.Address (StakeCredential) -import Cardano.Api.Internal.Certificate (Certificate) -import Cardano.Api.Internal.Eon.AllegraEraOnwards -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eon.ShelleyToBabbageEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.Value - -import qualified Cardano.Ledger.Api as L - -import qualified Data.Map.Strict as Map -import Data.Maybe -import Data.Maybe.Strict -import Data.Monoid -import qualified Data.Sequence.Strict as Seq -import GHC.Exts (IsList (..)) -import GHC.Stack -import Lens.Micro hiding (ix) +import Cardano.Api.Internal.Address (StakeCredential) +import Cardano.Api.Internal.Certificate (Certificate) +import Cardano.Api.Internal.Eon.AllegraEraOnwards +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eon.ShelleyToBabbageEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.Value + +import Cardano.Ledger.Api qualified as L + +import Data.Map.Strict qualified as Map +import Data.Maybe +import Data.Maybe.Strict +import Data.Monoid +import Data.Sequence.Strict qualified as Seq +import GHC.Exts (IsList (..)) +import GHC.Stack +import Lens.Micro hiding (ix) data AnyProtocolUpdate era where ProtocolUpdate diff --git a/cardano-api/src/Cardano/Api/Internal/Tx/Sign.hs b/cardano-api/src/Cardano/Api/Internal/Tx/Sign.hs index 445a4e690a..c4fc130f54 100644 --- a/cardano-api/src/Cardano/Api/Internal/Tx/Sign.hs +++ b/cardano-api/src/Cardano/Api/Internal/Tx/Sign.hs @@ -74,48 +74,48 @@ module Cardano.Api.Internal.Tx.Sign ) where -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Keys.Byron -import Cardano.Api.Internal.Keys.Class -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.SerialiseCBOR -import Cardano.Api.Internal.SerialiseTextEnvelope - -import qualified Cardano.Chain.Common as Byron -import qualified Cardano.Chain.UTxO as Byron -import qualified Cardano.Crypto.DSIGN.Class as Crypto -import qualified Cardano.Crypto.Hashing as Byron -import qualified Cardano.Crypto.ProtocolMagic as Byron -import qualified Cardano.Crypto.Signing as Byron -import qualified Cardano.Crypto.Util as Crypto -import qualified Cardano.Crypto.Wallet as Crypto.HD -import qualified Cardano.Ledger.Alonzo.Core as L -import qualified Cardano.Ledger.Alonzo.TxWits as Alonzo -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.BaseTypes (maybeToStrictMaybe, strictMaybeToMaybe) -import Cardano.Ledger.Binary (Annotated (..)) -import qualified Cardano.Ledger.Binary as CBOR -import qualified Cardano.Ledger.Binary.Plain as Plain -import qualified Cardano.Ledger.Core as Ledger -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Shelley -import qualified Cardano.Ledger.SafeHash as Ledger - -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Lazy as LBS -import qualified Data.Map.Strict as Map -import Data.Maybe -import qualified Data.Set as Set -import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) -import GHC.Exts (IsList (..)) -import Lens.Micro +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Keys.Byron +import Cardano.Api.Internal.Keys.Class +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.SerialiseCBOR +import Cardano.Api.Internal.SerialiseTextEnvelope + +import Cardano.Chain.Common qualified as Byron +import Cardano.Chain.UTxO qualified as Byron +import Cardano.Crypto.DSIGN.Class qualified as Crypto +import Cardano.Crypto.Hashing qualified as Byron +import Cardano.Crypto.ProtocolMagic qualified as Byron +import Cardano.Crypto.Signing qualified as Byron +import Cardano.Crypto.Util qualified as Crypto +import Cardano.Crypto.Wallet qualified as Crypto.HD +import Cardano.Ledger.Alonzo.Core qualified as L +import Cardano.Ledger.Alonzo.TxWits qualified as Alonzo +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes (maybeToStrictMaybe, strictMaybeToMaybe) +import Cardano.Ledger.Binary (Annotated (..)) +import Cardano.Ledger.Binary qualified as CBOR +import Cardano.Ledger.Binary.Plain qualified as Plain +import Cardano.Ledger.Core qualified as Ledger +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Shelley +import Cardano.Ledger.SafeHash qualified as Ledger + +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Lazy qualified as LBS +import Data.Map.Strict qualified as Map +import Data.Maybe +import Data.Set qualified as Set +import Data.Type.Equality (TestEquality (..), (:~:) (Refl)) +import GHC.Exts (IsList (..)) +import Lens.Micro -- ---------------------------------------------------------------------------- -- Signed transactions diff --git a/cardano-api/src/Cardano/Api/Internal/Tx/UTxO.hs b/cardano-api/src/Cardano/Api/Internal/Tx/UTxO.hs index 319c3900d0..a0a7391f8b 100644 --- a/cardano-api/src/Cardano/Api/Internal/Tx/UTxO.hs +++ b/cardano-api/src/Cardano/Api/Internal/Tx/UTxO.hs @@ -6,22 +6,22 @@ module Cardano.Api.Internal.Tx.UTxO where -import Cardano.Api.Internal.Eon.ShelleyBasedEra (IsShelleyBasedEra) -import Cardano.Api.Internal.Eras.Core (IsCardanoEra) -import Cardano.Api.Internal.Tx.Body (CtxUTxO, TxOut (..)) -import Cardano.Api.Internal.TxIn (TxIn (..)) +import Cardano.Api.Internal.Eon.ShelleyBasedEra (IsShelleyBasedEra) +import Cardano.Api.Internal.Eras.Core (IsCardanoEra) +import Cardano.Api.Internal.Tx.Body (CtxUTxO, TxOut (..)) +import Cardano.Api.Internal.TxIn (TxIn (..)) -import Cardano.Ledger.Babbage () +import Cardano.Ledger.Babbage () -import Data.Aeson (FromJSON (..), ToJSON (..)) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.KeyMap as KeyMap -import Data.Aeson.Types (Parser) -import Data.Map (Map) -import qualified Data.Map as Map -import Data.Set (Set) -import Data.Text (Text) -import GHC.Exts (IsList (..)) +import Data.Aeson (FromJSON (..), ToJSON (..)) +import Data.Aeson qualified as Aeson +import Data.Aeson.KeyMap qualified as KeyMap +import Data.Aeson.Types (Parser) +import Data.Map (Map) +import Data.Map qualified as Map +import Data.Set (Set) +import Data.Text (Text) +import GHC.Exts (IsList (..)) newtype UTxO era = UTxO {unUTxO :: Map TxIn (TxOut CtxUTxO era)} deriving stock (Eq, Show) diff --git a/cardano-api/src/Cardano/Api/Internal/TxIn.hs b/cardano-api/src/Cardano/Api/Internal/TxIn.hs index c2b570bf8a..9fc70e5d69 100644 --- a/cardano-api/src/Cardano/Api/Internal/TxIn.hs +++ b/cardano-api/src/Cardano/Api/Internal/TxIn.hs @@ -35,37 +35,37 @@ module Cardano.Api.Internal.TxIn ) where -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseJSON -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.Utils - -import qualified Cardano.Chain.UTxO as Byron -import qualified Cardano.Crypto.Hash.Class as Crypto -import qualified Cardano.Crypto.Hashing as Byron -import qualified Cardano.Ledger.BaseTypes as Ledger -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Keys as Shelley -import qualified Cardano.Ledger.SafeHash as SafeHash -import qualified Cardano.Ledger.Shelley.TxBody as Shelley -import qualified Cardano.Ledger.TxIn as Ledger - -import Control.Applicative (some) -import Data.Aeson (withText) -import qualified Data.Aeson as Aeson -import Data.Aeson.Types (ToJSONKey (..), toJSONKeyText) -import qualified Data.ByteString.Char8 as BSC -import Data.String -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Text.Parsec as Parsec -import Text.Parsec (()) -import qualified Text.Parsec.Language as Parsec -import qualified Text.Parsec.String as Parsec -import qualified Text.Parsec.Token as Parsec +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseJSON +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.Utils + +import Cardano.Chain.UTxO qualified as Byron +import Cardano.Crypto.Hash.Class qualified as Crypto +import Cardano.Crypto.Hashing qualified as Byron +import Cardano.Ledger.BaseTypes qualified as Ledger +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys qualified as Shelley +import Cardano.Ledger.SafeHash qualified as SafeHash +import Cardano.Ledger.Shelley.TxBody qualified as Shelley +import Cardano.Ledger.TxIn qualified as Ledger + +import Control.Applicative (some) +import Data.Aeson (withText) +import Data.Aeson qualified as Aeson +import Data.Aeson.Types (ToJSONKey (..), toJSONKeyText) +import Data.ByteString.Char8 qualified as BSC +import Data.String +import Data.Text (Text) +import Data.Text qualified as Text +import Text.Parsec (()) +import Text.Parsec qualified as Parsec +import Text.Parsec.Language qualified as Parsec +import Text.Parsec.String qualified as Parsec +import Text.Parsec.Token qualified as Parsec {- HLINT ignore "Redundant flip" -} {- HLINT ignore "Use section" -} diff --git a/cardano-api/src/Cardano/Api/Internal/TxMetadata.hs b/cardano-api/src/Cardano/Api/Internal/TxMetadata.hs index e25456f524..296a3c4d7f 100644 --- a/cardano-api/src/Cardano/Api/Internal/TxMetadata.hs +++ b/cardano-api/src/Cardano/Api/Internal/TxMetadata.hs @@ -47,43 +47,43 @@ module Cardano.Api.Internal.TxMetadata ) where -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Error -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Pretty -import Cardano.Api.Internal.SerialiseCBOR (SerialiseAsCBOR (..)) - -import qualified Cardano.Ledger.Binary as CBOR -import qualified Cardano.Ledger.Shelley.TxAuxData as Shelley - -import qualified Codec.CBOR.Magic as CBOR -import Control.Applicative (Alternative (..)) -import Control.Monad (guard, when) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Key as Aeson -import qualified Data.Aeson.KeyMap as KeyMap -import qualified Data.Aeson.Text as Aeson.Text -import qualified Data.Attoparsec.ByteString.Char8 as Atto -import Data.Bifunctor (bimap, first) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Char8 as BSC -import qualified Data.ByteString.Lazy.Char8 as LBS -import Data.Data (Data) -import qualified Data.List as List -import qualified Data.Map.Lazy as Map.Lazy -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.Maybe (fromMaybe) -import qualified Data.Scientific as Scientific -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import qualified Data.Text.Lazy as Text.Lazy -import qualified Data.Text.Lazy.Builder as Text.Builder -import Data.Word -import GHC.Exts (IsList (..)) +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Error +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Pretty +import Cardano.Api.Internal.SerialiseCBOR (SerialiseAsCBOR (..)) + +import Cardano.Ledger.Binary qualified as CBOR +import Cardano.Ledger.Shelley.TxAuxData qualified as Shelley + +import Codec.CBOR.Magic qualified as CBOR +import Control.Applicative (Alternative (..)) +import Control.Monad (guard, when) +import Data.Aeson qualified as Aeson +import Data.Aeson.Key qualified as Aeson +import Data.Aeson.KeyMap qualified as KeyMap +import Data.Aeson.Text qualified as Aeson.Text +import Data.Attoparsec.ByteString.Char8 qualified as Atto +import Data.Bifunctor (bimap, first) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Char8 qualified as BSC +import Data.ByteString.Lazy.Char8 qualified as LBS +import Data.Data (Data) +import Data.List qualified as List +import Data.Map.Lazy qualified as Map.Lazy +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.Maybe (fromMaybe) +import Data.Scientific qualified as Scientific +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Text.Lazy qualified as Text.Lazy +import Data.Text.Lazy.Builder qualified as Text.Builder +import Data.Word +import GHC.Exts (IsList (..)) -- ---------------------------------------------------------------------------- -- TxMetadata types diff --git a/cardano-api/src/Cardano/Api/Internal/Value.hs b/cardano-api/src/Cardano/Api/Internal/Value.hs index b626f61542..9a2101dc9b 100644 --- a/cardano-api/src/Cardano/Api/Internal/Value.hs +++ b/cardano-api/src/Cardano/Api/Internal/Value.hs @@ -58,46 +58,46 @@ module Cardano.Api.Internal.Value ) where -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Error (displayError) -import Cardano.Api.Internal.HasTypeProxy -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.SerialiseUsing -import Cardano.Api.Internal.Utils (failEitherWith) -import qualified Cardano.Api.Ledger.Lens as A - -import qualified Cardano.Chain.Common as Byron -import qualified Cardano.Ledger.Allegra.Core as L -import qualified Cardano.Ledger.Coin as L -import Cardano.Ledger.Crypto (StandardCrypto) -import Cardano.Ledger.Mary.TxOut as Mary (scaledMinDeposit) -import Cardano.Ledger.Mary.Value (MaryValue (..)) -import qualified Cardano.Ledger.Mary.Value as Mary - -import Data.Aeson (FromJSON, FromJSONKey, ToJSON, object, parseJSON, toJSON, withObject) -import qualified Data.Aeson as Aeson -import qualified Data.Aeson.Key as Aeson -import Data.Aeson.Types (Parser, ToJSONKey) -import Data.ByteString (ByteString) -import qualified Data.ByteString as BS -import qualified Data.ByteString.Char8 as BSC -import qualified Data.ByteString.Short as Short -import Data.Data (Data) -import Data.Function ((&)) -import Data.Group (invert) -import qualified Data.List as List -import qualified Data.Map.Merge.Strict as Map -import Data.Map.Strict (Map) -import qualified Data.Map.Strict as Map -import Data.String (IsString (..)) -import Data.Text (Text) -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import GHC.Exts (IsList (..)) -import Lens.Micro ((%~)) +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Error (displayError) +import Cardano.Api.Internal.HasTypeProxy +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.SerialiseUsing +import Cardano.Api.Internal.Utils (failEitherWith) +import Cardano.Api.Ledger.Lens qualified as A + +import Cardano.Chain.Common qualified as Byron +import Cardano.Ledger.Allegra.Core qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Mary.TxOut as Mary (scaledMinDeposit) +import Cardano.Ledger.Mary.Value (MaryValue (..)) +import Cardano.Ledger.Mary.Value qualified as Mary + +import Data.Aeson (FromJSON, FromJSONKey, ToJSON, object, parseJSON, toJSON, withObject) +import Data.Aeson qualified as Aeson +import Data.Aeson.Key qualified as Aeson +import Data.Aeson.Types (Parser, ToJSONKey) +import Data.ByteString (ByteString) +import Data.ByteString qualified as BS +import Data.ByteString.Char8 qualified as BSC +import Data.ByteString.Short qualified as Short +import Data.Data (Data) +import Data.Function ((&)) +import Data.Group (invert) +import Data.List qualified as List +import Data.Map.Merge.Strict qualified as Map +import Data.Map.Strict (Map) +import Data.Map.Strict qualified as Map +import Data.String (IsString (..)) +import Data.Text (Text) +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import GHC.Exts (IsList (..)) +import Lens.Micro ((%~)) toByronLovelace :: Lovelace -> Maybe Byron.Lovelace toByronLovelace (L.Coin x) = diff --git a/cardano-api/src/Cardano/Api/Internal/ValueParser.hs b/cardano-api/src/Cardano/Api/Internal/ValueParser.hs index 2880d94dcf..454893a241 100644 --- a/cardano-api/src/Cardano/Api/Internal/ValueParser.hs +++ b/cardano-api/src/Cardano/Api/Internal/ValueParser.hs @@ -11,25 +11,25 @@ module Cardano.Api.Internal.ValueParser ) where -import Cardano.Api.Internal.Error (displayError) -import Cardano.Api.Internal.SerialiseRaw -import Cardano.Api.Internal.Utils (failEitherWith) -import Cardano.Api.Internal.Value - -import Control.Applicative (many, some, (<|>)) -import Control.Monad (unless, when) -import qualified Data.ByteString.Char8 as BSC -import qualified Data.Char as Char -import Data.Functor (void, ($>)) -import Data.List as List (foldl') -import qualified Data.Text as Text -import qualified Data.Text.Encoding as Text -import Data.Word (Word64) -import Text.Parsec as Parsec (notFollowedBy, try, ()) -import Text.Parsec.Char (alphaNum, char, digit, hexDigit, space, spaces, string) -import Text.Parsec.Expr (Assoc (..), Operator (..), buildExpressionParser) -import Text.Parsec.String (Parser) -import Text.ParserCombinators.Parsec.Combinator (many1) +import Cardano.Api.Internal.Error (displayError) +import Cardano.Api.Internal.SerialiseRaw +import Cardano.Api.Internal.Utils (failEitherWith) +import Cardano.Api.Internal.Value + +import Control.Applicative (many, some, (<|>)) +import Control.Monad (unless, when) +import Data.ByteString.Char8 qualified as BSC +import Data.Char qualified as Char +import Data.Functor (void, ($>)) +import Data.List as List (foldl') +import Data.Text qualified as Text +import Data.Text.Encoding qualified as Text +import Data.Word (Word64) +import Text.Parsec as Parsec (notFollowedBy, try, ()) +import Text.Parsec.Char (alphaNum, char, digit, hexDigit, space, spaces, string) +import Text.Parsec.Expr (Assoc (..), Operator (..), buildExpressionParser) +import Text.Parsec.String (Parser) +import Text.ParserCombinators.Parsec.Combinator (many1) -- | The role for which a 'Value' is being parsed. data ParserValueRole diff --git a/cardano-api/src/Cardano/Api/Internal/Via/ShowOf.hs b/cardano-api/src/Cardano/Api/Internal/Via/ShowOf.hs index f8f028e69a..31b5464f32 100644 --- a/cardano-api/src/Cardano/Api/Internal/Via/ShowOf.hs +++ b/cardano-api/src/Cardano/Api/Internal/Via/ShowOf.hs @@ -3,11 +3,11 @@ module Cardano.Api.Internal.Via.ShowOf ) where -import Data.Aeson -import qualified Data.Aeson.Key as Key -import Data.Aeson.Types -import qualified Data.Text as Text -import Prettyprinter +import Data.Aeson +import Data.Aeson.Key qualified as Key +import Data.Aeson.Types +import Data.Text qualified as Text +import Prettyprinter newtype ShowOf a = ShowOf a diff --git a/cardano-api/src/Cardano/Api/Ledger.hs b/cardano-api/src/Cardano/Api/Ledger.hs index 7caa3c5be2..40fad790ae 100644 --- a/cardano-api/src/Cardano/Api/Ledger.hs +++ b/cardano-api/src/Cardano/Api/Ledger.hs @@ -3,4 +3,4 @@ module Cardano.Api.Ledger ) where -import Cardano.Api.Internal.ReexposeLedger +import Cardano.Api.Internal.ReexposeLedger diff --git a/cardano-api/src/Cardano/Api/Ledger/Lens.hs b/cardano-api/src/Cardano/Api/Ledger/Lens.hs index d88204e41a..333a0896f5 100644 --- a/cardano-api/src/Cardano/Api/Ledger/Lens.hs +++ b/cardano-api/src/Cardano/Api/Ledger/Lens.hs @@ -41,33 +41,33 @@ module Cardano.Api.Ledger.Lens ) where -import Cardano.Api.Internal.Eon.AllegraEraOnwards -import Cardano.Api.Internal.Eon.AlonzoEraOnwards -import Cardano.Api.Internal.Eon.BabbageEraOnwards -import Cardano.Api.Internal.Eon.ConwayEraOnwards -import Cardano.Api.Internal.Eon.MaryEraOnwards -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eon.ShelleyEraOnly -import Cardano.Api.Internal.Eon.ShelleyToAllegraEra -import Cardano.Api.Internal.Eon.ShelleyToBabbageEra -import Cardano.Api.Internal.Eras.Case -import Cardano.Api.Internal.Orphans () - -import qualified Cardano.Ledger.Allegra.Core as L -import qualified Cardano.Ledger.Alonzo.Core as L -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.BaseTypes (SlotNo, StrictMaybe (..)) -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Conway.Core as L -import qualified Cardano.Ledger.Keys as L -import qualified Cardano.Ledger.Mary.Value as L -import qualified Cardano.Ledger.Shelley.PParams as L -import qualified Cardano.Ledger.TxIn as L - -import qualified Data.OSet.Strict as L -import qualified Data.Sequence.Strict as L -import Data.Set (Set) -import Lens.Micro +import Cardano.Api.Internal.Eon.AllegraEraOnwards +import Cardano.Api.Internal.Eon.AlonzoEraOnwards +import Cardano.Api.Internal.Eon.BabbageEraOnwards +import Cardano.Api.Internal.Eon.ConwayEraOnwards +import Cardano.Api.Internal.Eon.MaryEraOnwards +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eon.ShelleyEraOnly +import Cardano.Api.Internal.Eon.ShelleyToAllegraEra +import Cardano.Api.Internal.Eon.ShelleyToBabbageEra +import Cardano.Api.Internal.Eras.Case +import Cardano.Api.Internal.Orphans () + +import Cardano.Ledger.Allegra.Core qualified as L +import Cardano.Ledger.Alonzo.Core qualified as L +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.BaseTypes (SlotNo, StrictMaybe (..)) +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Conway.Core qualified as L +import Cardano.Ledger.Keys qualified as L +import Cardano.Ledger.Mary.Value qualified as L +import Cardano.Ledger.Shelley.PParams qualified as L +import Cardano.Ledger.TxIn qualified as L + +import Data.OSet.Strict qualified as L +import Data.Sequence.Strict qualified as L +import Data.Set (Set) +import Lens.Micro newtype TxBody era = TxBody { unTxBody :: L.TxBody (ShelleyLedgerEra era) diff --git a/cardano-api/src/Cardano/Api/Network.hs b/cardano-api/src/Cardano/Api/Network.hs index 048eb7b9e8..d295131a31 100644 --- a/cardano-api/src/Cardano/Api/Network.hs +++ b/cardano-api/src/Cardano/Api/Network.hs @@ -3,4 +3,4 @@ module Cardano.Api.Network ) where -import Cardano.Api.Internal.ReexposeNetwork +import Cardano.Api.Internal.ReexposeNetwork diff --git a/cardano-api/src/Cardano/Api/Shelley.hs b/cardano-api/src/Cardano/Api/Shelley.hs index 017a98ebdd..5974be4352 100644 --- a/cardano-api/src/Cardano/Api/Shelley.hs +++ b/cardano-api/src/Cardano/Api/Shelley.hs @@ -291,32 +291,32 @@ module Cardano.Api.Shelley ) where -import Cardano.Api -import Cardano.Api.Internal.Address -import Cardano.Api.Internal.Block -import Cardano.Api.Internal.Certificate -import Cardano.Api.Internal.DRepMetadata -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Fees -import Cardano.Api.Internal.Genesis -import Cardano.Api.Internal.Governance.Actions.ProposalProcedure -import Cardano.Api.Internal.Governance.Actions.VotingProcedure -import Cardano.Api.Internal.Governance.Poll -import Cardano.Api.Internal.InMode -import Cardano.Api.Internal.IPC -import Cardano.Api.Internal.Keys.Praos -import Cardano.Api.Internal.Keys.Shelley -import Cardano.Api.Internal.LedgerEvents.ConvertLedgerEvent -import Cardano.Api.Internal.LedgerEvents.LedgerEvent -import Cardano.Api.Internal.LedgerState -import Cardano.Api.Internal.NetworkId -import Cardano.Api.Internal.OperationalCertificate -import Cardano.Api.Internal.ProtocolParameters -import Cardano.Api.Internal.Query -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.ScriptData -import Cardano.Api.Internal.StakePoolMetadata -import Cardano.Api.Internal.Tx.Body -import Cardano.Api.Internal.Tx.Sign -import Cardano.Api.Internal.TxMetadata -import Cardano.Api.Internal.Value +import Cardano.Api +import Cardano.Api.Internal.Address +import Cardano.Api.Internal.Block +import Cardano.Api.Internal.Certificate +import Cardano.Api.Internal.DRepMetadata +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Fees +import Cardano.Api.Internal.Genesis +import Cardano.Api.Internal.Governance.Actions.ProposalProcedure +import Cardano.Api.Internal.Governance.Actions.VotingProcedure +import Cardano.Api.Internal.Governance.Poll +import Cardano.Api.Internal.IPC +import Cardano.Api.Internal.InMode +import Cardano.Api.Internal.Keys.Praos +import Cardano.Api.Internal.Keys.Shelley +import Cardano.Api.Internal.LedgerEvents.ConvertLedgerEvent +import Cardano.Api.Internal.LedgerEvents.LedgerEvent +import Cardano.Api.Internal.LedgerState +import Cardano.Api.Internal.NetworkId +import Cardano.Api.Internal.OperationalCertificate +import Cardano.Api.Internal.ProtocolParameters +import Cardano.Api.Internal.Query +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.ScriptData +import Cardano.Api.Internal.StakePoolMetadata +import Cardano.Api.Internal.Tx.Body +import Cardano.Api.Internal.Tx.Sign +import Cardano.Api.Internal.TxMetadata +import Cardano.Api.Internal.Value diff --git a/cardano-api/src/Cardano/Api/Tx/UTxO.hs b/cardano-api/src/Cardano/Api/Tx/UTxO.hs index 41463f68cb..075a092ae6 100644 --- a/cardano-api/src/Cardano/Api/Tx/UTxO.hs +++ b/cardano-api/src/Cardano/Api/Tx/UTxO.hs @@ -10,4 +10,4 @@ module Cardano.Api.Tx.UTxO ) where -import qualified Cardano.Api.Internal.Tx.UTxO as UTxO +import Cardano.Api.Internal.Tx.UTxO qualified as UTxO diff --git a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Genesis.hs b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Genesis.hs index 10f3ed0783..f34c53d0c4 100644 --- a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Genesis.hs +++ b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Genesis.hs @@ -7,26 +7,36 @@ module Test.Golden.Cardano.Api.Genesis ) where -import Cardano.Api.Shelley (ShelleyGenesis (..)) +import Cardano.Api.Shelley (ShelleyGenesis (..)) -import Cardano.Ledger.Address (Addr (..)) -import Cardano.Ledger.BaseTypes (Network (..)) -import Cardano.Ledger.Coin (Coin (..)) -import Cardano.Ledger.Core -import Cardano.Ledger.Credential (Credential (..), PaymentCredential, StakeCredential, - StakeReference (..)) -import Cardano.Ledger.Crypto (StandardCrypto) -import Cardano.Ledger.Keys (GenDelegPair (..), Hash, KeyHash (..), KeyRole (..), - VerKeyVRF, toVRFVerKeyHash) -import Cardano.Ledger.Shelley.Genesis (emptyGenesisStaking) -import Cardano.Slotting.Slot (EpochSize (..)) +import Cardano.Ledger.Address (Addr (..)) +import Cardano.Ledger.BaseTypes (Network (..)) +import Cardano.Ledger.Coin (Coin (..)) +import Cardano.Ledger.Core +import Cardano.Ledger.Credential + ( Credential (..) + , PaymentCredential + , StakeCredential + , StakeReference (..) + ) +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Keys + ( GenDelegPair (..) + , Hash + , KeyHash (..) + , KeyRole (..) + , VerKeyVRF + , toVRFVerKeyHash + ) +import Cardano.Ledger.Shelley.Genesis (emptyGenesisStaking) +import Cardano.Slotting.Slot (EpochSize (..)) -import Data.ListMap (ListMap (ListMap)) -import Data.Time.Clock.POSIX (posixSecondsToUTCTime) -import GHC.Exts (IsList (..)) -import Lens.Micro +import Data.ListMap (ListMap (ListMap)) +import Data.Time.Clock.POSIX (posixSecondsToUTCTime) +import GHC.Exts (IsList (..)) +import Lens.Micro -import Test.Cardano.Ledger.Shelley.Utils (unsafeBoundRational) +import Test.Cardano.Ledger.Shelley.Utils (unsafeBoundRational) exampleShelleyGenesis :: ShelleyGenesis StandardCrypto exampleShelleyGenesis = diff --git a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Ledger.hs b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Ledger.hs index 5930fa3069..03eb057129 100644 --- a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Ledger.hs +++ b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Ledger.hs @@ -3,12 +3,12 @@ module Test.Golden.Cardano.Api.Ledger ) where -import Test.Cardano.Ledger.Core.Arbitrary () +import Test.Cardano.Ledger.Core.Arbitrary () -import qualified Hedgehog.Extras.Aeson as H -import Test.Golden.Cardano.Api.Genesis (exampleShelleyGenesis) -import Test.Tasty (TestTree) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog.Extras.Aeson qualified as H +import Test.Golden.Cardano.Api.Genesis (exampleShelleyGenesis) +import Test.Tasty (TestTree) +import Test.Tasty.Hedgehog (testProperty) test_golden_ShelleyGenesis :: TestTree test_golden_ShelleyGenesis = diff --git a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/ProtocolParameters.hs b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/ProtocolParameters.hs index 0c10427190..4c8684d2cd 100644 --- a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/ProtocolParameters.hs +++ b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/ProtocolParameters.hs @@ -11,34 +11,41 @@ module Test.Golden.Cardano.Api.ProtocolParameters ) where -import Cardano.Api (AnyPlutusScriptVersion (AnyPlutusScriptVersion), CostModel (..), - ExecutionUnits (..), PlutusScriptVersion (..), makePraosNonce) -import Cardano.Api.Internal.ProtocolParameters (ExecutionUnitPrices (..), - ProtocolParameters (..)) -import Cardano.Api.Ledger (Coin (..), EpochInterval (EpochInterval), StandardCrypto) +import Cardano.Api + ( AnyPlutusScriptVersion (AnyPlutusScriptVersion) + , CostModel (..) + , ExecutionUnits (..) + , PlutusScriptVersion (..) + , makePraosNonce + ) +import Cardano.Api.Internal.ProtocolParameters + ( ExecutionUnitPrices (..) + , ProtocolParameters (..) + ) +import Cardano.Api.Ledger (Coin (..), EpochInterval (EpochInterval), StandardCrypto) -import Cardano.Ledger.Alonzo (AlonzoEra) -import Cardano.Ledger.Alonzo.PParams (AlonzoPParams (..)) -import Cardano.Ledger.Babbage (BabbageEra) -import Cardano.Ledger.Babbage.PParams (BabbagePParams (..)) -import Cardano.Ledger.Plutus.CostModels (costModelParamsCount) -import Cardano.Ledger.Plutus.Language (Language (..)) -import Cardano.Ledger.Shelley (ShelleyEra) -import Cardano.Ledger.Shelley.PParams (ShelleyPParams (..)) +import Cardano.Ledger.Alonzo (AlonzoEra) +import Cardano.Ledger.Alonzo.PParams (AlonzoPParams (..)) +import Cardano.Ledger.Babbage (BabbageEra) +import Cardano.Ledger.Babbage.PParams (BabbagePParams (..)) +import Cardano.Ledger.Plutus.CostModels (costModelParamsCount) +import Cardano.Ledger.Plutus.Language (Language (..)) +import Cardano.Ledger.Shelley (ShelleyEra) +import Cardano.Ledger.Shelley.PParams (ShelleyPParams (..)) -import Data.Aeson (FromJSON, eitherDecode, encode) -import Data.ByteString.Lazy (ByteString) -import Data.Functor.Identity (Identity) -import Data.Int (Int64) -import Data.Map (Map) -import Data.Proxy (Proxy (..)) -import GHC.Exts (IsList (..)) +import Data.Aeson (FromJSON, eitherDecode, encode) +import Data.ByteString.Lazy (ByteString) +import Data.Functor.Identity (Identity) +import Data.Int (Int64) +import Data.Map (Map) +import Data.Proxy (Proxy (..)) +import GHC.Exts (IsList (..)) -import Hedgehog (Property, property, success) -import qualified Hedgehog.Extras.Aeson as H -import Hedgehog.Internal.Property (failWith) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property, property, success) +import Hedgehog.Extras.Aeson qualified as H +import Hedgehog.Internal.Property (failWith) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) test_golden_ProtocolParameters :: TestTree test_golden_ProtocolParameters = testProperty "golden ProtocolParameters" $ do diff --git a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Script.hs b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Script.hs index f4eceeb706..f8633303b0 100644 --- a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Script.hs +++ b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Script.hs @@ -13,21 +13,21 @@ module Test.Golden.Cardano.Api.Script ) where -import Cardano.Api -import Cardano.Api.Shelley +import Cardano.Api +import Cardano.Api.Shelley -import qualified Cardano.Ledger.Api.Era as L +import Cardano.Ledger.Api.Era qualified as L -import Data.Aeson -import System.FilePath (()) +import Data.Aeson +import System.FilePath (()) -import Test.Gen.Cardano.Api.Typed +import Test.Gen.Cardano.Api.Typed -import Hedgehog ((===)) -import qualified Hedgehog as H -import Hedgehog.Extras.Aeson -import Test.Tasty (TestTree) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog ((===)) +import Hedgehog qualified as H +import Hedgehog.Extras.Aeson +import Test.Tasty (TestTree) +import Test.Tasty.Hedgehog (testProperty) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Value.hs b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Value.hs index 67302304ea..30419a4bca 100644 --- a/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Value.hs +++ b/cardano-api/test/cardano-api-golden/Test/Golden/Cardano/Api/Value.hs @@ -1,26 +1,39 @@ module Test.Golden.Cardano.Api.Value where -import Cardano.Api (MaryEraOnwards (..), ShelleyBasedEra (..), ValueNestedBundle (..), - ValueNestedRep (..), fromLedgerValue, parseValue, renderValue, renderValuePretty, - valueFromNestedRep, valueToNestedRep) -import qualified Cardano.Api as Api - -import Prelude - -import Data.Aeson (eitherDecode, encode) -import Data.List (groupBy, sort) -import qualified Data.Map.Strict as Map -import qualified Data.Text as Text -import GHC.Exts (IsList (..)) -import qualified Text.Parsec as Parsec (parse) - -import Test.Gen.Cardano.Api.Typed (genAssetName, genValueDefault, genValueForRole, - genValueNestedRep) - -import Hedgehog (Property, forAll, property, tripping, (===)) -import qualified Hedgehog.Extras as H -import qualified Hedgehog.Extras.Test.Golden as H -import qualified Hedgehog.Gen as Gen +import Cardano.Api + ( MaryEraOnwards (..) + , ShelleyBasedEra (..) + , ValueNestedBundle (..) + , ValueNestedRep (..) + , fromLedgerValue + , parseValue + , renderValue + , renderValuePretty + , valueFromNestedRep + , valueToNestedRep + ) +import Cardano.Api qualified as Api + +import Prelude + +import Data.Aeson (eitherDecode, encode) +import Data.List (groupBy, sort) +import Data.Map.Strict qualified as Map +import Data.Text qualified as Text +import GHC.Exts (IsList (..)) +import Text.Parsec qualified as Parsec (parse) + +import Test.Gen.Cardano.Api.Typed + ( genAssetName + , genValueDefault + , genValueForRole + , genValueNestedRep + ) + +import Hedgehog (Property, forAll, property, tripping, (===)) +import Hedgehog.Extras qualified as H +import Hedgehog.Extras.Test.Golden qualified as H +import Hedgehog.Gen qualified as Gen {- HLINT ignore "Use let" -} diff --git a/cardano-api/test/cardano-api-golden/Test/Golden/ErrorsSpec.hs b/cardano-api/test/cardano-api-golden/Test/Golden/ErrorsSpec.hs index b6032e5300..21d256327e 100644 --- a/cardano-api/test/cardano-api-golden/Test/Golden/ErrorsSpec.hs +++ b/cardano-api/test/cardano-api-golden/Test/Golden/ErrorsSpec.hs @@ -30,42 +30,42 @@ module Test.Golden.ErrorsSpec ) where -import Cardano.Api -import Cardano.Api.Shelley - -import Cardano.Binary as CBOR -import qualified Cardano.Crypto.Seed as Crypto -import qualified Cardano.Ledger.Alonzo.Plutus.TxInfo as Ledger -import qualified Cardano.Ledger.Api.Era as Ledger -import qualified Cardano.Ledger.Binary.Decoding as Binary -import Cardano.Ledger.Binary.Version -import qualified Cardano.Ledger.Coin as L -import Cardano.Ledger.Crypto (StandardCrypto) -import qualified Cardano.Ledger.Plutus.CostModels as Plutus -import Cardano.Ledger.Plutus.Evaluate -import Cardano.Ledger.Plutus.ExUnits -import qualified Cardano.Ledger.Plutus.Language as Language -import qualified PlutusCore.Evaluation.Machine.CostModelInterface as Plutus -import qualified PlutusLedgerApi.Common as Plutus hiding (PlutusV2) - -import qualified Codec.Binary.Bech32 as Bech32 -import Control.Error.Util (hush) -import qualified Data.Aeson as Aeson -import Data.ByteString (ByteString) -import qualified Data.ByteString.Base64 as B64 -import qualified Data.ByteString.Lazy as LBS -import Data.Data -import qualified Data.Map as Map -import Data.Maybe -import qualified Data.Set as Set -import Data.Text (Text) -import qualified Data.Text.Encoding as Text -import Data.Word -import GHC.Exts (IsList (..)) -import GHC.Stack (HasCallStack) - -import qualified Test.Hedgehog.Golden.ErrorMessage as ErrorMessage -import Test.Tasty +import Cardano.Api +import Cardano.Api.Shelley + +import Cardano.Binary as CBOR +import Cardano.Crypto.Seed qualified as Crypto +import Cardano.Ledger.Alonzo.Plutus.TxInfo qualified as Ledger +import Cardano.Ledger.Api.Era qualified as Ledger +import Cardano.Ledger.Binary.Decoding qualified as Binary +import Cardano.Ledger.Binary.Version +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Crypto (StandardCrypto) +import Cardano.Ledger.Plutus.CostModels qualified as Plutus +import Cardano.Ledger.Plutus.Evaluate +import Cardano.Ledger.Plutus.ExUnits +import Cardano.Ledger.Plutus.Language qualified as Language +import PlutusCore.Evaluation.Machine.CostModelInterface qualified as Plutus +import PlutusLedgerApi.Common qualified as Plutus hiding (PlutusV2) + +import Codec.Binary.Bech32 qualified as Bech32 +import Control.Error.Util (hush) +import Data.Aeson qualified as Aeson +import Data.ByteString (ByteString) +import Data.ByteString.Base64 qualified as B64 +import Data.ByteString.Lazy qualified as LBS +import Data.Data +import Data.Map qualified as Map +import Data.Maybe +import Data.Set qualified as Set +import Data.Text (Text) +import Data.Text.Encoding qualified as Text +import Data.Word +import GHC.Exts (IsList (..)) +import GHC.Stack (HasCallStack) + +import Test.Hedgehog.Golden.ErrorMessage qualified as ErrorMessage +import Test.Tasty seed1 :: ByteString seed1 = diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Address.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Address.hs index 95886acd30..3f344ace20 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Address.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Address.hs @@ -5,18 +5,18 @@ module Test.Cardano.Api.Address ) where -import Cardano.Api +import Cardano.Api -import qualified Data.Aeson as Aeson +import Data.Aeson qualified as Aeson -import Test.Gen.Cardano.Api.Typed (genAddressByron, genAddressShelley) +import Test.Gen.Cardano.Api.Typed (genAddressByron, genAddressShelley) -import Test.Cardano.Api.Orphans () +import Test.Cardano.Api.Orphans () -import Hedgehog (Property) -import qualified Hedgehog as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property) +import Hedgehog qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Bech32.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Bech32.hs index a07e78021b..d86e1145d1 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Bech32.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Bech32.hs @@ -3,14 +3,14 @@ module Test.Cardano.Api.Bech32 ) where -import Cardano.Api (AsType (AsAddress, AsShelleyAddr, AsStakeAddress)) +import Cardano.Api (AsType (AsAddress, AsShelleyAddr, AsStakeAddress)) -import Test.Gen.Cardano.Api.Typed (genAddressShelley, genStakeAddress) +import Test.Gen.Cardano.Api.Typed (genAddressShelley, genStakeAddress) -import Hedgehog (Property) -import Test.Hedgehog.Roundtrip.Bech32 (roundtrip_Bech32) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property) +import Test.Hedgehog.Roundtrip.Bech32 (roundtrip_Bech32) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) prop_roundtrip_Address_Shelley :: Property prop_roundtrip_Address_Shelley = roundtrip_Bech32 (AsAddress AsShelleyAddr) genAddressShelley diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/CBOR.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/CBOR.hs index 6a18cbe255..d4ee820aee 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/CBOR.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/CBOR.hs @@ -10,31 +10,31 @@ module Test.Cardano.Api.CBOR ) where -import Cardano.Api -import Cardano.Api.Internal.Script -import Cardano.Api.Internal.SerialiseLedgerCddl (cddlTypeToEra) -import Cardano.Api.Internal.SerialiseTextEnvelope (TextEnvelopeDescr (TextEnvelopeDescr)) -import Cardano.Api.Shelley (AsType (..)) - -import qualified Data.ByteString.Base16 as Base16 -import qualified Data.ByteString.Lazy as LBS -import qualified Data.ByteString.Short as SBS -import Data.Proxy (Proxy (..)) -import Data.Text (Text) -import qualified Data.Text as T - -import Test.Gen.Cardano.Api.Hardcoded -import Test.Gen.Cardano.Api.Typed - -import Test.Cardano.Api.Orphans () - -import Hedgehog (Property, forAll, property, tripping) -import qualified Hedgehog as H -import qualified Hedgehog.Extras as H -import qualified Hedgehog.Gen as Gen -import qualified Test.Hedgehog.Roundtrip.CBOR as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Cardano.Api +import Cardano.Api.Internal.Script +import Cardano.Api.Internal.SerialiseLedgerCddl (cddlTypeToEra) +import Cardano.Api.Internal.SerialiseTextEnvelope (TextEnvelopeDescr (TextEnvelopeDescr)) +import Cardano.Api.Shelley (AsType (..)) + +import Data.ByteString.Base16 qualified as Base16 +import Data.ByteString.Lazy qualified as LBS +import Data.ByteString.Short qualified as SBS +import Data.Proxy (Proxy (..)) +import Data.Text (Text) +import Data.Text qualified as T + +import Test.Gen.Cardano.Api.Hardcoded +import Test.Gen.Cardano.Api.Typed + +import Test.Cardano.Api.Orphans () + +import Hedgehog (Property, forAll, property, tripping) +import Hedgehog qualified as H +import Hedgehog.Extras qualified as H +import Hedgehog.Gen qualified as Gen +import Test.Hedgehog.Roundtrip.CBOR qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Crypto.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Crypto.hs index 2fa46796f4..3d670be5bf 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Crypto.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Crypto.hs @@ -12,18 +12,18 @@ module Test.Cardano.Api.Crypto ) where -import Cardano.Api.Crypto.Ed25519Bip32 (Ed25519Bip32DSIGN, SignKeyDSIGN (..)) +import Cardano.Api.Crypto.Ed25519Bip32 (Ed25519Bip32DSIGN, SignKeyDSIGN (..)) -import Cardano.Crypto.DSIGN -import Cardano.Crypto.Util (SignableRepresentation (..)) -import qualified Cardano.Crypto.Wallet as CC +import Cardano.Crypto.DSIGN +import Cardano.Crypto.Util (SignableRepresentation (..)) +import Cardano.Crypto.Wallet qualified as CC -import Data.Proxy (Proxy (..)) +import Data.Proxy (Proxy (..)) -import Test.Crypto.Util -import Test.QuickCheck (Arbitrary (..), Gen, Property, (=/=), (===), (==>)) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.QuickCheck (testProperty) +import Test.Crypto.Util +import Test.QuickCheck (Arbitrary (..), Gen, Property, (=/=), (===), (==>)) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.QuickCheck (testProperty) -- -- The list of all tests diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/EpochLeadership.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/EpochLeadership.hs index 81b29aa941..85a120050d 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/EpochLeadership.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/EpochLeadership.hs @@ -8,43 +8,50 @@ module Test.Cardano.Api.EpochLeadership ) where -import Cardano.Api (Key (verificationKeyHash), deterministicSigningKey, - getVerificationKey) -import Cardano.Api.Internal.Block (EpochNo (..), Hash (StakePoolKeyHash), SlotNo (..)) -import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEra (..)) -import Cardano.Api.Internal.Genesis (shelleyGenesisDefaults) -import Cardano.Api.Internal.GenesisParameters (EpochSize (..)) -import Cardano.Api.Internal.LedgerState (currentEpochEligibleLeadershipSlots) -import Cardano.Api.Internal.Modes (ConsensusProtocol) -import Cardano.Api.Internal.Query (ProtocolState (..), - SerialisedPoolDistribution (SerialisedPoolDistribution)) -import Cardano.Api.Ledger (KeyHash (..), StandardCrypto, toCBOR) -import Cardano.Api.Shelley (Hash (VrfKeyHash), VrfKey, proxyToAsType, unStakePoolKeyHash) +import Cardano.Api + ( Key (verificationKeyHash) + , deterministicSigningKey + , getVerificationKey + ) +import Cardano.Api.Internal.Block (EpochNo (..), Hash (StakePoolKeyHash), SlotNo (..)) +import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEra (..)) +import Cardano.Api.Internal.Genesis (shelleyGenesisDefaults) +import Cardano.Api.Internal.GenesisParameters (EpochSize (..)) +import Cardano.Api.Internal.LedgerState (currentEpochEligibleLeadershipSlots) +import Cardano.Api.Internal.Modes (ConsensusProtocol) +import Cardano.Api.Internal.Query + ( ProtocolState (..) + , SerialisedPoolDistribution (SerialisedPoolDistribution) + ) +import Cardano.Api.Ledger (KeyHash (..), StandardCrypto, toCBOR) +import Cardano.Api.Shelley (Hash (VrfKeyHash), VrfKey, proxyToAsType, unStakePoolKeyHash) -import Cardano.Binary (ToCBOR, serialize) -import Cardano.Crypto.Seed (mkSeedFromBytes) -import Cardano.Ledger.Api.PParams (emptyPParams) -import Cardano.Ledger.BaseTypes (Nonce (..), WithOrigin (..)) -import Cardano.Ledger.Binary.Encoding (toByronCBOR) -import qualified Cardano.Protocol.TPraos.API as API -import Cardano.Slotting.EpochInfo (EpochInfo (..)) -import Cardano.Slotting.Time (RelativeTime (..), mkSlotLength) -import qualified Ouroboros.Consensus.Protocol.Abstract as Consensus -import Ouroboros.Consensus.Protocol.TPraos (TPraosState (..)) -import Ouroboros.Consensus.Shelley.Ledger.Query.Types (IndividualPoolStake (..), - PoolDistr (..)) -import Ouroboros.Network.Block (Serialised (..)) +import Cardano.Binary (ToCBOR, serialize) +import Cardano.Crypto.Seed (mkSeedFromBytes) +import Cardano.Ledger.Api.PParams (emptyPParams) +import Cardano.Ledger.BaseTypes (Nonce (..), WithOrigin (..)) +import Cardano.Ledger.Binary.Encoding (toByronCBOR) +import Cardano.Protocol.TPraos.API qualified as API +import Cardano.Slotting.EpochInfo (EpochInfo (..)) +import Cardano.Slotting.Time (RelativeTime (..), mkSlotLength) +import Ouroboros.Consensus.Protocol.Abstract qualified as Consensus +import Ouroboros.Consensus.Protocol.TPraos (TPraosState (..)) +import Ouroboros.Consensus.Shelley.Ledger.Query.Types + ( IndividualPoolStake (..) + , PoolDistr (..) + ) +import Ouroboros.Network.Block (Serialised (..)) -import qualified Data.Map as Map -import Data.Proxy (Proxy (..)) -import Data.Ratio ((%)) -import Data.Time.Clock (secondsToNominalDiffTime) -import GHC.Exts (IsList (..)) +import Data.Map qualified as Map +import Data.Proxy (Proxy (..)) +import Data.Ratio ((%)) +import Data.Time.Clock (secondsToNominalDiffTime) +import GHC.Exts (IsList (..)) -import qualified Hedgehog as H -import qualified Hedgehog.Extras as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog qualified as H +import Hedgehog.Extras qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- -- The list of all tests diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Eras.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Eras.hs index 25a25306c6..9abcdb86ba 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Eras.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Eras.hs @@ -5,16 +5,16 @@ module Test.Cardano.Api.Eras ) where -import Cardano.Api -import Cardano.Api.Internal.Orphans () +import Cardano.Api +import Cardano.Api.Internal.Orphans () -import Data.Aeson (ToJSON (..), decode, encode) +import Data.Aeson (ToJSON (..), decode, encode) -import Hedgehog (Property, forAll, property, (===)) -import qualified Hedgehog as H -import qualified Hedgehog.Gen as Gen -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property, forAll, property, (===)) +import Hedgehog qualified as H +import Hedgehog.Gen qualified as Gen +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -------------------------------------------------------------------------------- -- Bounded instances diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Experimental.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Experimental.hs index be474283f6..27c1c690a3 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Experimental.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Experimental.hs @@ -8,20 +8,20 @@ module Test.Cardano.Api.Experimental ) where -import qualified Cardano.Api as Api -import qualified Cardano.Api.Experimental as Exp -import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEraConstraints) -import qualified Cardano.Api.Internal.Script as Script -import Cardano.Api.Internal.Tx.Sign (Tx (ShelleyTx)) -import qualified Cardano.Api.Ledger as Ledger - -import Lens.Micro ((&)) - -import Hedgehog (Property) -import qualified Hedgehog as H -import qualified Hedgehog.Extras as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Cardano.Api qualified as Api +import Cardano.Api.Experimental qualified as Exp +import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEraConstraints) +import Cardano.Api.Internal.Script qualified as Script +import Cardano.Api.Internal.Tx.Sign (Tx (ShelleyTx)) +import Cardano.Api.Ledger qualified as Ledger + +import Lens.Micro ((&)) + +import Hedgehog (Property) +import Hedgehog qualified as H +import Hedgehog.Extras qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- | Tests in this module can be run by themselves by writing: -- ```bash diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Genesis.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Genesis.hs index 366ca63f49..d03030fb76 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Genesis.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Genesis.hs @@ -8,32 +8,32 @@ module Test.Cardano.Api.Genesis ) where -import Cardano.Api.Internal.Eon.ShelleyBasedEra -import Cardano.Api.Internal.Eras -import Cardano.Api.Internal.Genesis -import qualified Cardano.Api.Ledger as L -import Cardano.Api.Shelley - -import qualified Cardano.Binary as CB -import qualified Cardano.Ledger.Alonzo.Genesis as L -import qualified Cardano.Ledger.Binary as L -import qualified Cardano.Ledger.Plutus as L -import qualified PlutusLedgerApi.V2 as V2 - -import qualified Codec.CBOR.Decoding as CBOR -import qualified Codec.CBOR.Encoding as CBOR -import qualified Codec.CBOR.Write as CBOR -import qualified Data.ByteString.Lazy as LBS -import Data.Either -import Data.Int (Int64) -import qualified Data.Map.Strict as M -import Data.Maybe -import GHC.Stack - -import Hedgehog as H -import qualified Hedgehog.Extras as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Cardano.Api.Internal.Eon.ShelleyBasedEra +import Cardano.Api.Internal.Eras +import Cardano.Api.Internal.Genesis +import Cardano.Api.Ledger qualified as L +import Cardano.Api.Shelley + +import Cardano.Binary qualified as CB +import Cardano.Ledger.Alonzo.Genesis qualified as L +import Cardano.Ledger.Binary qualified as L +import Cardano.Ledger.Plutus qualified as L +import PlutusLedgerApi.V2 qualified as V2 + +import Codec.CBOR.Decoding qualified as CBOR +import Codec.CBOR.Encoding qualified as CBOR +import Codec.CBOR.Write qualified as CBOR +import Data.ByteString.Lazy qualified as LBS +import Data.Either +import Data.Int (Int64) +import Data.Map.Strict qualified as M +import Data.Maybe +import GHC.Stack + +import Hedgehog as H +import Hedgehog.Extras qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- | Test reading and decoding of AlonzoGenesis with cost models - era dependent test prop_reading_plutus_v2_era_sensitive_costmodel diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/GovAnchorValidation.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/GovAnchorValidation.hs index 916276e6ec..2e04a105be 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/GovAnchorValidation.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/GovAnchorValidation.hs @@ -6,19 +6,25 @@ module Test.Cardano.Api.GovAnchorValidation ) where -import Cardano.Api (CIP108 (..), CIP119 (..), File (File), FileDirection (In), FileError, - readByteStringFile) -import Cardano.Api.Internal.DRepMetadata (DRepMetadata (..)) -import Cardano.Api.Internal.Governance.Metadata.Validation (validateGovActionAnchorData) +import Cardano.Api + ( CIP108 (..) + , CIP119 (..) + , File (File) + , FileDirection (In) + , FileError + , readByteStringFile + ) +import Cardano.Api.Internal.DRepMetadata (DRepMetadata (..)) +import Cardano.Api.Internal.Governance.Metadata.Validation (validateGovActionAnchorData) -import Data.ByteString (ByteString) -import Data.Monoid (Any) +import Data.ByteString (ByteString) +import Data.Monoid (Any) -import Hedgehog (Property, (===)) -import qualified Hedgehog as H -import Hedgehog.Extras (propertyOnce) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property, (===)) +import Hedgehog qualified as H +import Hedgehog.Extras (propertyOnce) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- | Tests in this module can be run by themselves by writing: -- ```bash diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/IO.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/IO.hs index 851693e641..129a5289d2 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/IO.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/IO.hs @@ -5,16 +5,16 @@ module Test.Cardano.Api.IO ) where -import Cardano.Api -import Cardano.Api.Internal.IO +import Cardano.Api +import Cardano.Api.Internal.IO -import System.Directory (removeFile) +import System.Directory (removeFile) -import Hedgehog -import qualified Hedgehog.Extras as H -import Hedgehog.Internal.Property -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog +import Hedgehog +import Hedgehog.Extras qualified as H +import Hedgehog.Internal.Property +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog prop_createVrfFileWithOwnerPermissions :: Property prop_createVrfFileWithOwnerPermissions = diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Json.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Json.hs index 57f1333a4e..935babad56 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Json.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Json.hs @@ -6,22 +6,22 @@ module Test.Cardano.Api.Json ) where -import Cardano.Api -import Cardano.Api.Internal.Orphans () -import Cardano.Api.Shelley +import Cardano.Api +import Cardano.Api.Internal.Orphans () +import Cardano.Api.Shelley -import Data.Aeson (eitherDecode, encode) +import Data.Aeson (eitherDecode, encode) -import Test.Gen.Cardano.Api (genAlonzoGenesis) -import Test.Gen.Cardano.Api.Typed +import Test.Gen.Cardano.Api (genAlonzoGenesis) +import Test.Gen.Cardano.Api.Typed -import Test.Cardano.Api.Orphans () +import Test.Cardano.Api.Orphans () -import Hedgehog (Property, forAll, tripping) -import qualified Hedgehog as H -import qualified Hedgehog.Gen as Gen -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property, forAll, tripping) +import Hedgehog qualified as H +import Hedgehog.Gen qualified as Gen +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/KeysByron.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/KeysByron.hs index 670bcc8644..7652779d0c 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/KeysByron.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/KeysByron.hs @@ -5,16 +5,16 @@ module Test.Cardano.Api.KeysByron ) where -import Cardano.Api (AsType (AsByronKey, AsSigningKey), Key (deterministicSigningKey)) +import Cardano.Api (AsType (AsByronKey, AsSigningKey), Key (deterministicSigningKey)) -import Test.Cardano.Api.Orphans () -import qualified Test.Gen.Cardano.Crypto.Seed as Gen +import Test.Cardano.Api.Orphans () +import Test.Gen.Cardano.Crypto.Seed qualified as Gen -import Hedgehog (Property) -import qualified Hedgehog as H -import Test.Hedgehog.Roundtrip.CBOR (trippingCbor) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property) +import Hedgehog qualified as H +import Test.Hedgehog.Roundtrip.CBOR (trippingCbor) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ledger.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ledger.hs index 2e7070ce68..e8dc339dca 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ledger.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ledger.hs @@ -6,26 +6,26 @@ module Test.Cardano.Api.Ledger ) where -import Cardano.Api -import Cardano.Api.Shelley +import Cardano.Api +import Cardano.Api.Shelley -import qualified Cardano.Ledger.Api as L -import Cardano.Ledger.Api.Tx.Address -import Cardano.Ledger.Crypto -import Cardano.Ledger.SafeHash +import Cardano.Ledger.Api qualified as L +import Cardano.Ledger.Api.Tx.Address +import Cardano.Ledger.Crypto +import Cardano.Ledger.SafeHash -import Control.Monad -import Control.Monad.Identity +import Control.Monad +import Control.Monad.Identity -import Test.Gen.Cardano.Api.Typed +import Test.Gen.Cardano.Api.Typed -import Test.Cardano.Ledger.Core.Arbitrary () +import Test.Cardano.Ledger.Core.Arbitrary () -import qualified Hedgehog as H -import Hedgehog.Gen.QuickCheck (arbitrary) -import Hedgehog.Internal.Property -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog qualified as H +import Hedgehog.Gen.QuickCheck (arbitrary) +import Hedgehog.Internal.Property +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- Keep this here to make sure serialiseAddr/deserialiseAddr are working. -- They are defined in the Shelley executable spec and have been wrong at diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Metadata.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Metadata.hs index 15862d5a0a..b45c002e1f 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Metadata.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Metadata.hs @@ -9,26 +9,26 @@ module Test.Cardano.Api.Metadata ) where -import Cardano.Api +import Cardano.Api -import qualified Data.Aeson as Aeson -import Data.ByteString (ByteString) -import qualified Data.Map.Strict as Map -import Data.Maybe (mapMaybe) -import Data.Word (Word64) -import GHC.Exts (IsList (..)) -import GHC.Stack -import Text.InterpolatedString.Perl6 +import Data.Aeson qualified as Aeson +import Data.ByteString (ByteString) +import Data.Map.Strict qualified as Map +import Data.Maybe (mapMaybe) +import Data.Word (Word64) +import GHC.Exts (IsList (..)) +import GHC.Stack +import Text.InterpolatedString.Perl6 -import Test.Gen.Cardano.Api.Metadata +import Test.Gen.Cardano.Api.Metadata -import Hedgehog (Gen, Property, (===)) -import qualified Hedgehog as H -import qualified Hedgehog.Extras as H -import qualified Hedgehog.Gen as Gen -import qualified Hedgehog.Range as Range -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Gen, Property, (===)) +import Hedgehog qualified as H +import Hedgehog.Extras qualified as H +import Hedgehog.Gen qualified as Gen +import Hedgehog.Range qualified as Range +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- ---------------------------------------------------------------------------- -- Golden / unit tests diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ord.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ord.hs index ffa5740db4..d3ae4a185d 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ord.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Ord.hs @@ -3,19 +3,19 @@ module Test.Cardano.Api.Ord ) where -import Cardano.Api -import Cardano.Api.Shelley +import Cardano.Api +import Cardano.Api.Shelley -import Test.Gen.Cardano.Api.Typed +import Test.Gen.Cardano.Api.Typed -import Test.Cardano.Api.Metadata (genTxMetadataValue) +import Test.Cardano.Api.Metadata (genTxMetadataValue) -import Hedgehog (Property, (===)) -import qualified Hedgehog as H -import qualified Hedgehog.Extras as H -import qualified Hedgehog.Gen as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property, (===)) +import Hedgehog qualified as H +import Hedgehog.Extras qualified as H +import Hedgehog.Gen qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) {- HLINT ignore "Use camelCase" -} diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Orphans.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Orphans.hs index 3d26964d4a..477e080d42 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Orphans.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Orphans.hs @@ -7,13 +7,13 @@ module Test.Cardano.Api.Orphans () where -import Cardano.Api.Shelley +import Cardano.Api.Shelley -import Cardano.Crypto.Hash hiding (Hash) -import Cardano.Crypto.KES -import Cardano.Crypto.Libsodium (SodiumHashAlgorithm) +import Cardano.Crypto.Hash hiding (Hash) +import Cardano.Crypto.KES +import Cardano.Crypto.Libsodium (SodiumHashAlgorithm) -import Test.Cardano.Crypto.Orphans () +import Test.Cardano.Crypto.Orphans () -- Signing Key instances diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/ProtocolParameters.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/ProtocolParameters.hs index 480d5291e8..755cf0f493 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/ProtocolParameters.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/ProtocolParameters.hs @@ -10,26 +10,33 @@ module Test.Cardano.Api.ProtocolParameters ) where -import Cardano.Api (CardanoEra (..), ProtocolParametersConversionError, inEonForEra, - prettyPrintJSON) -import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEra (..), ShelleyLedgerEra) -import Cardano.Api.Internal.ProtocolParameters (LedgerProtocolParameters (..), - convertToLedgerProtocolParameters, fromLedgerPParams) -import Cardano.Api.Ledger (PParams (..)) - -import Control.Monad (void) -import Data.Aeson (FromJSON, Object, ToJSON, eitherDecode) -import qualified Data.Aeson.Key as Aeson -import qualified Data.Aeson.KeyMap as Aeson -import qualified Data.ByteString.Lazy as LBS -import Data.Foldable as Foldable (foldl') - -import Test.Gen.Cardano.Api.Typed (genProtocolParameters) - -import Hedgehog (Gen, MonadTest, Property, forAll, property, success, (===)) -import Hedgehog.Extras (leftFail) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Cardano.Api + ( CardanoEra (..) + , ProtocolParametersConversionError + , inEonForEra + , prettyPrintJSON + ) +import Cardano.Api.Internal.Eon.ShelleyBasedEra (ShelleyBasedEra (..), ShelleyLedgerEra) +import Cardano.Api.Internal.ProtocolParameters + ( LedgerProtocolParameters (..) + , convertToLedgerProtocolParameters + , fromLedgerPParams + ) +import Cardano.Api.Ledger (PParams (..)) + +import Control.Monad (void) +import Data.Aeson (FromJSON, Object, ToJSON, eitherDecode) +import Data.Aeson.Key qualified as Aeson +import Data.Aeson.KeyMap qualified as Aeson +import Data.ByteString.Lazy qualified as LBS +import Data.Foldable as Foldable (foldl') + +import Test.Gen.Cardano.Api.Typed (genProtocolParameters) + +import Hedgehog (Gen, MonadTest, Property, forAll, property, success, (===)) +import Hedgehog.Extras (leftFail) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- Originally, cardano-api used a different type than cardano-ledger to represent -- protocol parameters. From conway on, we aim to unify those types and use PParams. diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Transaction/Autobalance.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Transaction/Autobalance.hs index 616140d075..3650209a67 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Transaction/Autobalance.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Transaction/Autobalance.hs @@ -14,44 +14,44 @@ module Test.Cardano.Api.Transaction.Autobalance ) where -import Cardano.Api -import Cardano.Api.Internal.Address (toShelleyStakeCredential) -import Cardano.Api.Internal.Fees -import Cardano.Api.Internal.Script -import qualified Cardano.Api.Ledger as L -import qualified Cardano.Api.Ledger.Lens as L -import Cardano.Api.Shelley (LedgerProtocolParameters (..)) - -import qualified Cardano.Ledger.Alonzo.Core as L -import qualified Cardano.Ledger.Coin as L -import qualified Cardano.Ledger.Mary.Value as L -import Cardano.Ledger.Val ((<->)) -import qualified Cardano.Ledger.Val as L -import qualified Cardano.Slotting.EpochInfo as CS -import qualified Cardano.Slotting.Slot as CS -import qualified Cardano.Slotting.Time as CS - -import qualified Data.ByteString as B -import Data.Default (def) -import Data.Function -import qualified Data.Map.Strict as M -import Data.Maybe -import Data.Ratio ((%)) -import qualified Data.Time.Format as DT -import GHC.Exts (IsList (..)) -import GHC.Stack -import Lens.Micro ((^.)) - -import Test.Gen.Cardano.Api.Typed - -import Test.Cardano.Api.Orphans () - -import Hedgehog (MonadTest, Property, forAll, (===)) -import qualified Hedgehog as H -import qualified Hedgehog.Extras as H -import qualified Hedgehog.Gen as Gen -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Cardano.Api +import Cardano.Api.Internal.Address (toShelleyStakeCredential) +import Cardano.Api.Internal.Fees +import Cardano.Api.Internal.Script +import Cardano.Api.Ledger qualified as L +import Cardano.Api.Ledger.Lens qualified as L +import Cardano.Api.Shelley (LedgerProtocolParameters (..)) + +import Cardano.Ledger.Alonzo.Core qualified as L +import Cardano.Ledger.Coin qualified as L +import Cardano.Ledger.Mary.Value qualified as L +import Cardano.Ledger.Val ((<->)) +import Cardano.Ledger.Val qualified as L +import Cardano.Slotting.EpochInfo qualified as CS +import Cardano.Slotting.Slot qualified as CS +import Cardano.Slotting.Time qualified as CS + +import Data.ByteString qualified as B +import Data.Default (def) +import Data.Function +import Data.Map.Strict qualified as M +import Data.Maybe +import Data.Ratio ((%)) +import Data.Time.Format qualified as DT +import GHC.Exts (IsList (..)) +import GHC.Stack +import Lens.Micro ((^.)) + +import Test.Gen.Cardano.Api.Typed + +import Test.Cardano.Api.Orphans () + +import Hedgehog (MonadTest, Property, forAll, (===)) +import Hedgehog qualified as H +import Hedgehog.Extras qualified as H +import Hedgehog.Gen qualified as Gen +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- | Test that the fee is the same when spending minted asset manually or when autobalancing it prop_make_transaction_body_autobalance_return_correct_fee_for_multi_asset :: Property diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/TxBody.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/TxBody.hs index 5dc668c025..de1d0ed85a 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/TxBody.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/TxBody.hs @@ -12,23 +12,23 @@ module Test.Cardano.Api.TxBody ) where -import Cardano.Api -import Cardano.Api.Internal.Script -import qualified Cardano.Api.Ledger as L -import Cardano.Api.Shelley (ShelleyLedgerEra) +import Cardano.Api +import Cardano.Api.Internal.Script +import Cardano.Api.Ledger qualified as L +import Cardano.Api.Shelley (ShelleyLedgerEra) -import Data.Maybe (isJust) -import Data.Type.Equality (TestEquality (testEquality)) -import GHC.Exts (IsList (..)) +import Data.Maybe (isJust) +import Data.Type.Equality (TestEquality (testEquality)) +import GHC.Exts (IsList (..)) -import Test.Gen.Cardano.Api.Typed +import Test.Gen.Cardano.Api.Typed -import Test.Cardano.Api.Orphans () +import Test.Cardano.Api.Orphans () -import Hedgehog (MonadTest, Property, (===)) -import qualified Hedgehog as H -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (MonadTest, Property, (===)) +import Hedgehog qualified as H +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) -- | Check the txOuts in a TxBodyContent after a ledger roundtrip. prop_roundtrip_txbodycontent_txouts :: forall era. ShelleyBasedEra era -> Property diff --git a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Value.hs b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Value.hs index 7bfc366395..b8f091ed79 100644 --- a/cardano-api/test/cardano-api-test/Test/Cardano/Api/Value.hs +++ b/cardano-api/test/cardano-api-test/Test/Cardano/Api/Value.hs @@ -3,20 +3,27 @@ module Test.Cardano.Api.Value ) where -import Cardano.Api (MaryEraOnwards (..), ShelleyBasedEra (..), ValueNestedBundle (..), - ValueNestedRep (..), fromLedgerValue, valueFromNestedRep, valueToNestedRep) +import Cardano.Api + ( MaryEraOnwards (..) + , ShelleyBasedEra (..) + , ValueNestedBundle (..) + , ValueNestedRep (..) + , fromLedgerValue + , valueFromNestedRep + , valueToNestedRep + ) -import Prelude +import Prelude -import Data.Aeson (eitherDecode, encode) -import Data.List (groupBy, sort) -import qualified Data.Map.Strict as Map +import Data.Aeson (eitherDecode, encode) +import Data.List (groupBy, sort) +import Data.Map.Strict qualified as Map -import Test.Gen.Cardano.Api.Typed (genAssetName, genValueDefault, genValueNestedRep) +import Test.Gen.Cardano.Api.Typed (genAssetName, genValueDefault, genValueNestedRep) -import Hedgehog (Property, forAll, property, tripping, (===)) -import Test.Tasty (TestTree, testGroup) -import Test.Tasty.Hedgehog (testProperty) +import Hedgehog (Property, forAll, property, tripping, (===)) +import Test.Tasty (TestTree, testGroup) +import Test.Tasty.Hedgehog (testProperty) prop_roundtrip_Value_JSON :: Property prop_roundtrip_Value_JSON = diff --git a/cardano-api/test/cardano-api-test/cardano-api-test.hs b/cardano-api/test/cardano-api-test/cardano-api-test.hs index a386d624c0..e33715cba9 100644 --- a/cardano-api/test/cardano-api-test/cardano-api-test.hs +++ b/cardano-api/test/cardano-api-test/cardano-api-test.hs @@ -1,33 +1,33 @@ module Main where -import Cardano.Crypto.Libsodium (sodiumInit) +import Cardano.Crypto.Libsodium (sodiumInit) -import System.IO (BufferMode (LineBuffering), hSetBuffering, hSetEncoding, stdout, utf8) +import System.IO (BufferMode (LineBuffering), hSetBuffering, hSetEncoding, stdout, utf8) -import qualified Test.Gen.Cardano.Api.Byron +import Test.Gen.Cardano.Api.Byron qualified -import qualified Test.Cardano.Api.Address -import qualified Test.Cardano.Api.Bech32 -import qualified Test.Cardano.Api.CBOR -import qualified Test.Cardano.Api.Crypto -import qualified Test.Cardano.Api.Envelope -import qualified Test.Cardano.Api.EpochLeadership -import qualified Test.Cardano.Api.Eras -import qualified Test.Cardano.Api.Genesis -import qualified Test.Cardano.Api.GovAnchorValidation -import qualified Test.Cardano.Api.IO -import qualified Test.Cardano.Api.Json -import qualified Test.Cardano.Api.KeysByron -import qualified Test.Cardano.Api.Ledger -import qualified Test.Cardano.Api.Metadata -import qualified Test.Cardano.Api.Ord -import qualified Test.Cardano.Api.ProtocolParameters -import qualified Test.Cardano.Api.RawBytes -import qualified Test.Cardano.Api.Transaction.Autobalance -import qualified Test.Cardano.Api.TxBody -import qualified Test.Cardano.Api.Value +import Test.Cardano.Api.Address qualified +import Test.Cardano.Api.Bech32 qualified +import Test.Cardano.Api.CBOR qualified +import Test.Cardano.Api.Crypto qualified +import Test.Cardano.Api.Envelope qualified +import Test.Cardano.Api.EpochLeadership qualified +import Test.Cardano.Api.Eras qualified +import Test.Cardano.Api.Genesis qualified +import Test.Cardano.Api.GovAnchorValidation qualified +import Test.Cardano.Api.IO qualified +import Test.Cardano.Api.Json qualified +import Test.Cardano.Api.KeysByron qualified +import Test.Cardano.Api.Ledger qualified +import Test.Cardano.Api.Metadata qualified +import Test.Cardano.Api.Ord qualified +import Test.Cardano.Api.ProtocolParameters qualified +import Test.Cardano.Api.RawBytes qualified +import Test.Cardano.Api.Transaction.Autobalance qualified +import Test.Cardano.Api.TxBody qualified +import Test.Cardano.Api.Value qualified -import Test.Tasty (TestTree, defaultMain, testGroup) +import Test.Tasty (TestTree, defaultMain, testGroup) main :: IO () main = do From 2ea79c0d9d97b2fc87c1723fe3b27d9a4e0d4ad2 Mon Sep 17 00:00:00 2001 From: Mateusz Galazyn Date: Tue, 18 Feb 2025 12:48:33 +0100 Subject: [PATCH 3/3] Ignore reformatting in .git-blame-ignore-refs --- .git-blame-ignore-revs | 1 + 1 file changed, 1 insertion(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 27c540af4f..77f0c4b11c 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -2,3 +2,4 @@ e28fadbebc18b87991f84af72d8611393ae8875a b76f949e815990545371530a466b16f691a3aa98 73fd9122f78282b1db7f6884b3bc23fb29f3e67f 7634a9e8235050a55e5e3022a22a550aa3ade06e +1bb9b9baf0aa9bf610df7fb8fcad193563469eb3