Commit Graph

10393 Commits

Author SHA1 Message Date
Christian Parpart
b9f2a7804c adds .dockerignore file 2018-06-26 12:21:04 +02: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
Alex Beregszaszi
4be9dc4304
Merge pull request #4350 from ethereum/constructorWorkaroundExternal
New constructor syntax for external compilation tests
2018-06-26 00:45:55 +02:00
Erik Kundt
95c3488a26 Updates external contracts to new constructor syntax. 2018-06-26 00:00:32 +02:00
Alex Beregszaszi
3b1741909c
Merge pull request #4337 from ethereum/compilerstack-cleanup
Pull out createCBORMetadata helper
2018-06-25 23:44:47 +02:00
Alex Beregszaszi
3fc7da11db Pull out createCBORMetadata helper 2018-06-25 22:17:33 +02:00
Alex Beregszaszi
0ac4609097
Merge pull request #3534 from meowingtwurtle/strictAddresses
[BREAKING] Strict checking of address literals
2018-06-25 16:54:50 +02:00
Alex Beregszaszi
6d9a091a8e Keep the 'if it not used as an address' helper message for all cases of address related warnings 2018-06-25 16:25:21 +02:00
Alex Beregszaszi
c7f842d4cc Do not change SMT tests 2018-06-25 16:17:50 +02:00
Alex Beregszaszi
d44743c87f Replace old Truffle artifacts in external Zeppelin/Gnosis tests 2018-06-25 16:17:50 +02:00
Alex Beregszaszi
b7ad97610f Update documentation for strict address literals 2018-06-25 16:17:50 +02:00
Alex Beregszaszi
3ee3018bf6 Update external contracts in compilationTests (to support strict address literals) 2018-06-25 16:17:50 +02:00
Jason Cobb
98c9ca2575 Update tests for strict address literals 2018-06-25 16:17:50 +02:00
Alex Beregszaszi
48b003d4d4 Better wording for invalid address literal error 2018-06-25 16:17:50 +02:00
Jason Cobb
51567c0513 Change invalid (not exactly 160 bits long) address literal to error 2018-06-25 16:17:50 +02:00
Jason Cobb
3d88eca531 Disallow implicit conversion from rational (literal) to address 2018-06-25 16:17:50 +02:00
chriseth
b7003505c4
Merge pull request #4347 from ethereum/fix-end2endtest-against-latest-cpp-client
Fixes soltest run against "recent" cpp-ethereum builds.
2018-06-25 15:01:12 +02:00
Christian Parpart
f44561aeeb Fixes soltest against "recent" cpp-ethereum builds.
For me, it looks like the following Git commit has introduced this behaviour:
	42b927d7aa

This commit adds dummy values for `mixHash` and `nonce` (inspired by values were cpp-ethereum's own tests),
and now, soltest runs fine again.
2018-06-25 13:55:23 +02:00
Alex Beregszaszi
9b67bdb3f4
Merge pull request #4335 from ethereum/disable-gnosis
Disable gnosis tests temporarily
2018-06-22 11:15:37 +02:00
Alex Beregszaszi
e50f8d532a Disable gnosis tests temporarily 2018-06-21 21:51:28 +02:00
Alex Beregszaszi
ae43330b62
Merge pull request #4328 from ethereum/disallow-years
[BREAKING] Disallow the years unit denomination properly
2018-06-21 21:03:03 +02:00
chriseth
ad593fdf19
Merge pull request #4333 from ethereum/newkey
Use new PGP key and retire old ubuntu releases.
2018-06-21 20:34:26 +02:00
chriseth
166a9e08e7 Use new PGP key and retire old ubuntu releases. 2018-06-21 20:29:16 +02:00
Alex Beregszaszi
72e87423db Disallow the years unit denomination properly 2018-06-21 20:21:02 +02:00
chriseth
32f2db780c
Merge pull request #4301 from rnaby/TypeChecker
Simplification of typeSupportedByOldABIEncoder
2018-06-21 18:53:31 +02:00
chriseth
966ecaaf79
Merge pull request #4330 from ethereum/v050-var-keyword-preparations
drop var-keyword in compilationTests in favor of explicit types
2018-06-21 18:06:33 +02:00
Christian Parpart
6de24b1c5e test: drop var-keyword in compilationTests in favor of explicit types 2018-06-21 14:14:16 +02:00
chriseth
2c456f0e70
Merge pull request #4326 from ethereum/compilerstack-cleanup
Properly catch optimizer/assembly exception in CompilerStack
2018-06-21 14:14:13 +02:00
chriseth
3e9b4383cc
Merge pull request #4200 from biboran/3961
#3961 - added an example of two-dimensional array encoding
2018-06-21 14:09:53 +02:00
chriseth
0d1047181d
Merge pull request #4306 from ethereum/remove_050_workaround_scoping
[BREAKING] C99 scoping rules by default (remove 050 workaround)
2018-06-21 13:57:59 +02:00
Alex Beregszaszi
7e4bd3e346
Merge pull request #4219 from ethereum/functionTypeNamedArguments
Turn named return parameters in function types into an error.
2018-06-20 23:51:19 +02:00
Alex Beregszaszi
a392e0f046 Properly catch optimizer/assembly exception in CompilerStack 2018-06-20 23:19:06 +02:00
Alex Beregszaszi
edc0530452
Merge pull request #4323 from ethereum/compilerstack-cleanup
Reorder some of the flow in CompilerStack::compileContract for readability
2018-06-20 23:01:24 +02:00
Khan M Rashedun-Naby
a5f0caa178 Simplification of typeSupportedByOldABIEncoder 2018-06-20 23:16:21 +06:00
Alex Beregszaszi
0a632011be CompilerStack absolutePath/sanitizePath can be made static 2018-06-20 17:04:22 +02:00
Alex Beregszaszi
dcee8e11ad Reorder some of the flow in CompilerStack::compileContract for readability 2018-06-20 17:01:17 +02:00
Leonardo Alt
8862b3092b C99 scoping rules by default 2018-06-20 12:53:38 +02:00
chriseth
ba7fbf11e7
Merge pull request #4300 from nventuro/optimize-out-and
Add TruthyAnd Peephole optimization
2018-06-20 11:38:37 +02:00
Nicolás Venturo
804eb3ef9d Improves peephole_truthy_and test case 2018-06-19 17:09:50 -03:00
Alex Beregszaszi
c9ff67ca3e
Merge pull request #4313 from ethereum/remove-callcode
Disallow raw callcode (was deprecated in 0.4.12)
2018-06-19 19:00:55 +01:00
Alex Beregszaszi
9d3b7ad586
Merge pull request #4225 from ethereum/fixeventtopics
Clarify events.
2018-06-19 19:00:30 +01:00
chriseth
3eebba1087 Clarify documentation about events (mostly topics). 2018-06-19 19:53:02 +02:00
Alex Beregszaszi
a17059573f Disallow raw callcode (was deprecated in 0.4.12) 2018-06-19 19:31:07 +02:00
chriseth
4189b6b03d
Merge pull request #4303 from ethereum/refactorExtractedTests
Refactor syntax test infrastructure to prepare extracting semantics tests.
2018-06-19 16:42:11 +02:00
chriseth
c72e04c3a5
Merge pull request #4317 from nventuro/contributing-changelog
Add a changelog notice to the Contributing doc
2018-06-19 16:30:13 +02:00
Nicolás Venturo
1edd2fa165 Add a changelog notice to the contributing doc 2018-06-19 11:04:18 -03:00
Alex Beregszaszi
4247b0046e
Merge pull request #4311 from ethereum/fix_python_version_2
Use correct python version for the upgrade_bugs_by_version script
2018-06-18 15:37:07 +01: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
dbfee87860 Return parameters in function types may not be named. 2018-06-18 00:05:06 +02:00