-
Notifications
You must be signed in to change notification settings - Fork 214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update to cardano-node 1.35-rc2 #3280
Conversation
ab674d3
to
8989644
Compare
085df45
to
3b9f866
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @Anviking
Just leaving some suggestions (See comments.)
5beaea0
to
94c663f
Compare
ae261c8
to
f8b0c33
Compare
be95850
to
135f18c
Compare
We can avoid a "stringly-typed" constructor here by reusing the `TranslationError` type provided by `Cardano.Ledger.Alonzo.TxInfo`.
136e20b
to
035fd11
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks reasonable to me.
I just have a few questions! (See comments.)
@@ -33,7 +33,7 @@ | |||
############################################################################ | |||
|
|||
inputs = { | |||
nixpkgs.follows = "haskellNix/nixpkgs-2111"; | |||
nixpkgs.follows = "haskellNix/nixpkgs-unstable"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we know what the implications of following nixpkgs-unstable
are?
For example, will it lead to more frequent fetching of dependencies? (i.e., when entering a nix develop
shell, will we have to download dependencies more frequently than before?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we know what the implications of following nixpkgs-unstable are?
I don't entirely, but it seems to be needed, and I believe the consensus is that it's "fine".
(i.e., when entering a nix develop shell, will we have to download dependencies more frequently than before?)
No, the dependencies are locked in flake.lock
, and we'd only need to download new dependencies when we bump... haskell.nix
I think.
, Api.txOuts | ||
, Api.txTotalCollateral = TxTotalCollateralNone | ||
, Api.txReturnCollateral = TxReturnCollateralNone |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We generate a value for txIns
here. Do we need a task to generate values for txInsCollateral
, txTotalCollateral
, and txReturnCollateral
, and txInsReference
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm:
txTotalCollateral
- might be added as part of ADP-1653txReturnCollateral
- might be added as part of ADP-1653txInsReference
- relevant to ADP-1655txInsCollateral
-I have added it to https://input-output.atlassian.net/browse/ADP-1374
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And actually we are already generating txInsCollateral
, just at a later step (added a note).
- Link usages of PackageImports to ADP-1910, where we explain why we used PackageImports and how we might get rid of it in future.
2fd77d5
to
604f06e
Compare
- Try bumping haskell.nix to fix remaining issues with windows cross-compile builds.
843a407
to
0902c88
Compare
By treating `TimeTranslationPastHorizon` differently we can return the same api error code as we used to, and which is arguably more descriptive.
I think it would be good to have #3328 or something similar before merging for the sake of removing |
3328: Completely drop stack.yaml and sha256map.nix r=sevanspowell a=Anviking - It seems `stack.yaml` and `sha256map.nix` can just be removed and replaced with [`checkCabalProject`](https://github.com/input-output-hk/iohk-nix/search?q=checkCabalProject) and `--sha256` lines in `cabal.project` ### Tested manually Sanity checking that it works similarly to with the stack and sha256map-based approach: #### Revision in cabal.project changed ``` $ ./nix/regenerate.sh Changes required to cabal.project --- cabal.project.old 2022-06-13 20:35:27.437617302 +0200 +++ cabal.project 2022-06-13 20:36:37.049474850 +0200 `@@` -90,7 +90,7 `@@` type: git location: https://github.com/input-output-hk/cardano-addresses tag: 4ff9c4022d4d257053c96509f20c9d931ab8f57b - --sha256: 0iqzppqqb1xqnp55yd0xil9qfy8fz8474w834nmfg2w692bynyb9 + --sha256: 0q93a2r4v8d3nfvix6yjmbh3v77hz2hpp6p11krklvnvw7h00lfk subdir: command-line core ``` (exit code 1) #### Invalid SHA256 hash ``` $ ./nix/regenerate.sh Changes required to cabal.project --- cabal.project.old 2022-06-13 20:42:25.934613264 +0200 +++ cabal.project 2022-06-13 20:43:38.737611148 +0200 `@@` -299,7 +299,7 `@@` type: git location: https://github.com/haskell-works/hw-aeson tag: d99d2f3e39a287607418ae605b132a3deb2b753f - --sha256: 0vxqcwjg9q37wbwi27y9ba5163lzfz51f1swbi0rp681yg63zvn4 + --sha256: 1vxqcwjg9q37wbwi27y9ba5163lzfz51f1swbi0rp681yg63zvn4 ``` (exit code 1) <!-- Additional comments, links, or screenshots to attach, if any. --> #### Invalid SHA256 hash in `cabal.project` + `direnv reload` The corresponding change on master would be having an incorrect hash in `sha256map.nix` and calling `direnv reload`. And if you on master changed a revision in `stack.yaml`, `direnv reload` would still work, only `./nix/regenerate.sh` wouldn't. Because `nix shell` now is derived directly from `cabal.project` without intermediate state like sha256map.nix, `direnv reload` now fails directly. ```bash direnv reload (4s 207ms) direnv: loading ~/IOHK/cardano-wallet/.envrc direnv: using flake warning: Git tree '/Users/anviking/IOHK/cardano-wallet' is dirty trace: To make project.plan-nix for cardano-wallet a fixed-output derivation but not materialized, set `plan-sha256` to the output of the 'calculateMaterializedSha' script in 'passthru'. trace: To materialize project.plan-nix for cardano-wallet entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'. direnv: ([/usr/local/bin/direnv export fish]) is taking a while to execute. Use CTRL-C to give up. error: hash mismatch in fixed-output derivation '/nix/store/icv2hd3bghfg80fvppdnjp0b0h1wji7x-hw-aeson-d99d2f3.drv': specified: sha256-xO4/zPMBmZtBXFwHF8p3nw4TilrJHxH54mfg9CRnuG8= got: sha256-xO4/zPMBmZtBXFwHF8p3nw4TilrJHxH54mfg9CRnuO8= error: 1 dependencies of derivation '/nix/store/493wcz8r85zbq5yaimm74ldnwz62m6in-source-repository-package.drv' failed to build error: 1 dependencies of derivation '/nix/store/2ja2788s8ivgsv2mcrb2b9pdl7b894dx-cardano-wallet-plan-to-nix-pkgs.drv' failed to build (use '--show-trace' to show detailed location information) warning: Git tree '/Users/anviking/IOHK/cardano-wallet' is dirty direnv: renewed cache direnv: export +XDG_DATA_DIRS ``` ### Comments Targets #3280 ### Issue Number ADP-1744 <!-- Reference the Jira/GitHub issue that this PR relates to, and which requirements it tackles. Note: Jira issues of the form ADP- will be auto-linked. --> Co-authored-by: Johannes Lund <johannes.lund@iohk.io>
…etely-drop-stack.yaml Completely drop stack.yaml and sha256map.nix
No objection! Nice work 🥳 I've merged #3328. |
bors r+ |
3280: Update to cardano-node 1.35-rc2 r=Anviking a=Anviking ### Overview - Updates dependencies to target `cardano-node 1.35-rc2` - Adds support to make the wallet _mostly_ work in Babbage - Rework of nix setup: we now derive nix files from `cabal.project` rather than the weird `stack.yaml`-based approach we had before. ### Detailed todo-list - [x] Get nix happy with the new dependencies - [x] Make `cabal build all` work with modulo warnings - [x] Update to more recent revisions - [x] Fix compilation in tests again - [x] Make `cabal build all` work with _no_ warnings - [x] Fix puzzling persistent TH name shadowing warnings -> fixed by sam? - [x] Ensure existing tests pass - [x] unit - [x] Look closer at balanceTx golden unit failure after first seeing if balanceTx integration tests pass on both alonzo and Babbage - [x] Integration (on alonzo like on master) - [x] Was blocked by readTVar, fixed with input-output-hk/io-sim#6 (review) - [x] Fix failures relating to Babbage era -> fixed with a hack 9e2568e - [x] Fix cardano-wallet-core Aeson failures - [x] More closely review code-changes - [x] Clean up git commit history - [x] Flatten merge commits - [x] Squash back-and-forth nix and revision changes - [x] Rebase off master - [x] Ensure revisions in stack.yaml and cabal.project are updated consistently - Alternatively remove `stack.yaml` and ensure ./nix/regenerate.sh still works and that we know how to update sha256map.nix — #3328 but without the sha256map.nix - [x] Ensure CI is completely green: [Hydra jobset](https://hydra.iohk.io/jobset/Cardano/cardano-wallet-pr-3280), ADP-1888 - There may be CI specific problems with nix, windows and more (there probably are) - [x] fix hydra wine TH error e.g. `$(TH.lift =<< TH.runIO (readFile "app/foo.txt"))` - seems relevant input-output-hk/haskell.nix#1508 - seems gone now - [x] `Ambiguous module name` https://hydra.iohk.io/build/15469467 - https://input-output-rnd.slack.com/archives/C48HA39RS/p1654388106509579 - Bumping Haskell.nix again should help? - Didn't seem like it worked... - https://input-output-rnd.slack.com/archives/CAP8NM7N0/p1654828014483969 - [x] Remove-iserv problem https://hydra.iohk.io/build/15604435 - Update from Hamish https://input-output-rnd.slack.com/archives/CAP8NM7N0/p1655213059547499?thread_ts=1654828014.483969&cid=CAP8NM7N0 - [x] Docs shell - we don't need explicit emanote input in nix config - [x] Profiled shell: `recursionzmschemeszm5zi2zi2zi2zm6NC6xZZx2tI3826DrVhqI9v_DataziFunctorziFoldableziTH_zdfMakeBaseFunctorNamezuzdcmakeBaseFunctor_closure` https://hydra.iohk.io/build/15694577/nixlog/2/tail - [x] musl cli goldens https://hydra.iohk.io/build/15694618/nixlog/82 - [x] `hie-bios: hie-bios: this operation requires -fexternal-interpreter - [x] `Ambiguous module name 'Options.Applicative':` in HLS - now we at least have an ugly `-XPackageImport` workaround. - [x] Update node revision in readme.md ### Things we need eventually, but not strictly for this PR > - Update to final 1.35 tag once it is released - can be done in separate PR > - Run existing integration tests on both Alonzo and Babbage eras in CI > - Depend on cardano-addresses with aeson2 support merged, tagged and released > - Depend on a cardano-sl-x509 where aeson 2 support is merged to master > - Consider appropriateness Tx deserialisation hack 9e2568e Moved to jira tasks in https://input-output.atlassian.net/browse/ADP-1538 ### Comments Includes #3258, #3293 <!-- Additional comments, links, or screenshots to attach, if any. --> ### Issue Number ADP-1744 <!-- Reference the Jira/GitHub issue that this PR relates to, and which requirements it tackles. Note: Jira issues of the form ADP- will be auto-linked. --> Co-authored-by: Johannes Lund <johannes.lund@iohk.io> Co-authored-by: Pawel Jakubas <jakubas.pawel@gmail.com> Co-authored-by: Samuel Evans-Powell <mail@sevanspowell.net> Co-authored-by: Jonathan Knowles <jonathan.knowles@iohk.io>
Timed out. |
bors r+ |
3280: Update to cardano-node 1.35-rc2 r=Anviking a=Anviking ### Overview - Updates dependencies to target `cardano-node 1.35-rc2` - Adds support to make the wallet _mostly_ work in Babbage - Rework of nix setup: we now derive nix files from `cabal.project` rather than the weird `stack.yaml`-based approach we had before. ### Detailed todo-list - [x] Get nix happy with the new dependencies - [x] Make `cabal build all` work with modulo warnings - [x] Update to more recent revisions - [x] Fix compilation in tests again - [x] Make `cabal build all` work with _no_ warnings - [x] Fix puzzling persistent TH name shadowing warnings -> fixed by sam? - [x] Ensure existing tests pass - [x] unit - [x] Look closer at balanceTx golden unit failure after first seeing if balanceTx integration tests pass on both alonzo and Babbage - [x] Integration (on alonzo like on master) - [x] Was blocked by readTVar, fixed with input-output-hk/io-sim#6 (review) - [x] Fix failures relating to Babbage era -> fixed with a hack 9e2568e - [x] Fix cardano-wallet-core Aeson failures - [x] More closely review code-changes - [x] Clean up git commit history - [x] Flatten merge commits - [x] Squash back-and-forth nix and revision changes - [x] Rebase off master - [x] Ensure revisions in stack.yaml and cabal.project are updated consistently - Alternatively remove `stack.yaml` and ensure ./nix/regenerate.sh still works and that we know how to update sha256map.nix — #3328 but without the sha256map.nix - [x] Ensure CI is completely green: [Hydra jobset](https://hydra.iohk.io/jobset/Cardano/cardano-wallet-pr-3280), ADP-1888 - There may be CI specific problems with nix, windows and more (there probably are) - [x] fix hydra wine TH error e.g. `$(TH.lift =<< TH.runIO (readFile "app/foo.txt"))` - seems relevant input-output-hk/haskell.nix#1508 - seems gone now - [x] `Ambiguous module name` https://hydra.iohk.io/build/15469467 - https://input-output-rnd.slack.com/archives/C48HA39RS/p1654388106509579 - Bumping Haskell.nix again should help? - Didn't seem like it worked... - https://input-output-rnd.slack.com/archives/CAP8NM7N0/p1654828014483969 - [x] Remove-iserv problem https://hydra.iohk.io/build/15604435 - Update from Hamish https://input-output-rnd.slack.com/archives/CAP8NM7N0/p1655213059547499?thread_ts=1654828014.483969&cid=CAP8NM7N0 - [x] Docs shell - we don't need explicit emanote input in nix config - [x] Profiled shell: `recursionzmschemeszm5zi2zi2zi2zm6NC6xZZx2tI3826DrVhqI9v_DataziFunctorziFoldableziTH_zdfMakeBaseFunctorNamezuzdcmakeBaseFunctor_closure` https://hydra.iohk.io/build/15694577/nixlog/2/tail - [x] musl cli goldens https://hydra.iohk.io/build/15694618/nixlog/82 - [x] `hie-bios: hie-bios: this operation requires -fexternal-interpreter - [x] `Ambiguous module name 'Options.Applicative':` in HLS - now we at least have an ugly `-XPackageImport` workaround. - [x] Update node revision in readme.md ### Things we need eventually, but not strictly for this PR > - Update to final 1.35 tag once it is released - can be done in separate PR > - Run existing integration tests on both Alonzo and Babbage eras in CI > - Depend on cardano-addresses with aeson2 support merged, tagged and released > - Depend on a cardano-sl-x509 where aeson 2 support is merged to master > - Consider appropriateness Tx deserialisation hack 9e2568e Moved to jira tasks in https://input-output.atlassian.net/browse/ADP-1538 ### Comments Includes #3258, #3293 <!-- Additional comments, links, or screenshots to attach, if any. --> ### Issue Number ADP-1744 <!-- Reference the Jira/GitHub issue that this PR relates to, and which requirements it tackles. Note: Jira issues of the form ADP- will be auto-linked. --> Co-authored-by: Johannes Lund <johannes.lund@iohk.io> Co-authored-by: Pawel Jakubas <jakubas.pawel@gmail.com> Co-authored-by: Samuel Evans-Powell <mail@sevanspowell.net> Co-authored-by: Jonathan Knowles <jonathan.knowles@iohk.io>
Build failed:
|
bors r+ |
3280: Update to cardano-node 1.35-rc2 r=Anviking a=Anviking ### Overview - Updates dependencies to target `cardano-node 1.35-rc2` - Adds support to make the wallet _mostly_ work in Babbage - Rework of nix setup: we now derive nix files from `cabal.project` rather than the weird `stack.yaml`-based approach we had before. ### Detailed todo-list - [x] Get nix happy with the new dependencies - [x] Make `cabal build all` work with modulo warnings - [x] Update to more recent revisions - [x] Fix compilation in tests again - [x] Make `cabal build all` work with _no_ warnings - [x] Fix puzzling persistent TH name shadowing warnings -> fixed by sam? - [x] Ensure existing tests pass - [x] unit - [x] Look closer at balanceTx golden unit failure after first seeing if balanceTx integration tests pass on both alonzo and Babbage - [x] Integration (on alonzo like on master) - [x] Was blocked by readTVar, fixed with input-output-hk/io-sim#6 (review) - [x] Fix failures relating to Babbage era -> fixed with a hack 9e2568e - [x] Fix cardano-wallet-core Aeson failures - [x] More closely review code-changes - [x] Clean up git commit history - [x] Flatten merge commits - [x] Squash back-and-forth nix and revision changes - [x] Rebase off master - [x] Ensure revisions in stack.yaml and cabal.project are updated consistently - Alternatively remove `stack.yaml` and ensure ./nix/regenerate.sh still works and that we know how to update sha256map.nix — #3328 but without the sha256map.nix - [x] Ensure CI is completely green: [Hydra jobset](https://hydra.iohk.io/jobset/Cardano/cardano-wallet-pr-3280), ADP-1888 - There may be CI specific problems with nix, windows and more (there probably are) - [x] fix hydra wine TH error e.g. `$(TH.lift =<< TH.runIO (readFile "app/foo.txt"))` - seems relevant input-output-hk/haskell.nix#1508 - seems gone now - [x] `Ambiguous module name` https://hydra.iohk.io/build/15469467 - https://input-output-rnd.slack.com/archives/C48HA39RS/p1654388106509579 - Bumping Haskell.nix again should help? - Didn't seem like it worked... - https://input-output-rnd.slack.com/archives/CAP8NM7N0/p1654828014483969 - [x] Remove-iserv problem https://hydra.iohk.io/build/15604435 - Update from Hamish https://input-output-rnd.slack.com/archives/CAP8NM7N0/p1655213059547499?thread_ts=1654828014.483969&cid=CAP8NM7N0 - [x] Docs shell - we don't need explicit emanote input in nix config - [x] Profiled shell: `recursionzmschemeszm5zi2zi2zi2zm6NC6xZZx2tI3826DrVhqI9v_DataziFunctorziFoldableziTH_zdfMakeBaseFunctorNamezuzdcmakeBaseFunctor_closure` https://hydra.iohk.io/build/15694577/nixlog/2/tail - [x] musl cli goldens https://hydra.iohk.io/build/15694618/nixlog/82 - [x] `hie-bios: hie-bios: this operation requires -fexternal-interpreter - [x] `Ambiguous module name 'Options.Applicative':` in HLS - now we at least have an ugly `-XPackageImport` workaround. - [x] Update node revision in readme.md ### Things we need eventually, but not strictly for this PR > - Update to final 1.35 tag once it is released - can be done in separate PR > - Run existing integration tests on both Alonzo and Babbage eras in CI > - Depend on cardano-addresses with aeson2 support merged, tagged and released > - Depend on a cardano-sl-x509 where aeson 2 support is merged to master > - Consider appropriateness Tx deserialisation hack 9e2568e Moved to jira tasks in https://input-output.atlassian.net/browse/ADP-1538 ### Comments Includes #3258, #3293 <!-- Additional comments, links, or screenshots to attach, if any. --> ### Issue Number ADP-1744 <!-- Reference the Jira/GitHub issue that this PR relates to, and which requirements it tackles. Note: Jira issues of the form ADP- will be auto-linked. --> Co-authored-by: Johannes Lund <johannes.lund@iohk.io> Co-authored-by: Pawel Jakubas <jakubas.pawel@gmail.com> Co-authored-by: Samuel Evans-Powell <mail@sevanspowell.net> Co-authored-by: Jonathan Knowles <jonathan.knowles@iohk.io>
Build failed: |
bors r+ |
Build succeeded: |
Overview
cardano-node 1.35-rc2
cabal.project
rather than the weirdstack.yaml
-based approach we had before.Detailed todo-list
cabal build all
work with modulo warningscabal build all
work with no warningsstack.yaml
and ensure ./nix/regenerate.sh still works and that we know how to update sha256map.nix — Completely drop stack.yaml and sha256map.nix #3328 but without the sha256map.nix$(TH.lift =<< TH.runIO (readFile "app/foo.txt"))
- seems relevant Repin wine to 3.21 as file access from TH breaks otherwise input-output-hk/haskell.nix#1508
- seems gone now
Ambiguous module name
https://hydra.iohk.io/build/15469467recursionzmschemeszm5zi2zi2zi2zm6NC6xZZx2tI3826DrVhqI9v_DataziFunctorziFoldableziTH_zdfMakeBaseFunctorNamezuzdcmakeBaseFunctor_closure
https://hydra.iohk.io/build/15694577/nixlog/2/tailAmbiguous module name 'Options.Applicative':
in HLS - now we at least have an ugly-XPackageImport
workaround.Things we need eventually, but not strictly for this PR
Moved to jira tasks in https://input-output.atlassian.net/browse/ADP-1538
Comments
Includes #3258, #3293
Issue Number
ADP-1744