Skip to content

A script to quickly switch between Solidity compiler versions

License

Notifications You must be signed in to change notification settings

AIT-S/solc-select

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

90 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

solc-select

A tool to quickly switch between Solidity compiler versions.

The tool is split into two CLI utilities:

  • solc-select: manages installing and setting different solc compiler versions
  • solc: wrapper around solc which picks the right version according to what was set via solc-select

The solc binaries are downloaded from https://binaries.soliditylang.org/ which contains official artifacts for many historial and modern solc versions for Linux and macOS.

The downloaded binaries are stored in ~/.solc-select/artifacts/.

Quickstart

pip3 install solc-select

Usage

The global version of solc can be set with the solc-select use <version> command:

$ solc --version
solc, the solidity compiler commandline interface
Version: 0.5.2+commit.1df8f40c.Linux.g++
$ solc-select use 0.4.24
Switched global version to 0.4.24
$ solc --version
solc, the solidity compiler commandline interface
Version: 0.4.24+commit.e67f0147.Linux.g++

Use SOLC_VERSION environment variable to override the global version:

$ solc --version
solc, the solidity compiler commandline interface
Version: 0.4.24+commit.e67f0147.Linux.g++
$ SOLC_VERSION=0.5.2 solc --version
solc, the solidity compiler commandline interface
Version: 0.5.2+commit.1df8f40c.Linux.g++

You can list all available versions with solc-select install:

$ solc-select install
Available versions to install:
0.3.6
0.4.0
...
0.8.0
0.8.1

And install the one you need with with solc-select install <version>:

$ solc-select install 0.8.1
Installing '0.8.1'...
Version '0.8.1' installed.

Display the currently installed versions:

$ solc-select versions
0.8.0
0.4.2 (current, set by /Users/artur/.solc-select/global-version)

Getting Help

Feel free to stop by our Slack channel for help on using or extending solc-select.

License

solc-select is licensed and distributed under the AGPLv3 license. Contact us if you’re looking for an exception to the terms.

About

A script to quickly switch between Solidity compiler versions

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%