Commit Graph

331 Commits

Author SHA1 Message Date
ajs
260e044db5 Avoid hanging in tests.sh when IPC program is not found 2018-07-02 22:23:49 -03:00
Alex Beregszaszi
d072cc6236 Update aleth for testing 2018-07-02 11:34:52 +02:00
ajs
fee4932906 Support Manjaro Linux distributions in dependencies script 2018-06-28 18:13:15 -03:00
Christian Parpart
37b5669ec3 make build concurrency build-time customizable 2018-06-26 12:13:03 +02:00
Christian Parpart
7546100776 Dockerfile: improves docker image size and small others
This greatly improves size of the final docker image with the help of
multi-stage docker builds.

With that change, we can also make the build stage readable/maintainable
again by splitting up into multiple RUN statements as well as not
needing to clean-up temporary objects.

The dependencies have been put on top of the primary COPY statement
in order to not rebuild the dependencies each time one wants to rebuild
the docker image (for example due to code changes).

The solc compilation itself is now parallelized to the CPU core count
to speed up those builds that have more cores available on their docker
build system.

Future Notes:
-------------

We could further improve the Dockerfile by explicitely adding the
directories this docker build is interested in (such as solc source code
exclusively).

Or one may want to also use the build step for automated testing (CI)
by enforcing soltest and cmdlineTests.sh right before finalizing the image.
2018-06-26 12:12:35 +02:00
chriseth
166a9e08e7 Use new PGP key and retire old ubuntu releases. 2018-06-21 20:29:16 +02:00
Leonardo Alt
e0d6050ca8 Use correct python version for the upgrade_bugs_by_version script 2018-06-18 13:55:01 +02:00
Daniel Kirchner
09c3317bd8 Correctly choose python version for scripts requiring python2. 2018-06-15 16:29:42 +02:00
bitshift
83ae2abad7 Updates Windows release to VS 2017 15.7.3 2018-06-11 11:53:03 +02:00
chriseth
7778eaf03a
Merge pull request #4073 from alibabe/fix-jsoncpp-install
Install a different jsoncpp version on cirleci to ensure compilation never clashes with the internal one
2018-05-28 22:06:14 +02:00
chriseth
b686fbbb32
Merge pull request #4180 from veox/use-pip-solidity-lexer
docs: Use Solidity lexer from PyPI, instead of a local module
2018-05-28 17:41:35 +02:00
Tim Holland
27adb6d6ad Supply git as an alpine linux dependency
Otherwise, the docker build will fail complaining about not knowing a
commit hash to label the version with.
2018-05-23 11:53:11 -04:00
Noel Maersk
9f9bae7ce1 docs: install requirements as part of doc-build script. 2018-05-23 17:10:29 +03:00
alibabe
54f83acee9 Install a different jsoncpp version on cirleci to ensure compilation never clashes with the internal one
by progamatically installing jsoncpp to ensure the verison is alway 1.7.4
2018-05-21 03:04:54 +00:00
Julius Huelsmann
4690f837e0 Fix install_deps.sh script for Arch Linux.
Also added cvc4 as dependency.
2018-05-17 14:39:12 +02:00
chriseth
0a63bc177b
Merge pull request #4052 from kylewu/vs-2017-build
run both vs 2015 and vs 2017 in appveyor
2018-05-08 10:33:16 +02:00
GuessWho
212956fa05 run both vs 2015 and vs 2017 in appveyor 2018-05-02 23:15:03 +02:00
Erik Kundt
743a714f21 Adds CircleCI config for macOS.
Does not run ipc and smt tests.
2018-05-01 03:23:07 +02:00
Alexander Arlt
a49dac8057 Install & use cmake provided by scripts/install_cmake.sh for emscripten 2018-04-23 11:10:39 +01:00
Alexander Arlt
0b49fd3493 CMake: Update jsoncpp to v1.8.4 2018-04-23 11:10:39 +01:00
chriseth
a79c9a1dfe Prepare 0.4.23 release. 2018-04-19 17:21:34 +02:00
chriseth
64043ef970 Support ubuntu bionic source builds. 2018-04-18 17:15:26 +02:00
chriseth
08b0ed4116
Merge pull request #3905 from ethereum/reportCmdline
Report failed commandline tests.
2018-04-17 10:36:13 +02:00
chriseth
797ce727bb Report failed commandline tests. 2018-04-17 08:53:52 +02:00
chriseth
6a747ed229 Support bionic. 2018-04-17 07:56:10 +02:00
chriseth
759928524f Show progress on travis. 2018-04-16 22:12:30 +02:00
Alex Beregszaszi
4450034174 Run tests in constantinople mode too 2018-04-10 15:29:55 +01:00
chriseth
9bd49516d8
Merge pull request #3833 from ethereum/newEthBinaries
Use new eth binaries.
2018-04-06 11:59:27 +02:00
chriseth
3c64313e91 Use new eth binaries. 2018-04-05 19:00:44 +02:00
chriseth
6a2c30e4ff Fix trusty build script for eth. 2018-04-05 17:45:25 +02:00
chriseth
fa92380af0 Add scripts to build the eth binary via docker. 2018-04-04 12:26:34 +02:00
chriseth
6589555790 Test extraction tool. 2018-03-16 00:47:32 +01:00
Daniel Kirchner
7fa892eca9 Add interactive test tool isoltest. 2018-03-15 16:23:49 +01:00
Daniel Kirchner
c032a7ded1 Add soltest.sh script that invokes soltest with the correct --testpath. 2018-03-13 16:57:09 +01:00
Daniel Kirchner
49eaf7c3fd Infrastructure for extracting syntax tests in separate test files. 2018-03-13 11:20:11 +01:00
Daniel Kirchner
121f87b043 Move test tools to the subdirectory test/tools and adjust CMakeLists.txt. 2018-03-12 18:40:20 +01:00
chriseth
e3bd3020d1 Use new eth binary for trusty. 2018-03-06 14:16:51 +01:00
chriseth
7f8e573339 Abort on the first failed end-to-end run. 2018-03-01 17:19:35 +01:00
Alex Beregszaszi
7171ac0124 Simplify error handling in tests.sh 2018-03-01 17:19:35 +01:00
chriseth
f2f61f1c2f Test both EVM versions. 2018-03-01 17:19:35 +01:00
Paweł Bylica
9a8b0d5726 Fix install_deps.sh for Debian without lsb_release 2018-02-27 14:34:57 +01:00
chriseth
6a83beaab5 Run tests in parallel on circle. 2018-02-27 12:08:27 +01:00
chriseth
b80baa8002 Run EndToEnd tests on circle, too. 2018-02-23 13:13:48 +01:00
chriseth
ca0e323f9f Fix PPA script. 2018-02-14 16:45:00 +01:00
Matthew Halpern
da36c82a0a Allow lllc to be installed 2018-02-13 10:20:43 +00:00
chriseth
937f16afef Handle version for solcjs tests. 2018-02-09 18:24:12 +01:00
chriseth
981ff308ec Split solcjs and external tests. 2018-02-09 18:24:12 +01:00
chriseth
7dd99a62c5 Try something else. 2018-02-08 15:26:23 +01:00
chriseth
c9a032a1e2 Larger stack for nodejs when building via emscripten. 2018-02-07 20:27:16 +01:00
William Entriken
a8e7637faa
Support macOS High Sierra for install_deps script 2018-01-23 21:33:22 -05:00
chriseth
eba46a65fc
Merge pull request #3313 from terasum/develop
Update GPG key URL for Centos install
2018-01-19 17:55:42 +01:00
Manus
1208fdb60f Made install_deps.sh safe to use on Arch Linux 2018-01-17 09:36:52 +01:00
ChenQuan
42cc3915fe Update GPG key URL for the Centos installer script 2018-01-04 12:27:29 +00:00
chriseth
c5318cce09 Add artful to releases. 2017-12-28 19:00:12 +01:00
mekkanik
241ad1ae39 Changes to support Linux Mint: a derivative of Ubuntu. 2017-12-20 13:27:40 +05:30
Alex Beregszaszi
1734d44561 Rename jsonCompiler to libsolc 2017-12-11 12:49:08 +00:00
Yuriy Kashnikov
4634ce825b Review fixes 2017-12-06 21:14:54 +07:00
Yuriy Kashnikov
2d6fe522a6 Handle git release tag properly
Build process will check current commit and if it is tagged
starting with a `v` then it will create `prerelease.txt` file in
the top directory.
2017-12-06 15:58:24 +07:00
chriseth
f8ef68be18 Manual deploy to docker. 2017-12-01 15:18:39 +01:00
Guanqun Lu
664f33afe0 Update the script for Ubuntu Artful 17.10 2017-11-11 03:01:33 +08:00
chriseth
e247524bd5 Merge pull request #3090 from ethereum/noprepublish
Disable prepublish script in test.
2017-10-18 11:30:56 +02:00
chriseth
9d5c96ebdd Use config explicitly 2017-10-17 19:10:31 +02:00
chriseth
0d6e6cc8f2 Quiet wget. 2017-10-17 09:58:03 +02:00
chriseth
9cab34292c Use new eth binary. 2017-10-17 09:49:49 +02:00
chriseth
09ff9282df Disable prepublish script in test. 2017-10-16 22:18:12 +02:00
Gianfranco Cecconi
e19843d9aa Added boost-static to Fedora dependencies
This fixes potential _cmake_ stage of the build, as documented here https://github.com/ethereum/solidity/issues/3071#issuecomment-336477742 .
2017-10-13 16:01:59 +01:00
chriseth
f6fb7d96d3 Merge pull request #2990 from ethereum/someMoreSMTStuff
Basic SMT tests.
2017-10-04 14:56:24 +02:00
chriseth
e952946b22 Use byzantium version of eth. 2017-10-03 10:45:00 +01:00
chriseth
3be37d15e0 Install libz3-dev from PPA if the distribution does not provide it. 2017-09-29 15:31:00 +02:00
Paweł Bylica
b9e4d5b6c8
Windows: Copy install_deps.cmake from cpp-dependencies repo 2017-09-19 20:55:47 +02:00
Paweł Bylica
48e0e3b97f
Circle CI: Emscripten build 2017-09-15 16:06:05 +02:00
Paweł Bylica
622a2d8251
Travis CI: Fix Emscripten build 2017-09-12 22:11:21 +02:00
chriseth
47b08fa752 Merge pull request #2765 from ethereum/emscripten
Emscripten
2017-08-25 17:38:23 +02:00
chriseth
a5ce02d333 Leave artifact also on root. 2017-08-25 15:44:03 +02:00
Paweł Bylica
6e9f93e043 Emscripten, CI: Use CMake toolchain file 2017-08-25 15:43:00 +02:00
Paweł Bylica
e088f48c55 Travis CI: Cleanup emscripten build script 2017-08-25 15:43:00 +02:00
chriseth
b79401b165 Do not include soltest and .so files in zip archives. 2017-08-25 14:46:50 +02:00
chriseth
6dd7f6284b Require libz3-dev for ubuntu PPA builds. 2017-08-24 12:04:50 +02:00
Alex Beregszaszi
957f23a9f4 Merge pull request #2538 from ethereum/z3Conditions
z3 conditions
2017-08-24 00:27:09 +01:00
Alex Beregszaszi
a0d515c1a7 Keep REPO_ROOT as absolute path 2017-08-23 23:07:18 +01:00
chriseth
e8d1658b58 Add external tests. 2017-08-23 21:11:03 +01:00
chriseth
cf5e1d6120 Review changes. 2017-08-23 17:37:35 +02:00
chriseth
c9cf24458b Prepare build system for Z3. 2017-08-23 17:37:35 +02:00
Paweł Bylica
4974ff3962
CMake: Add option to static link solc 2017-08-22 22:50:25 +02:00
chriseth
a8d78bb767 Refactor compilation tests. 2017-07-13 21:47:29 +02:00
chriseth
d3b447c203 Ignore the docs build directory. 2017-07-13 21:47:29 +02:00
Alex Beregszaszi
32a76f15e0 Upgrade isolate_tests.py to support extracting code from docs 2017-07-13 17:10:37 +02:00
chriseth
ac84b36144 Added various contracts for testing. 2017-07-05 12:39:55 +02:00
chriseth
90ada403dd Merge pull request #2515 from ethereum/ubuntuRelease
Some fixes for the PPA release scripts.
2017-07-04 19:21:38 +02:00
chriseth
758ad3594d Some fixes for the PPA release scripts. 2017-07-04 12:12:37 +02:00
chriseth
066e995bbd Only push to bytecode repository if there is something to push. 2017-07-03 18:25:37 +02:00
chriseth
76d3b7c5a1 Merge pull request #2510 from ethereum/develop
Version 0.4.12
2017-07-03 14:52:29 +02:00
Alex Beregszaszi
f13feed7f2 Add script to retrieve version 2017-07-01 11:25:02 +01:00
Alex Beregszaszi
b0e4555db3 Read version from CMakeLists in test_emscripten 2017-07-01 11:22:54 +01:00
Alex Beregszaszi
cc4f2500fb Use BuildInfo.h to retrieve version 2017-06-28 17:58:08 +01:00
Alex Beregszaszi
913b9c0e6b Run solc-js tests on emscripten build 2017-06-28 17:58:08 +01:00
chriseth
314f8beef1 This might fix our windows tests. 2017-06-20 17:47:06 +02:00
chriseth
a87b22c122 Change windows CI to use the same bytecode directory as linux. 2017-06-14 18:59:23 +02:00
chriseth
6d8afab928 Use actual hash. 2017-05-29 15:53:15 +02:00
chriseth
0ca941942b Use HEAD for report directory name 2017-05-24 14:36:46 +02:00
Alex Beregszaszi
e12b990038 Move COMMIT_DATE 2017-05-24 11:03:38 +01:00
chriseth
1ce9b91275 Make bytecode upload more robust and use date for directory name. 2017-05-19 21:08:13 +01:00
chriseth
b741f51bde Also put prerelease.txt into release tarball. 2017-05-17 11:59:34 +02:00
chriseth
bf5c6b7acb Remove wily and add zesty. 2017-05-05 12:50:54 +02:00
chriseth
b024fce150 Do not run IPC tests on windows. 2017-04-26 12:36:23 +02:00
chriseth
89bb8cbd6a Update shasum to new eth version. 2017-04-25 16:47:44 +02:00
chriseth
8758d9fb3c Install eth (including dependencies). 2017-04-25 16:47:44 +02:00
chriseth
cdc64e3cbb Use fixed binary for eth. 2017-04-25 16:47:44 +02:00
chriseth
dae5f7d350 Fix test script. 2017-04-25 16:47:43 +02:00
chriseth
cc1d5e47f9 Do not install eth from PPA for CI. 2017-04-25 16:47:43 +02:00
Alex Beregszaszi
ed32a57b86 Run tests in docker only on Travis 2017-04-25 16:47:43 +02:00
chriseth
1caf1f0b8d Test using eth from docker. 2017-04-25 16:47:43 +02:00
Yoichi Hirai
1927148604 Merge pull request #2128 from ethereum/bytecodeNoPull
Run bytecode upload only if encrypted variables are available.
2017-04-18 14:53:41 +02:00
chriseth
4694eaec43 Run bytecode upload only if encrypted variables are available. 2017-04-18 12:32:38 +02:00
chriseth
a7e605a7a1 Create and update bugs by version list. 2017-04-12 15:20:07 +02:00
chriseth
5c3a80ab5b Also generate optimized code. 2017-03-23 09:56:18 +01:00
chriseth
bbe3557a2f Create bytecode for all tests and push to remote repo. 2017-03-23 09:56:18 +01:00
chriseth
b18aea315d Isolate test cases from all tests and store under hash. 2017-03-23 09:56:17 +01:00
chriseth
b28aefe28c Use "nightly" version string for all CI built binaries. 2017-03-23 09:56:17 +01:00
Alex Beregszaszi
2cde2f9203 Merge pull request #1796 from ethereum/publishalpinestatic
Publish soljson and alpine static build on github release page.
2017-03-20 13:24:55 +00:00
chriseth
73efdabd37 Rename solc binary. 2017-03-20 14:03:11 +01:00
chriseth
acf71db9f6 Fixes spacing around condition. 2017-03-20 12:07:35 +01:00
chriseth
252299a1db Move docker build to its own script. 2017-03-17 12:33:40 +01:00
chriseth
3f83bb80bf Publish soljson and alpine static build on github release page. 2017-03-17 12:33:40 +01:00
chriseth
806b39db02 Specify docker entry point and only run release on tags. 2017-03-16 18:13:34 +01:00
Alex Beregszaszi
6d4cb24842 Merge pull request #1779 from ethereum/moretests
Correctly find contracts with other delimiters.
2017-03-16 13:44:06 +00:00
chriseth
59099908c5 Merge branch 'release' into develop 2017-03-15 17:26:06 +01:00
chriseth
5a939c4e1a Correctly find contracts with other delimiters. 2017-03-15 12:07:59 +01:00
chriseth
41360ccd57 Script for filtering unique failures. 2017-02-24 19:33:05 +01:00
chriseth
eeaa2bad95 Kill the right eth process in tests 2017-02-14 13:48:51 +00:00
chriseth
bc3e3fd709 Fix test expressions. 2017-02-13 12:28:39 +01:00
chriseth
11c4a7b642 Fail if docker deploy failed. 2017-02-13 11:22:07 +01:00
chriseth
4f6ebae36c Check for tag in travis. 2017-02-10 14:07:46 +01:00
RJ Catalano
e9ae50dc59
clarify branches for docker to push on and clarify where to find cmakelists.txt
Signed-off-by: RJ Catalano <rj@monax.io>
2017-02-09 11:36:08 -06:00
RJ Catalano
e884f7a479
minor fixups
Signed-off-by: RJ Catalano <rj@monax.io>
2017-02-09 11:31:07 -06:00
RJ Catalano
d9e7af939c
defeat race condition
Signed-off-by: RJ Catalano <rj@monax.io>
2017-02-09 11:31:02 -06:00
RJ Catalano
d76d9d4169
create automated docker deployment
Signed-off-by: RJ Catalano <rj@monax.io>
2017-02-09 11:30:59 -06:00
RJ Catalano
00feec567a
reorganize deps installation
Signed-off-by: RJ Catalano <rj@monax.io>
2017-02-09 11:30:57 -06:00
Alex Beregszaszi
fba3b84929 Include --show-progress in soltest 2017-02-08 21:50:53 +00:00
Alex Beregszaszi
82c2bf8ed2 Ensure that all commands succed and move back to root 2017-02-08 20:51:29 +00:00
Alex Beregszaszi
9c3b28e21e Fix tests on mac (wc produces whitespace) 2017-02-07 17:40:26 +00:00
RJ Catalano
f50caa967c
implement a build script
Signed-off-by: RJ Catalano <rj@monax.io>
2017-02-02 18:54:47 -06:00
chriseth
364da425d3 Merge pull request #1622 from ethereum/develop
Solidity version 0.4.9
2017-01-31 18:29:51 +01:00
chriseth
f9af2de0b4 Merge pull request #1594 from ethereum/fixStdToken
Make standard token compileable.
2017-01-31 16:05:27 +01:00
chriseth
ff8008cdf7 Merge pull request #1608 from LefterisJP/archlinux_add_ethereum_git
Add ethereum-git to archlinux dependencies
2017-01-26 17:03:36 +01:00
Lefteris Karapetsas
19833c95eb
Add ethereum-git to archlinux dependencies
It's needed for testing, since we need to have the `eth` client installed
2017-01-26 13:17:05 +01:00
chriseth
605455f96b Tests for library checksums. 2017-01-24 23:37:48 +01:00
chriseth
61a15bb92e Test that all constructible std contracts produce bytecode. 2017-01-20 19:50:14 +01:00
chriseth
60cc166851 Merge pull request #1561 from ethereum/develop
Merge develop into release for 0.4.8
2017-01-13 13:05:02 +01:00
Paweł Bylica
ee0bf07487
Travis CI: Install latest CMake 2017-01-12 14:14:19 +01:00