Skip to content
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

♻️ add solc 0.8.18 support #969

Merged
merged 3 commits into from
Feb 16, 2023
Merged

♻️ add solc 0.8.18 support #969

merged 3 commits into from
Feb 16, 2023

Conversation

pcaversaccio
Copy link
Contributor

Description

Add support for solc 0.8.18. The content was generated using $ ./nix/make-solc-static.sh.

Checklist

  • tested locally
  • added automated tests
  • updated the docs
  • updated the changelog

Cc: @d-xo

Signed-off-by: Pascal Marco Caversaccio <pascal.caversaccio@hotmail.ch>
@pcaversaccio
Copy link
Contributor Author

pcaversaccio commented Feb 2, 2023

I discovered today a problem that the Solidity version 0.8.18 binaries were built with a too recent version of GLIBC and thereby did not run on older Linux systems. The binary was rebuilt and now has another hash than the original binary. For more information, see here ethereum/solidity#13921. I will have to update the file accordingly.

Signed-off-by: Pascal Marco Caversaccio <pascal.caversaccio@hotmail.ch>
@pcaversaccio
Copy link
Contributor Author

pcaversaccio commented Feb 3, 2023

So as summary:

/// Old Solidity 0.8.18 binary version
sha256 = "1g9jbh4xkg4yvyyzyr429xx7spg01qmzdv0rczsjcb28nhzg7h51"

/// New Solidity 0.8.18 binary version
sha256 = "0xxa907llrryrsm9nppfc0lds0l3zfhwngj4zfddhfm6954yvrlm"

This change is reflected via b188f7d.

@cameel
Copy link

cameel commented Feb 3, 2023

How are these hashes calculated? Both look different from what sha256sum gives me:

old: a1c0f33eb4482c26f56719ecf62b0ee05d7d7a4f8264ffbddf9ebcd9095c32bd
new: 95e6ed4949a63ad89afb443ecba1fb8302dd2860ee5e9baace3e674a0f48aa77

@cameel
Copy link

cameel commented Feb 3, 2023

Is this just a base64 encoding while the CLI tool uses hex? Or are they actually different?

@pcaversaccio
Copy link
Contributor Author

pcaversaccio commented Feb 3, 2023

Is this just a base64 encoding while the CLI tool uses hex? Or are they actually different?

Run it like that:

nix-prefetch-url --type sha256 https://binaries.soliditylang.org/linux-amd64/solc-linux-amd64-v0.8.18+commit.87f61d96

See here.

@cameel
Copy link

cameel commented Feb 3, 2023

Ah, ok. I thought that by ethereum/solidity#13921 (comment) you meant that still fails because of checksums but I guess checksums are ok now?

In the log I see failure on this:

Running todo_sig_fuzz... PENDING
parse error: Invalid numeric literal at line 1, column 7
Running test_4byte... FAILURE
 expected [transfer(address,uint256)] but was []
tests.sh:591:test_4byte()

The test looks like this:

# SETH 4BYTE TESTS
# seth 4byte
test_4byte() {
assert_equals "transfer(address,uint256)" "$(seth 4byte a9059cbb | tail -n 1)"
}

Can't say much because it goes through seth. Is seth 4byte using the compiler under the hood? If not, the problem must be caused by something else.

@pcaversaccio
Copy link
Contributor Author

checksums are ok yes so nothing to be done on your end imho. It was just weird that when I committed the first version of the compiler, the tests were successful and when I adjusted the checksum to reflect the new binary it failed. So maybe there is indeed a problem in seth...

@cameel
Copy link

cameel commented Feb 3, 2023

ok. Let me know if it ends up being something in the compiler after all though. Could always be something that was just not discovered until now and only surfaced in some non-completely deterministic case.

@pcaversaccio
Copy link
Contributor Author

sure will do - but interestingly the CI also fails for macos so high probability it's not related to the recent Linux build fix.

@pcaversaccio
Copy link
Contributor Author

@cameel as a heads-up it was an internal connection issue and the CI runs pass now as intended. No issue on the compiler side.

@cameel
Copy link

cameel commented Feb 6, 2023

ok, good :) Thanks for the info.

Copy link
Contributor

@d-xo d-xo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@d-xo d-xo merged commit f2c525f into dapphub:master Feb 16, 2023
@pcaversaccio pcaversaccio deleted the patch-1 branch February 16, 2023 17:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants