Move transaction command implementation to era based #196
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changelog
Context
This means that
cardano-cli <era> transaction
commands now exist. They behave just like the legacy ones except they don't take--<era>
flags by instead relying on the top-level parent to determine the era.The change involves duplicating the transaction command structure from legacy into era-based, parameterising then parameterising
TransactionCmd
withera
.Legacy has
LegacyTransactionCmd
as well asrunLegacyTx*Cmd
functions which just unpacks theAnyCardanoEra
and forwards the parameterisedera
torunTx*Cmd
in era-based.It can be observed from the CLI golden file diffs that the legacy commands remain unchanged and that the
transaction
command group now exists in era-based under each era.This PR touches only
9
Haskell files, but does inevitably involve changing139
golden files.This PR make sit possible (although it hasn't been done yet) for
conway transaction build
command to have these two command line options:Whilst having them absent for other eras.
Checklist
See Running tests for more details
.cabal
files are updatedhlint
. See.github/workflows/check-hlint.yml
to get thehlint
versionstylish-haskell
. See.github/workflows/stylish-haskell.yml
to get thestylish-haskell
versionghc-8.10.7
andghc-9.2.7