Commit Graph

291 Commits

Author SHA1 Message Date
chriseth
f873389c62 Test that documentation does not contain any warnings. 2018-08-14 15:50:46 +02:00
Christian Parpart
594102de6b
fixes tests.sh to not use hard-coded working dir and adds proper cleanup
* Implicitely also allows concurrent runs.
* Properly cleanup of any working files created during runtime.
* Properly cleanup upon singals.
* Allow early-abort during cmdline tests without leaking processes.
2018-08-01 10:25:24 +02:00
Alex Beregszaszi
4bd22399da Keep the proper aleth hash in contributing.rst 2018-07-18 10:20:18 +02:00
Cryptomental
d454cec1bd circleci: Integrate codespell.
Run codespell against documentation and during Linux test run.
Use codespell_whitelist.txt dictionary to whitelist words that
should not be considered as misspelled.

Currently whitelist "iff" and "nd".

Refs: #4442
2018-07-10 22:57:50 +02:00
chriseth
f6edb7fb8f
Merge pull request #4434 from mattaereal/patch-4
Update isolate_tests.py
2018-07-09 22:47:34 +02:00
Matías A. Ré Medina
5640eba382 Update isolate_tests to use simple quotes consistently.
The previous code had double quotes and the project uses simple quotes.
2018-07-09 11:28:34 +01:00
Matías A. Ré Medina
1ebeb7e588 Change isolate_tests to support single files as an input
On the documentation the examples for the usage of isolate_tests.py are shown with single files, and it's currently not working. It only works for folders or wildcards that return more than one file, since that's how os.walk works within a loop for that cases.

Proposed an simple and easy fix.

I extracted the core functionality for extracting tests from files, and made another function called `extract_and_write`
If the program receives a single file the function `extract_and_write` is called once, it even works for `docs` when specified.
If the program receives a path or a wildcard, works as used to.
2018-07-09 11:28:09 +01:00
Alex Beregszaszi
273be204b6 Rename eth to aleth in testing scripts 2018-07-09 11:10:39 +01:00
Alex Beregszaszi
8b8565c873 Simplify code regarding eth in tests.sh 2018-07-09 11:08:36 +01:00
chriseth
0e12903094 Pull before pushing to bytecode (as on *ix). 2018-07-05 12:18:43 +02:00
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