Emscripten binaries for version 0.3.6 in solc-bin were not built from the commit tagged as v0.3.6
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 21
Description
In solc-bin we have [soljson-v0.3.6+commit.3fc68da5.js](https://github.com/ethereum/solc-bin/blob/gh-pages/bin/soljson-v0.3.6+commit.3fc68da5.js) and [soljson-v0.3.6+commit.3fc68da5.js](https://github.com/ethereum/solc-bin/blob/gh-pages/wasm/soljson-v0.3.6+commit.3fc68da5.js), both built from 3fc68da5. Tag [`v0.3.6`](https://github.com/ethereum/solidity/tree/v0.3.6) points at commit 988fe5e (i.e. one commit after 3fc68da5).
This is a problem because they will produce different bytecode than releases from other platforms built on `v0.3.6` (e.g. the recent macOS rebuilds).
The binaries in solc-bin are not necessarily the files that were released - [release `v0.3.6`](https://github.com/ethereum/solidity/releases/tag/v0.3.6) has no binaries attached at all - so I think we could rebuild on the tag and put both in the repo.
Contributor guide
Research direction
The affected artifacts are soljson-v0.3.6+commit.3fc68da5.js in the solc-bin bin/ and wasm/ paths; start by checking their provenance against tag v0.3.6 and the referenced commits. Rebuild both Emscripten outputs from the tagged commit, place them in solc-bin, and verify they correspond to v0.3.6 without the reported bytecode mismatch.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- build-system, release
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100