Commit Graph

479 Commits

Author SHA1 Message Date
chriseth
b3fe84a6ea
Merge pull request #7153 from djudjuu/newImportAST
import ast from JSON
2020-01-14 17:56:53 +01:00
djudjuu
e8556fa1b2 Ast-Import from standard-json 2020-01-14 17:15:53 +01:00
Daniel Kirchner
90e494615e Build soljson.js with embedded base64-encoded wasm binary. 2020-01-13 10:51:48 +01:00
chriseth
57c00eece8 Require specific version of g++ to make PPA happy. 2019-12-11 15:29:19 +01:00
chriseth
07d271e770 Merge remote-tracking branch 'origin/develop' into develop_060 2019-12-10 10:07:30 +01:00
chriseth
9b4abb2b7f Change jsoncpp version everywhere. 2019-12-09 18:39:18 +01:00
Alex Beregszaszi
ac03bfc0b1 Drop solc-js backwards compatibility for 0.6
Reverts ee3a8341
2019-12-09 17:33:50 +00:00
chriseth
071a52f0ff Merge remote-tracking branch 'origin/develop' into develop_060 2019-12-09 14:43:53 +01:00
Alex Beregszaszi
ee3a834165 Add backwards compatibility to the generated soljson.js for solc-js <0.5.14
Reverts part of edd80a9
2019-12-09 13:17:32 +00:00
chriseth
2f11ac3590 Merge remote-tracking branch 'origin/develop' into develop_060 2019-12-03 21:17:15 +01:00
chriseth
96d777d7f1 Merge commit 'a7d481fb9' into develop_060 2019-12-03 20:47:30 +01:00
Daniel Kirchner
c9be3bdf7e Rename cmake option 2019-12-03 15:11:38 +01:00
Daniel Kirchner
e04d8955ab Update to Z3 4.8.7 and cherry-pick build fix commit 2019-12-03 14:41:02 +01:00
Daniel Kirchner
edd80a986d Update emscripten to 1.39.3 2019-11-29 12:55:02 +01:00
Daniel Kirchner
cdbaf067c7 Internal emscripten build cleanup 2019-11-29 10:21:29 +01:00
chriseth
f7fc42d8c3
Merge pull request #7826 from ethereum/develop
Merge develop into develop_060
2019-11-28 13:37:19 +01:00
mingchuan
db60d123d0 [YulOpt] Implement loop-invariant code motion 2019-11-28 11:59:29 +01:00
Leonardo Alt
389da5228e Merge remote-tracking branch 'origin/develop' into merge_develop_060 2019-11-20 12:27:40 +01:00
chriseth
0033d63522 Run more tests on istanbul. 2019-11-19 17:09:18 +01:00
Leonardo
684ccea6f0
Merge pull request #7697 from ethereum/develop
Merge develop into develop_060
2019-11-12 15:30:34 +01:00
Bhargava Shastry
066626a3e8 Remove obsolete installation scripts that were used by the fuzzer build CI 2019-11-12 11:26:59 +01:00
Daniel Kirchner
8148619d5b Merge branch 'develop' into develop_060 2019-11-12 10:32:41 +01:00
Mathias Baumann
e35a23bbcc Add `switch (..) to style checker 2019-11-11 17:44:21 +01:00
Mathias Baumann
e643c4ca28 Add `while (..) to style checker 2019-11-11 17:28:41 +01:00
Daniel Kirchner
b3174db322 Update PPA build script for Z3 to version 4.8.6. And add eoan to Z3 and release PPA script. 2019-11-11 14:55:00 +01:00
chriseth
21e65076b3
Merge pull request #7650 from ethereum/develop
Merge develop into develop_060
2019-11-06 21:56:55 +01:00
Chris Chinchilla
c9a56d5339 Remove macOS flag 2019-11-05 17:02:37 +01:00
chriseth
07c67b98f6 Merge remote-tracking branch 'origin/develop' into HEAD 2019-10-28 12:12:52 +01:00
Erik Kundt
ec53899a10 Fixes source extraction from docs. 2019-10-23 22:13:24 +02:00
Mathias L. Baumann
7e01696030
Merge pull request #7554 from ethereum/develop
Merge develop into develop_060
2019-10-21 17:05:12 +02:00
kcy1019
547cd2eb71 Remove dependency on boost::regex from Whiskers 2019-10-16 21:26:49 +09:00
chriseth
9719d28526
Merge pull request #7475 from ethereum/move-solcjs-tests
Migrate solc-js tests
2019-10-16 12:35:09 +02:00
Gaith Hallak
9d34d7de2f Remove trailing spaces from JSON output 2019-10-02 18:01:47 +03:00
Erik Kundt
8adde5abbe Migrates solc-js test to ext. test infrastructure.
solc-js commit: 9d9de6338729cf5fbd62f479d54b7097e8a7e395
2019-09-25 16:03:08 +02:00
Daniel Kirchner
c72d1ffb65
Merge pull request #7421 from ethereum/develop
Merge develop into develop_060
2019-09-13 12:14:02 +02:00
Erik Kundt
ad5fe2bf45 Fixes codespell. 2019-09-12 22:15:03 +02:00
chriseth
acf10ef60f
Merge pull request #7393 from ethereum/develop
Merge develop into 0.6.0
2019-09-10 12:27:02 +02:00
Daniel Kirchner
998f7de2c8 Change command line test from --ast to --ast-json. 2019-09-06 13:46:18 +02:00
Crawford Leeds
4138fc4b59 add support for macOS Catalina in scripts/install_deps.sh 2019-09-05 21:20:02 -06:00
Daniel Kirchner
ef407ea896 Try to fix appveyor run by chaning bytecode pull output from stderr to stdout. 2019-09-04 10:57:01 +02:00
Christian Parpart
e91c6acbc3 Defaulting to C++17 for building. 2019-08-13 16:19:18 +02:00
Daniel Kirchner
bd105ad4b1 Experimental static Z3 PPA script. 2019-08-13 16:19:18 +02:00
Mathias Baumann
30373d5719 Test scripts: Make build dir a variable 2019-08-13 12:44:29 +02:00
Daniel Kirchner
2f48bd6fb9 Remove ubuntu cosmic (EOL July 18, 2019) from release script. 2019-08-12 11:36:48 +02:00
chriseth
77212627fb Remove traces of aleth and IPC. 2019-08-08 17:35:46 +02:00
rocky
7fd7cc1e76 Produce AST even when there are parser errors 2019-08-07 15:25:53 +02:00
Chris Chinchilla
85ec44826a Add style checker
Rename files

Changes from review

Update test/docsCodeStyle.sh

Co-Authored-By: chriseth <chris@ethereum.org>
Update test/docsCodeStyle.sh

Co-Authored-By: chriseth <chris@ethereum.org>
Remove extraneous brackets
2019-08-05 13:00:30 +02:00
Christian Parpart
cb5df90251
Change the way release_ppa.sh treats branches.
Only release branch is treated release branch,
and everything else is treated a development branch.
2019-07-22 14:49:30 +02:00
Christian Parpart
7b3aba81fb Adds a test to check_style.sh to check for spaces before colon (:) in range based for loops. 2019-06-24 17:32:58 +02:00
Christian Parpart
b58170f890
Refactor & Speedups on CircleCI; split out out codecov into dedicated tests. 2019-06-21 20:26:10 +02:00
Leonardo Alt
c3ccce9745 Fix run_proofs script to actually run proofs 2019-06-20 15:58:10 +02:00
Leonardo Alt
51ba7f5f17 Add CI job for optimization proofs 2019-06-19 22:29:23 +02:00
Daniel Kirchner
cb9c35f883 Define imported targets manually, if not provided by find_package(Boost). 2019-06-06 21:03:33 +02:00
Daniel Kirchner
2ec45797b2 Update boost to 1.70 for emscripten and cache a proper installation. 2019-06-06 18:49:34 +02:00
Bhargava Shastry
a52e1f4130 Install evmone and its dependencies 2019-05-28 10:58:03 +02:00
Mathias Baumann
ed5c77e9a8 Completely fix spelling 2019-05-21 11:57:16 +02:00
Mathias Baumann
cbf81b123a Fix new found spelling mistakes and add exceptions 2019-05-21 10:59:34 +02:00
chriseth
7ab8cc60c9
Merge pull request #6556 from ethereum/wasmCodeTransform
Prototype for Wasm code transform
2019-05-07 17:48:48 +02:00
Mathias Baumann
d8873f52df Update to aleth v1.6.0 2019-05-07 16:03:53 +02:00
chriseth
c3705f268c Add global variables and support multi-return and multi-assignment. 2019-05-02 18:37:13 +02:00
Bhargava Shastry
9b56bd1db4 Run all tests and summarize failures, add new fuzzers to artifact 2019-04-30 17:00:33 +02:00
Bhargava Shastry
a48c762513 Print dots in background to prevent circle CI from reporting a timeout because nothing was flushed to stdout in over 10 minutes 2019-04-29 11:14:16 +02:00
Bhargava Shastry
91d9e52d7d Fix log parsing error 2019-04-26 11:47:46 +02:00
Bhargava Shastry
98815fb98a Updated script to treat libFuzzer errors as failures 2019-04-24 19:52:47 +02:00
chriseth
4312f6ec23
Merge pull request #6475 from ethereum/ossfuzz-regression-ci
ossfuzz regression ci
2019-04-19 00:44:05 +02:00
rocky
b06b996461 soltest.sh, EthOptions.cmake, and CODING_STYLE.md tweaks
solidity.sh:
  * introduce SOLIDITY_BUILD_DIR env var for soltest.sh,
  * add --help output

EthOptions.cmake: more complete configuration information

CODING_STYLE.md: note existence of .editorconfig
contributing.rst: note that tests are Boost C++ unit tests
2019-04-18 07:53:28 -04:00
Bhargava Shastry
33ccc19619 Add a nightly run for ossfuzz regression tests 2019-04-17 15:31:40 +02:00
Daniel Kirchner
4e6ffc744d Update aleth to version 1.6.0-rc.1. 2019-04-12 16:11:41 +02:00
Mathias Baumann
977c7d333e Disable aleth log output again on the CI 2019-04-04 16:39:15 +02:00
Mathias Baumann
1466cbaa0c Log more lines from aleth 2019-04-04 16:39:15 +02:00
chriseth
c0ce540e26 Run tests with both ABIV2 and Yul optimizer. 2019-04-04 13:18:30 +02:00
chriseth
8942c5acfb
Merge pull request #6394 from ethereum/yet-more-info
Log aleth output upon test failure
2019-04-03 13:17:27 +02:00
Mathias Baumann
9633b285ab Log aleth output upon failure 2019-04-03 12:43:15 +02:00
Mathias Baumann
4c24cce386 Replace tab with spaces in test.sh 2019-04-03 10:59:36 +02:00
Bhargava Shastry
0d2566fa71 Add CI to build ossfuzz fuzzer binaries 2019-04-03 10:27:05 +02:00
Mathias Baumann
bddef01fdd Decrease xml test log size 2019-04-01 12:38:29 +02:00
Erik Kundt
470c161e50 Fixes boost repository URL in CentOS install script. 2019-03-13 19:55:36 +01:00
Erik Kundt
b907e550b2 Passes the docker password in Travis via stdin. 2019-03-05 11:29:46 +01:00
chriseth
19761a08fa Update bytecode output to cope with metadata-only compilability. 2019-03-04 17:38:45 +01:00
Alex Beregszaszi
ecd246aeb6 Support petersburg in evmVersion 2019-03-04 14:10:41 +01:00
Mathias Baumann
98b7dc2881 Change emscripten default build dir to "emscriptenBuild"
Avoids complications with local build directory when building.
2019-02-27 12:30:15 +01:00
chriseth
bde25a06c2 Simplify emscripten build script 2019-02-25 14:20:37 +01:00
Alex Beregszaszi
5bbd65c5ca Run constantinople in regular and in force-abiv2 mode. 2019-02-20 16:55:19 +01:00
Daniel Kirchner
0408130338
Merge pull request #6003 from ethereum/moreStyleChecks
Even more style checks.
2019-02-15 11:52:32 +01:00
Daniel Kirchner
794e519af8 Update aleth version to 1.5.2. 2019-02-14 12:45:06 +01:00
Daniel Kirchner
8d7ccff1c0 Improve style of style check script. 2019-02-14 11:54:52 +01:00
Daniel Kirchner
809b9a95f9 Even more style checks. 2019-02-14 11:53:00 +01:00
Daniel Kirchner
8ca6715e18 More style checks. 2019-02-14 11:41:20 +01:00
chriseth
dbb5438fed Add coding style check for "const" position and spaces/tabs. 2019-02-13 16:34:49 +01:00
chriseth
5c50e8fa99 Switch from Z3 to CVC4 as SMT solver for Ubuntu PPA. 2019-02-06 15:48:07 +01:00
Daniel Kirchner
027e1781d3 Install static boost on Alpine linux. 2019-02-04 13:13:34 +01:00
chriseth
8c4c581eed Add disco. 2019-01-22 22:26:38 +01:00
chriseth
0a3beb72f2 Some improvements to the ppa release script. 2019-01-22 18:22:54 +01:00
chriseth
4c9bbd85e6 Patch soljson.js to provide backwards compatibility with older emscripten versions. 2019-01-21 15:33:36 +01:00
Alex Beregszaszi
a582f0bec1 Update to emscripten 1.38.22 2019-01-18 16:49:21 +00:00
Daniel Kirchner
5baac8470b Use emscripten 1.38.8 on both travis and circle. 2019-01-17 18:31:34 +01:00
Christian Parpart
b7eaa4f8d3
Ensuring we use at least boost 1.65, build static on Xenial, and adapt CircleCI accordingly. 2019-01-14 16:10:26 +01:00
chriseth
c00c0690e8
Merge pull request #5738 from ethereum/emscriptenBoost168
Update to boost 1.68 for emscripten builds.
2019-01-07 14:34:23 +01:00
Daniel Kirchner
17e781f8d2 Change uid and gid for source tarball to 0:0. 2019-01-07 13:56:50 +01:00
Daniel Kirchner
c265bc4c0d Update to boost 1.68 for emscripten builds. 2019-01-07 13:30:49 +01:00
Alex Beregszaszi
aca9e58145
Merge pull request #5703 from ethereum/srcTarball
Remove real username from source tarballs.
2019-01-07 11:35:52 +00:00
Asher
3d64b0b0ec
Update install_deps.sh
In install_deps.sh, line 59 (sed -n -e 's/^NAME="?([^"])"?$/\1/p' /etc/os-release) will get CentOS Linux instead of CentOS, so it cant match CentOS.
I suggest that in line 355, can modified " CentOS)" to " CentOS*)"
2019-01-03 10:05:08 +08:00
chriseth
687558f046 Remove real username from source tarballs. 2018-12-20 07:23:08 +01:00
Paweł Bylica
b57a36ddae CMake: Use toolchain files 2018-12-19 12:32:15 +00:00
chriseth
7b1a6798e6 Remove support for Visual Studio 2015. 2018-12-17 18:56:23 +01:00
chriseth
02a8e5d4e9 Update to use memorydb for aleth. 2018-12-13 12:07:32 +01:00
chriseth
e85c3428b4
Merge pull request #5634 from ethereum/staticPPA
Replace trusty PPA build by static PPA build.
2018-12-12 18:43:08 +01:00
chriseth
17bf164afe
Merge pull request #4951 from ethereum/alethUpdates
Use current aleth release for testing.
2018-12-12 18:41:35 +01:00
Daniel Kirchner
60d7cc6049 Replace trusty PPA build by static PPA build. 2018-12-12 17:05:59 +01:00
Christian Parpart
5b86e3ec50 Enables C++14 standard (was C++11) within the Solidity compiler project. 2018-12-11 21:28:05 +01:00
Daniel Kirchner
6d82ad1338 Test updates for recent versions of aleth. 2018-12-11 04:47:05 +01:00
Christian Parpart
a3829516f0 build.sh bash script cleanup
* use `set -e` to abort script execution when error codes fail (and haven't been checked)
* use [[ ]] instead of [ ] or test.
* use ROOTDIR/BUILDDIR variables for better readability
* use mktemp in order to avoid accidental name clashes.
* use `make install` instead of `install ...` as cleaner installation process
  * this however doesn't install soltest anymore, which I believe is
    right, as normal users should not need it installed in their system.
    Those who want to run the test suite, can do so manually
* allow optional passing of more additional custom args to cmake
2018-12-10 14:59:55 +01:00
chriseth
8d9fa0f4fa Fix manual deploy script for alpine. 2018-12-05 12:03:28 +01:00
chriseth
6b11ef1887
Merge pull request #5513 from corollari/fedora-fix
Detect Fedora properly in install_deps.sh
2018-11-29 14:04:54 +01:00
Albert
87f9834381 Fix #5512
Make the double quotes around the distro name optional so it matches properly in Fedora (`NAME=Fedora`)
2018-11-28 23:18:44 +01:00
Justin Wilson
16d1bf3335 Builds both scratch & Alpine Docker images
- Adds `Dockerfile_alpine`, which copies the complier from the scratch
   step into an Alpine image
 - Updates `docker_build.sh` to build the Alpine image
 - Updates `docker_deploy.sh` to tag and push the Alpine images
 - Updates `docker_deploy_manual.sh` to tag and push the Alpine images

The tags that are pushed follow:

 - Scratch
    - ethereum/solc:stable
    - ethereum/solc:0.5.1
    - ethereum/solc:nightly
    - ethereum/solc:nightly-0.5.1-bc7cb301e3d71756c8fbefe888aca53433302117
    - ethereum/solc:nightly-0.5.1-bc7cb301e3d71756c8fbefe888aca53433302117
 - Alpine
    - ethereum/solc:stable-alpine
    - ethereum/solc:0.5.1-alpine
    - ethereum/solc:nightly-alpine
    - ethereum/solc:nightly-alpine-0.5.1-bc7cb301e3d71756c8fbefe888aca53433302117
    - ethereum/solc:nightly-alpine-0.5.1-bc7cb301e3d71756c8fbefe888aca53433302117
2018-11-27 13:45:59 -07:00
Chris Purta
5c67821af4 Script that directly comments errors to the github pull request. 2018-11-26 15:43:17 +01:00
chriseth
3672506de9 Fix bytecode report file. 2018-11-22 21:03:24 +01:00
Alex Beregszaszi
780990516b Fix storebytecode.sh for bytecode comparison 2018-11-22 15:27:38 +00:00
Daniel Kirchner
119aa107da Use emscripten 1.37.21 and boost 1.67.0 on both travis and circle. 2018-11-21 15:24:20 +01:00
chriseth
6ed3765941 Fix bytecode tests for solc-js 2018-11-13 13:57:31 +00:00
chriseth
28d98d61ef Use latest solcjs and replace compileStandard by compile. 2018-11-13 13:54:01 +00:00
chriseth
5256da03db Fix check style script. 2018-11-12 22:57:32 +01:00
chriseth
199a994e28 Update ubuntu versions. 2018-10-30 15:57:14 +01:00
mordax
40b9b52872 Remove another mention 2018-10-13 21:35:09 -04:00
chriseth
d76bfcd935 Fix typos. 2018-10-04 13:28:16 +02:00
chriseth
658bef5a38
Merge pull request #5115 from mestorlx/cleancircleci
removed stray (B in CI test output
2018-10-01 13:18:55 +02:00
Martin Diz
25f3565340 removed stray (B in CI test output 2018-09-28 19:27:55 -03:00
Chris Ward
d9b7fd1347 Add Mojave to dependencies script
Add changelog entry

Moved changelog item

Updates from review
2018-09-27 12:06:41 +03:00
liangdzou
982d883a88 enhance test_trailing_whitespace to test_check_style: several format rules for if/for are introduced 2018-09-20 21:31:16 +08:00
Daniel Kirchner
69673f5a4b Include origin filename in the filenames generated by isolate_tests.py. 2018-09-06 18:03:38 +02:00
chriseth
8da1f25030
Merge pull request #4897 from ethereum/trailingWhitespaceDetection
Trailing whitespace detection script and circleci job.
2018-09-04 18:20:57 +02:00
Daniel Kirchner
1ae6ec9038 Remove trailing whitespace. 2018-09-04 17:43:04 +02:00
Daniel Kirchner
1cd96b2dc4 Trailing whitespace detection script and circleci job. 2018-09-04 17:36:47 +02:00
Daniel Kirchner
9695d7b38d Use wildcards for MSVC version in scripts/release.bat. 2018-09-04 16:35:25 +02:00
Daniel Kirchner
b4a02522a4 Update generation of bugs_by_version.json. 2018-09-04 11:30:30 +02:00
Daniel Kirchner
a102f3b783 Remove trailing whitespace for all files in the repository. 2018-09-04 11:30:30 +02:00
chriseth
6a5a187d83 Also extract tests that do not start with a pragma. 2018-08-14 15:50:46 +02:00
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