-
Notifications
You must be signed in to change notification settings - Fork 407
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
macOS binaries with correct version strings #76
Conversation
EDIT 2021-01-24: This comment is now out of date. See updated details further down. Current status of the bytecode comparison (from #77, which is still WIP): https://github.com/cameel/solc-bin/pull/1/checks?check_run_id=1594500955 Here's the relevant part of the output: bytecode-comparison-2020-12-22.txt There are still 13 versions with differences (and 0.4.11 which was skipped in this run). From what I've seen so far, it's likely that I have already detected one binary with bytecode differences, though it's a Linux one: |
d3fdec3
to
cc799d2
Compare
cc799d2
to
8a883c1
Compare
067f4c3
to
7864ece
Compare
d2809be
to
a35db5a
Compare
I'm done verifying the binaries. Unfortunately there are a few versions with problems that prevent the PR check from #77 from passing. This is, however, all caused by factors other than the macOS rebuild - bytecode differences from binaries on other platforms and macOS differences that can't really be fixed. See below for details. Report differences
In all other cases the reports are identical on all platforms (except Windows which I could not check). Here's the most relevant part of the output of the last run of the To make sure the binaries I did not replace are fine too, I have created a PR in my fork that touched all the binaries to force a CI run covering all of them. Here are the results: bytecode-comparison-all-2021-01-25.txt. There are no extra differences. |
Also, I decided not to leave the buggy builds in a subdirectory. They should not be used in normal circumstances and they're still available in repo history in case anyone needs them for verification anyway. I have created a tag to make finding them easier: |
We have decided to close ethereum/solidity#10841 and leave the 0.4.7 and 0.4.8 binaries in the repo. In that case should I hard-code the PR check to skip these versions? This is an option but it might also be misleading (by not being apparent that they were skipped) and we're not likely to modify these binaries in the future anyway. |
805d84a
to
78924d7
Compare
a35db5a
to
20505ff
Compare
20505ff
to
af2b12e
Compare
Rebased on |
Did we end up releasing the blog post about these? |
PR branch based on #77. Don't merge until that PR is merged!It's ongh-pages
now.Fixes ethereum/solidity#10183.
This PR contains macOS binaries in versions between 0.3.6 and 0.6.0 rebuilt with the change from #75. This fixes the discrepancy in the generated bytecode.
Old binaries are preserved inmacosx-amd64/retired-rebuilds-with-version-discrepancy/
. I'm not sure if it's worth keeping them. They do let people verify stuff they have already built using them but hopefully not many people were affected by that - macOS binaries were added only very recently.