From 2c54a212fe9a3a29a520e74b7aa7e325872d8432 Mon Sep 17 00:00:00 2001 From: Piper Merriam Date: Fri, 29 Sep 2017 21:13:35 -0600 Subject: [PATCH 1/2] update travis config to new format --- .travis.yml | 108 ++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 88 insertions(+), 20 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5fb482c..14b0fe9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,45 +9,113 @@ sudo: required env: global: - SOLC_BASE_INSTALL_PATH=$TRAVIS_BUILD_DIR - - ALL_STDLIB_AND_GEVENT_TESTS="-e py27-stdlib -e py34-stdlib -e py35-stdlib -e py27-gevent -e py34-gevent -e py35-gevent" - matrix: - # Installation Tests - - SOLC_RUN_INSTALL_TESTS=enabled TOX_POSARGS="-e py27-installation -e py34-installation -e py35-installation" +matrix: + include: + # lint + - python: "3.5" + env: TOX_POSARGS="-e flake8" + # installation + - python: "2.7" + env: TOX_POSARGS="-e py27-installation" + - python: "3.4" + env: TOX_POSARGS="-e py34-installation" + - python: "3.5" + env: TOX_POSARGS="-e py35-installation" # solc 0.4.1 - - SOLC_VERSION=v0.4.1 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.1 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.1 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.1 # solc 0.4.2 - - SOLC_VERSION=v0.4.2 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.2 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.2 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.2 # solc 0.4.6 - - SOLC_VERSION=v0.4.6 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.6 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.6 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.6 # solc 0.4.7 - - SOLC_VERSION=v0.4.7 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.7 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.7 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.7 # solc 0.4.8 - - SOLC_VERSION=v0.4.8 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.8 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.8 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.8 # solc 0.4.9 - - SOLC_VERSION=v0.4.9 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.9 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.9 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.9 # solc 0.4.11 - - SOLC_VERSION=v0.4.11 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.11 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.11 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.11 # solc 0.4.12 - - SOLC_VERSION=v0.4.12 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.12 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.12 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.12 # solc 0.4.13 - - SOLC_VERSION=v0.4.13 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.13 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.13 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.13 # solc 0.4.14 - - SOLC_VERSION=v0.4.14 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.14 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.14 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.14 # solc 0.4.15 - - SOLC_VERSION=v0.4.15 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.15 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.15 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.15 # solc 0.4.16 - - SOLC_VERSION=v0.4.16 TOX_POSARGS=$ALL_STDLIB_AND_GEVENT_TESTS - # linting - - TOX_POSARGS="-e flake8" + - python: "2.7" + env: TOX_POSARGS="-e py27-stdlib -e py27-gevent" SOLC_VERSION=v0.4.16 + - python: "3.4" + env: TOX_POSARGS="-e py34-stdlib -e py34-gevent" SOLC_VERSION=v0.4.16 + - python: "3.5" + env: TOX_POSARGS="-e py35-stdlib -e py35-gevent" SOLC_VERSION=v0.4.16 cache: - pip: true before_install: install: - travis_retry pip install setuptools --upgrade - travis_retry pip install tox - - pip3 install -e . # install py-solc globally in order to use the solc installation scripts. + - pip --version + - pip install -e . # install py-solc globally in order to use the solc installation scripts. before_script: - - if [ -n "$SOLC_VERSION" ]; then python3 -m solc.install $SOLC_VERSION; fi + - python --version + - if [ -n "$SOLC_VERSION" ]; then python -m solc.install $SOLC_VERSION; fi - if [ -n "$SOLC_VERSION" ]; then export SOLC_BINARY="$SOLC_BASE_INSTALL_PATH/solc-$SOLC_VERSION/bin/solc"; fi - if [ -n "$SOLC_VERSION" ]; then export LD_LIBRARY_PATH="$SOLC_BASE_INSTALL_PATH/solc-$SOLC_VERSION/bin"; fi - env From 901ce9c0d8b6d668541ce0dc58add49092114ccb Mon Sep 17 00:00:00 2001 From: Piper Merriam Date: Fri, 29 Sep 2017 21:15:19 -0600 Subject: [PATCH 2/2] Support for solc 0.4.17 --- README.md | 11 ++++++----- solc/install.py | 5 +++++ 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 884e6e7..bb8cc97 100644 --- a/README.md +++ b/README.md @@ -137,24 +137,25 @@ listed platforms. * `v0.4.14` (linux/osx) * `v0.4.15` (linux/osx) * `v0.4.16` (linux/osx) +* `v0.4.17` (linux/osx) Installation can be done via the command line: ```bash -$ python -m solc.install v0.4.16 +$ python -m solc.install v0.4.17 ``` Or from python using the `install_solc` function. ```python >>> from solc import install_solc ->>> install_solc('v0.4.16') +>>> install_solc('v0.4.17') ``` -The installed binary can be found under your home directory. The `v0.4.16` -binary would be located at `$HOME/.py-solc/solc-v0.4.16/bin/solc`. Older linux +The installed binary can be found under your home directory. The `v0.4.17` +binary would be located at `$HOME/.py-solc/solc-v0.4.17/bin/solc`. Older linux installs will also require that you set the environment variable -`LD_LIBRARY_PATH=$HOME/.py-solc/solc-v0.4.16/bin` +`LD_LIBRARY_PATH=$HOME/.py-solc/solc-v0.4.17/bin` ## Import path remappings diff --git a/solc/install.py b/solc/install.py index 7d56ac1..b572b91 100644 --- a/solc/install.py +++ b/solc/install.py @@ -23,6 +23,7 @@ V0_4_14 = 'v0.4.14' V0_4_15 = 'v0.4.15' V0_4_16 = 'v0.4.16' +V0_4_17 = 'v0.4.17' LINUX = 'linux' @@ -396,6 +397,7 @@ def install_from_static_linux(identifier): install_v0_4_14_linux = functools.partial(install_solc_from_static_linux, V0_4_14) install_v0_4_15_linux = functools.partial(install_solc_from_static_linux, V0_4_15) install_v0_4_16_linux = functools.partial(install_solc_from_static_linux, V0_4_16) +install_v0_4_17_linux = functools.partial(install_solc_from_static_linux, V0_4_17) def install_from_source(identifier): @@ -415,6 +417,7 @@ def install_from_source(identifier): install_v0_4_14_osx = functools.partial(install_from_source, V0_4_14) install_v0_4_15_osx = functools.partial(install_from_source, V0_4_15) install_v0_4_16_osx = functools.partial(install_from_source, V0_4_16) +install_v0_4_17_osx = functools.partial(install_from_source, V0_4_17) INSTALL_FUNCTIONS = { @@ -431,6 +434,7 @@ def install_from_source(identifier): V0_4_14: install_v0_4_14_linux, V0_4_15: install_v0_4_15_linux, V0_4_16: install_v0_4_16_linux, + V0_4_17: install_v0_4_17_linux, }, OSX: { V0_4_8: install_v0_4_8_osx, @@ -440,6 +444,7 @@ def install_from_source(identifier): V0_4_14: install_v0_4_14_osx, V0_4_15: install_v0_4_15_osx, V0_4_16: install_v0_4_16_osx, + V0_4_17: install_v0_4_17_osx, } }