-
-
Notifications
You must be signed in to change notification settings - Fork 14.5k
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
echidna: 1.7.3 -> 2.0.2 #190144
echidna: 1.7.3 -> 2.0.2 #190144
Conversation
what can we do to unblock this from being merged? |
@IvarWithoutBones what you pointed out makes total sense, I've made those changes. I originally started with another approach and didn't realize things can be moved around. |
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.
Thanks for sending this PR.
Couple pieces of feedback:
- We generally ask all haskell-related PRs to go to the
haskell-updates
branch. Could you rebase on there and change the base branch here on GitHub?
And then some more inline.
@@ -739,7 +739,7 @@ self: super: builtins.intersectAttrs super { | |||
}) super.haskell-language-server; | |||
|
|||
# tests depend on a specific version of solc | |||
hevm = dontCheck (doJailbreak super.hevm); | |||
hevm = unmarkBroken (dontCheck (appendPatch ./patches/hevm-update-deps.patch super.hevm)); |
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 almost never use
unmarkBroken
. Instead, you'll need to removehevm
from the broken list inpkgs/development/haskell-modules/configuration-hackage2nix/broken.yaml
and runmaintainers/scripts/haskell/regenerate-hackage-packages.sh
. - We try to never carry around
.patch
files in Nixpkgs because it bloats the repo. If at all possible, we like to pull commits or PRs from upstream withfetchpatch
. There should be a bunch of examples of that in this file andpkgs/development/haskell-modules/configuration-common.nix
.
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.
Fixed 2.
transformers >= 0.5.6 && < 0.6, | ||
tree-view >= 0.5 && < 0.6, | ||
abstract-par >= 0.3.3 && < 0.4, | ||
- aeson >= 1.5.6 && < 1.6, |
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.
- Instead of patching these out, you could get away with just using
doJailbreak
. That should require less maintenance in the long-run (but be slightly harder to debug when it ends up no longer working).
@@ -1,5 +1,4 @@ | |||
{ lib |
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.
- Is there some reason echidna is not on Hackage? Could you upload it to hackage? That way, you wouldn't have to maintain this file here, but it would get updated automatically with the rest of the Haskell packages in Nixpkgs.
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.
I have to speak with the rest of the echidna team, but I think we can do this.
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.
Is it okay if we merge this and I'll work on hackage for the next update?
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.
Yeah, that sounds good, thanks!
@cdepillabout I rebased the PR. Regarding other comments, the situation with hevm is a bit problematic at the moment. I updated the dependencies in the upstream a while ago here dapphub/dapptools#938 but the integration test suite there had issues after that. On top of that, recently, the development of hevm moved to https://github.com/ethereum/hevm with the deps updated but I'm waiting for the 0.50.0 release as the code is in development state right now. I think it's best to just keep those patches until 0.50.0 is published and I'll clean it all up when it lands. |
@arcz So there is currently no commit in any upstream that makes these same compatibility changes? |
Right, I don't think there is a sensible commit to pick as a patch. I hand-crafted them. |
@arcz Okay, in that case it sounds like we have no choice. Could you make sure to put a good comment on them where you pull them in describing why they are necessary and when we expect to be able to get rid of them? |
@cdepillabout done |
LGTM, thanks for working through this one! If you're interested in making sure |
Description of changes
This fixes echidna that suffered from breakage of hevm. We are working on updating hevm to move forward with dependencies but it will take some time. Until then, both hevm and echidna need little patches to update aeson that changed API with the major update.
I tried to revert aeson to the previous version but that started a rabbit hole of incompatibilities.
Fixes #182500.
Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)nixos/doc/manual/md-to-db.sh
to update generated release notes