Commit Graph
10392 Commits
Author SHA1 Message Date
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:
	https://github.com/ethereum/cpp-ethereum/commit/42b927d7aa103e21e34c8ba8c5469f532b49f966

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
Alex Beregszaszi 1692f78b3d Merge pull request #4309 from ethereum/pythonVersion
Correctly choose python version for scripts requiring python2.
2018-06-17 22:31:55 +01:00