Add pre-release/nightly builds inside the list of static binaries
- Dominant language
- C++
- Stars
- 25.7k
- Forks
- 6.2k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 21
Description
## Abstract
Add pre-release/nightly builds inside the list of solidity static binaries.
## Motivation
Following the official documentation (https://docs.soliditylang.org/en/latest/installing-solidity.html#static-binaries), suggested static binaries can be listed from https://binaries.soliditylang.org/emscripten-wasm32/list.json, with https://binaries.soliditylang.org/emscripten-asmjs/list.json as a fallback.
Those lists don't include nightly builds, as the old and deprecated URLs do (i.e., https://ethereum.github.io/solc-bin/bin/list.json)
External tools require listing nightly and release builds (i.e., Truffle: https://github.com/trufflesuite/truffle/pull/5008), so currently, the only way to do it is to link old and deprecated URLs.
We want to have pre-release/nightly builds inside the list of solidity static binaries.
## Specification
Following a discussion with @cameel (https://github.com/trufflesuite/truffle/pull/5008), we can keep the current folder and list.json, and we can create a subfolder with all builds (release and nightly) and another list.json listing all versions.
The final result would be something like this:
- https://binaries.soliditylang.org/emscripten-wasm32/list.json
- https://binaries.soliditylang.org/emscripten-wasm32/full-list/list.json
- https://binaries.soliditylang.org/emscripten-asmjs/list.json (fallback)
- https://binaries.soliditylang.org/emscripten-asmjs/full-list/list.json (fallback)
## Backwards Compatibility
Because we are adding a new subfolder, no one will be affected by this update. Developers can update their tools progressively to point to the new subfolder/list at their own pace and needs.
Contributor guide
Research direction
Start with the existing emscripten-wasm32/list.json and emscripten-asmjs/list.json endpoints, then compare them with the deprecated ethereum.github.io/solc-bin/bin/list.json. Done means adding full-list/list.json under both current binary paths with release and nightly builds while preserving the existing lists and fallback URLs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, wasm
- Domain
- release
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100