Skip to content

Version 0.5.1 #5571

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 266 commits into from
Dec 3, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
266 commits
Select commit Hold shift + click to select a range
b7a23ee
Merge pull request #5373 from ethereum/archlinuxCI
chriseth Nov 14, 2018
d60cab1
Add CompilerStack state assertions in internal methods
axic Aug 6, 2018
b0a2e41
Merge pull request #4693 from ethereum/compilerstack
chriseth Nov 14, 2018
3e56648
Revert "Disable covereage cmake option"
axic Nov 14, 2018
fa1cb34
Update syntax used for input and output parameters
Oct 24, 2018
048109b
Merge pull request #5324 from ethereum/docs-input-output-change-types
chriseth Nov 14, 2018
eef6697
Change terminology used for input output parameters
Oct 24, 2018
264aca4
Merge pull request #5423 from ethereum/enable-coverage
axic Nov 14, 2018
88fbd31
Merge pull request #5323 from ethereum/docs-input-output-change-contr…
chriseth Nov 14, 2018
121d733
Begin review of micropayments example
Jul 10, 2018
aaa5018
Merge pull request #4523 from ethereum/micropayment-channel-example-p…
chriseth Nov 14, 2018
5783ebb
Small changes to yul object specification.
chriseth Nov 14, 2018
b6e2e4a
Consistent use of address()
kn1g Nov 14, 2018
1e4765f
Merge pull request #5428 from ethereum/yulObjectSpecChange
chriseth Nov 14, 2018
727e3f2
Do not perform cleanup on unsigned integers when loading from calldata.
chriseth Nov 7, 2018
d660525
Fix indentation in documentation
axic Nov 14, 2018
f8b36fd
Merge pull request #5433 from ethereum/docs-fix
axic Nov 14, 2018
92ebf66
Merge pull request #5368 from ethereum/noCleanupUnsigned
axic Nov 14, 2018
bddbdeb
Qualify that storage slots are shared for contiguous data
fulldecent Nov 15, 2018
70bb0ea
[SMTChecker] Implement uninterpreted functions and use it for blockha…
Oct 25, 2018
caf4430
Fixed consistent use of `nameReg`
kn1g Nov 15, 2018
9db7640
Merge pull request #5430 from kn1g/patch-1
axic Nov 15, 2018
5f4eb96
Remove Struct copy FAQ item
Nov 15, 2018
f1d0243
Move undefined FAQ item
Nov 15, 2018
9b65713
Remove length related FAQ item
Nov 15, 2018
7debfa7
Ask for target EVM version in issue template
axic Nov 15, 2018
460c58f
Merge pull request #5441 from ethereum/github-vm-version
axic Nov 15, 2018
f705a45
[Yul] Implements a pass to rewrite for-loop's pre block into the pare…
christianparpart Nov 7, 2018
5be45e7
Merge pull request #5307 from ethereum/smt_uf
Nov 17, 2018
06c3f09
[SMTChecker] Support bound function calls
Oct 25, 2018
d3f66ca
Merge pull request #5309 from ethereum/smt_bound_functions
axic Nov 19, 2018
119aa10
Use emscripten 1.37.21 and boost 1.67.0 on both travis and circle.
ekpyron Jul 11, 2018
ea8b7d8
Removing redundant virtual from override function declaration
Mordax Nov 16, 2018
01ce43e
[SMTChecker] Refactor smt::Sort and its usage
Nov 21, 2018
8e98885
Merge pull request #5355 from ethereum/yul-forloop-pre-rewrite
chriseth Nov 21, 2018
c9ee302
Merge pull request #5444 from Mordax/issue-5168-rmvirtual
axic Nov 21, 2018
2c6e188
Merge pull request #5466 from ethereum/smt_refactor_sort_patch1
axic Nov 21, 2018
dcfa5f4
LLL: add UNSET to remove a variable
axic Jul 4, 2017
7c051f1
LLL: implement WITH keyword
axic Jul 4, 2017
6ee764e
Changelog entry.
chriseth Nov 21, 2018
fedbe7b
Merge pull request #5436 from ethereum/docs-faq-types-rem-struct
chriseth Nov 21, 2018
10a2e5d
Merge pull request #4486 from ethereum/travisEmscriptenMinimal
axic Nov 21, 2018
d47707a
Merge pull request #2520 from ethereum/lll-with
chriseth Nov 21, 2018
2bf5e6f
Merge pull request #5439 from ethereum/docs-faq-types-array-length
chriseth Nov 21, 2018
82055cb
Jumps with annotations cannot be functional.
chriseth Nov 13, 2018
69afd09
Changelog entry.
chriseth Nov 13, 2018
87821c5
Isolating files shared between Yul- and Solidity language frontend.
Nov 14, 2018
2518b53
Splitting out CharStream from Scanner.
Nov 14, 2018
80371e2
Ensure liblangutil is compiled and linked as its own static library.
Nov 14, 2018
d67322a
Introduce namespace `langutil` in liblangutil directory.
Nov 14, 2018
7a26ede
Fix constructor in AuctionRegistrar
axic Sep 26, 2018
7d8c1fc
Merge pull request #5473 from ethereum/tests-constructor
axic Nov 21, 2018
b5acc63
Merge pull request #5427 from ethereum/liblangutil
chriseth Nov 21, 2018
3a15f88
Merge pull request #5434 from fulldecent/patch-8
chriseth Nov 21, 2018
90b244d
Added Superblocks Lab IDE to the generic section
javier-tarazaga Oct 27, 2018
dc748bc
Merge pull request #5328 from SuperblocksHQ/develop
axic Nov 22, 2018
13a142b
[SMTChecker] Add FunctionSort and refactors the solver interface to c…
Nov 21, 2018
60fbc32
Merge pull request #5471 from ethereum/smt_refactor_sort_patch2
axic Nov 22, 2018
20accf1
[SMTChecker] Add ArraySort and array operations
Nov 22, 2018
a541196
Merge pull request #5478 from ethereum/smt_refactor_sort_patch3
axic Nov 22, 2018
636da48
Move most of SMTChecker tests from C++ to isoltest
axic Aug 1, 2018
109cfce
Drop numbering in front of the SMTChecker tests
axic Aug 2, 2018
4a71080
Remove pragma ABIEncoderV2 from smt test
Nov 14, 2018
32fe476
Organize smt tests in subdirectories
Nov 14, 2018
06189ae
Add assert and tests for bound functions
Nov 19, 2018
be32109
Merge pull request #4645 from ethereum/smt-syntax-tests
axic Nov 22, 2018
9e96485
Rename 'asMemberFunction' to widen its purpose.
chriseth Nov 22, 2018
92ba8a9
Make asCallableFunction to never fail and assert abount parameter siz…
chriseth Nov 22, 2018
62e801e
Use callable function for virtual resolution.
chriseth Nov 22, 2018
7809905
Fix storebytecode.sh for bytecode comparison
axic Nov 22, 2018
ec84a7d
[SMTChecker] Refactor setZeroValue and setUnknownValue
Nov 22, 2018
b0e4ef7
Merge pull request #5482 from ethereum/smt_refactor_sort_patch4
axic Nov 22, 2018
a781bda
Correct style.
chriseth Nov 22, 2018
87d1276
Notify user on successful run without output.
liangdzou Sep 13, 2018
ecd059c
Merge pull request #5451 from ethereum/bound_function_tests
chriseth Nov 22, 2018
5515d70
Merge pull request #5481 from ethereum/fix-byecodecompare
axic Nov 22, 2018
3e44115
Merge pull request #4958 from liangdzou/issue_4494_error_out_when_no_…
axic Nov 22, 2018
958f2a5
Mention third party licenses.
Nov 22, 2018
640e3ca
Update paths to CharStream, Scanner and Token files.
chriseth Nov 22, 2018
c6b550b
Merge pull request #5488 from lazaridiscom/patch-3
chriseth Nov 22, 2018
3672506
Fix bytecode report file.
chriseth Nov 22, 2018
c095440
Merge pull request #5490 from ethereum/fixBytecode
chriseth Nov 22, 2018
d686807
Style
chriseth Nov 22, 2018
9217fbb
Merge pull request #5489 from ethereum/chriseth-patch-1
chriseth Nov 22, 2018
bb10be7
Inject SMTLIB2 queries and responses via standard-json-io.
chriseth Oct 13, 2017
54bed45
Rename function and warn if responses are supplied for Z3.
chriseth Oct 13, 2017
f44be61
Renaming json fields smtlib2queries and smtlib2responses
Aug 3, 2018
f3c2309
Display better error message in SMTLib2
Aug 3, 2018
dee0c4d
Error message stays in the SMTChecker
Aug 14, 2018
6251a28
Testing with smtlib2 interface always there
Aug 24, 2018
bc5d152
Update docs/types.rst
chriseth Nov 23, 2018
9c1bdb7
Add default value details
Nov 23, 2018
10e6d28
Moving files from libsolidity/inlineasm/*.{cpp,h} to libyul/.
Nov 23, 2018
0f4ed52
Rewrite header paths to adapt to recent `git mv` of libsolidity/inlin…
Nov 23, 2018
0ff4cbe
Add SMTChecker tests for standard JSON
Nov 15, 2018
616ef8b
Merge pull request #3073 from ethereum/smtlib2_via_standardio
axic Nov 23, 2018
713d944
Reorder some include files and group <libyul/>'s together (as much as…
Nov 23, 2018
3734f40
CMake: Isolate libyul into its own static library
Nov 23, 2018
58a744f
Replace all occurrences of NULL with nullptr.
Nov 23, 2018
4fb15c9
Merge pull request #5492 from ethereum/audit-NULL-to-nullptr
christianparpart Nov 23, 2018
ec47c89
Isolating libyul library API into its own namespace `yul`.
Nov 21, 2018
8dd0338
Remove superfluous libyul/ASTDataForward.h and include libyul/AsmData…
Nov 21, 2018
9a94e50
Merge pull request #5491 from ethereum/libyul-as-library
chriseth Nov 23, 2018
2e861bf
Merge pull request #5472 from ethereum/assemblyAnnotationOutput
chriseth Nov 23, 2018
f57ef36
Update docs/types.rst
erak Nov 23, 2018
e454737
adapt to latest code changes
lazaridiscom Nov 22, 2018
aeb6690
Moving SourceReferenceFormatter into langutil namespace.
Nov 24, 2018
e4106bd
Change scanner error diagnostics to be non-intrusive to the token API.
Nov 23, 2018
0ad56bc
Adapting tests to Scanner's lexical error diagnostics change.
Nov 23, 2018
56d5dd4
decouple TestCase class from test/libsolidity
lazaridiscom Nov 25, 2018
1e03c16
Merge pull request #5499 from lazaridiscom/decouple-TestCase
axic Nov 25, 2018
0857981
Update introduction-to-smart-contracts.rst
davidlj95 Nov 25, 2018
06ae228
Update installing-solidity.rst
davidlj95 Nov 25, 2018
96333f3
Merge pull request #5500 from davidlj95/patch-1
axic Nov 25, 2018
0e08fb7
Use "in" tag for jumps from unpacker to function.
chriseth Nov 13, 2018
2d0326a
Changelog entry.
chriseth Nov 13, 2018
58181e8
Move FAQ point to input and output parameters and polish surrounding …
Oct 1, 2018
95206f2
Update types.rst
davidlj95 Nov 26, 2018
9e0e1ee
Merge pull request #5503 from davidlj95/patch-1
chriseth Nov 26, 2018
bc137c2
Merge pull request #5485 from ethereum/refactorCallableFunction
chriseth Nov 26, 2018
0f0e466
Allow visibility change from external to public.
chriseth Nov 22, 2018
ac5803b
Changelog entry and tests.
chriseth Nov 22, 2018
0b474d5
Merge pull request #5497 from ethereum/langutil-SourceReferenceFormatter
chriseth Nov 26, 2018
aaaa920
[SMTChecker] Unknown answer for constant condition check should not d…
Nov 26, 2018
9ac7c74
Merge pull request #5494 from ethereum/scanner-error-handling
chriseth Nov 26, 2018
7921e5f
Merge pull request #5486 from ethereum/allowExternalPublicOverride
chriseth Nov 26, 2018
9a4968b
Use asCallableFunction in override check (part 1).
chriseth Nov 22, 2018
939365a
Use callable types for override check.
chriseth Nov 22, 2018
36a369d
Use asCallableFunction for external interface clash check.
chriseth Nov 22, 2018
5ec6349
Use asCallableFunction for definition clashes in the same contract.
chriseth Nov 22, 2018
5971741
Tests.
ekpyron Nov 12, 2018
cdd8c72
CMake: Explicitly state which files to compile instead of relying on …
Nov 23, 2018
b98a9ee
Define how inheritance affects storage
fulldecent Nov 15, 2018
d950905
Merge pull request #5493 from ethereum/cmake-no-globbing
chriseth Nov 26, 2018
d00082f
Merge pull request #5435 from fulldecent/patch-9
chriseth Nov 26, 2018
a46d5c6
Fix merge problem in CMake files.
chriseth Nov 26, 2018
7cc6738
Merge pull request #5438 from ethereum/docs-faq-types-undefined
chriseth Nov 26, 2018
e7f6ed8
Merge pull request #5506 from ethereum/fixMergeConflict
chriseth Nov 26, 2018
f1cebed
Merge pull request #5287 from ethereum/docs-update-input-parameters
chriseth Nov 26, 2018
5c67821
Script that directly comments errors to the github pull request.
Nov 14, 2018
bd40c0a
Merge pull request #5313 from cpurta/circle-ci-error-bot
chriseth Nov 26, 2018
764d618
Merge pull request #5404 from ethereum/jumpFixes
chriseth Nov 26, 2018
f6d8810
Merge pull request #5504 from ethereum/smt_fix_emscripten
chriseth Nov 26, 2018
30e6f8d
Allow mapping arguments for public and external library functions.
ekpyron Nov 8, 2018
f937896
Merge pull request #5445 from ethereum/publicExternalOverwrite
chriseth Nov 26, 2018
4d7799e
Properly disallow different return types for interface overloads with…
chriseth Nov 22, 2018
1e7a23a
Changelog entry and tests.
chriseth Nov 22, 2018
80fa898
Merge pull request #5487 from ethereum/fixInterfaceOverrideTypeChange
chriseth Nov 26, 2018
2d5516b
Review contributing docs for language and ease
Sep 30, 2018
2f0088f
Merge pull request #5121 from ethereum/docs-contributing-pt2
chriseth Nov 26, 2018
12daec3
Move function related content to contracts doc
Nov 26, 2018
240ad0e
Merge pull request #5382 from ethereum/libraryMappingPublic
chriseth Nov 26, 2018
3adddef
Merge pull request #5507 from ethereum/docs-move
chriseth Nov 26, 2018
ae54217
Add that pure functions can use revert and require
Oct 19, 2018
5e55cb1
Merge pull request #5277 from ethereum/docs-5175-require-revert
chriseth Nov 26, 2018
e016cb9
Yul objects.
chriseth Nov 4, 2018
728119b
Use yul parser in assembly stack.
chriseth Nov 7, 2018
105898b
Tests.
chriseth Nov 7, 2018
fb2e471
Fix nondeterminism bug related to boost version.
chriseth Nov 27, 2018
bc7cb30
Merge pull request #5517 from ethereum/nondeterminismBoost
chriseth Nov 27, 2018
16d1bf3
Builds both scratch & Alpine Docker images
Nov 27, 2018
9a2cb7b
Added Docker updates to changelog
Nov 27, 2018
69dcf1a
Changelog entry.
chriseth Nov 28, 2018
cb9816f
Yul grammar changes.
chriseth Nov 28, 2018
7cbf046
Merge pull request #5358 from ethereum/yulObjects
chriseth Nov 28, 2018
4fa4732
Remove obsolete comment.
chriseth Nov 28, 2018
5c0331a
Merge pull request #5525 from ethereum/obsoleteComment
chriseth Nov 28, 2018
46f3da0
Properly check getter types to be old-abi-coder-compatible.
chriseth Nov 28, 2018
c54814b
Tests.
chriseth Nov 28, 2018
9ba3532
Changelog entry.
chriseth Nov 28, 2018
c51e6a5
Remove boost test checks from SMTCheckerJSONTest
Nov 28, 2018
47bd906
Merge pull request #5527 from ethereum/smt_json_testcases
chriseth Nov 28, 2018
d748165
Merge pull request #5522 from juztin/develop
chriseth Nov 28, 2018
50351fb
Fixes crash on empty runtime code.
erak Nov 28, 2018
b75859f
Begin overhaul of documentation index
Sep 17, 2018
937891b
Merge pull request #5289 from ethereum/docs-index-overhaul
chriseth Nov 28, 2018
463951e
Merge pull request #5530 from ethereum/fix-ast-segfault
chriseth Nov 28, 2018
b4086ac
Merge pull request #5526 from ethereum/fixGetterNewCoder
chriseth Nov 28, 2018
8ec66bc
Disable coverage generation for release branch.
chriseth Nov 28, 2018
87f9834
Fix #5512
corollari Nov 27, 2018
5ec67ee
liblangutil: adds ParserBase::charStream() accessor
Nov 28, 2018
9326adc
Replace IntegerType(256) with static function IntegerType::uint256()
hydai Nov 29, 2018
1d47919
Fix ICE when function type struct parameter has field of non-existent…
Nov 28, 2018
74f7051
Merge pull request #5533 from ethereum/fix_function_type_struct_bug
chriseth Nov 29, 2018
f6d0132
Merge pull request #5538 from hydai/static_uint256
chriseth Nov 29, 2018
6060a36
liblangutil: adds Scanner.charStream() accessor
Nov 28, 2018
22eff22
liblangutil: extends CharStream to know about the respective (file-)n…
Nov 28, 2018
2867c2b
Clarify "copying bytecode" in inheritance.
chriseth Nov 29, 2018
6b11ef1
Merge pull request #5513 from corollari/fedora-fix
chriseth Nov 29, 2018
67bbcef
Report deprecation error on functions sha3 and suicide also without c…
Nov 29, 2018
c541cd9
Merge pull request #5539 from ethereum/fix_deprecated_sha3_suicide
chriseth Nov 29, 2018
9e9250c
Fix move bug.
chriseth Nov 29, 2018
124a8de
Merge pull request #5543 from ethereum/fixSortMOve
chriseth Nov 29, 2018
73a64da
Fix bug related to state variables of function type accessed via base…
chriseth Nov 29, 2018
c445e7d
Disallow inline arrays of mapping type.
chriseth Nov 29, 2018
f46dd91
Move inline array tests.
chriseth Nov 29, 2018
a7ca499
Merge pull request #5549 from ethereum/disallowInlineArraysOfMappingType
chriseth Nov 30, 2018
d6d41b2
Merge pull request #5548 from ethereum/fixMemberAccess
chriseth Nov 30, 2018
6aa9ce2
Merge pull request #5550 from ethereum/moveSomeTests
chriseth Nov 30, 2018
2f6de12
[SMTChecker] Make smt::Sort::operator== virtual
Nov 28, 2018
0bd9db4
Add skeleton for contract level checker.
chriseth Nov 29, 2018
d054a3b
Move duplication checks.
chriseth Nov 29, 2018
89cf6a5
Move override checks.
chriseth Nov 29, 2018
57a6242
Move abstract function check.
chriseth Nov 29, 2018
2c2c976
Move base constructor argument checks.
chriseth Nov 29, 2018
621ce3d
Test.
chriseth Nov 29, 2018
d1cc731
No need to visit structs early.
chriseth Nov 29, 2018
b610be4
Rename functions.
chriseth Nov 29, 2018
2a85152
Move constructor checks.
chriseth Nov 29, 2018
4f4f623
Move fallback function checks.
chriseth Nov 29, 2018
6d1644e
Move external type clash check.
chriseth Nov 29, 2018
4f99229
Move hash collisions checks.
chriseth Nov 29, 2018
33d6a24
Move library related checks.
chriseth Nov 29, 2018
17a703f
Changelog entry.
chriseth Nov 30, 2018
1bbd597
Merge pull request #5529 from ethereum/noCoverageOnRelease
chriseth Nov 30, 2018
474e7b5
Merge pull request #5546 from ethereum/inheritanceChecker
chriseth Nov 30, 2018
eea8cec
Merge pull request #5541 from ethereum/clarifyCopyInheritance
chriseth Nov 30, 2018
cc00d81
Merge pull request #5528 from ethereum/smt_sorts_virtual
chriseth Nov 30, 2018
c48a526
liblangutil: SourceLocation: adds (shared) pointer to underlying Char…
Nov 28, 2018
435f7b3
liblangutil: Scanner: remove superfluous sourceName field (it's in Ch…
Nov 29, 2018
18e3d6d
liblangutil: small refactors wrt. API cleanups
Nov 30, 2018
757623e
liblangutil: SourceLocation: Retricts == and != operator
Nov 30, 2018
436696d
Update assembly grammar part.
chriseth Nov 29, 2018
6c44c5f
Apply the optimize commandline parameter to assembly mode.
chriseth Nov 3, 2018
0d1b9c3
Adds tests for --optimize in assembly mode.
erak Nov 21, 2018
1cdcdce
Improves assembly output commandline tests.
erak Nov 29, 2018
aaeb74f
Merge pull request #5537 from ethereum/cp-SourceLocation-related-refa…
chriseth Nov 30, 2018
4a907fa
Added information about debugging and examples on how to run subsets …
robechun Dec 2, 2018
a73df9b
Merge pull request #5562 from Altrum/debugDocs
chriseth Dec 3, 2018
98a0779
Explain how to get a list of all tests.
chriseth Dec 3, 2018
32c3f6c
Add link between functions in contract structure and more details
Nov 30, 2018
6d41ffb
[SMTChecker] Remove unary plus operator
Dec 3, 2018
25c63dd
Merge pull request #5553 from ethereum/docs-add-link-structure
chriseth Dec 3, 2018
bbe0268
Add mapping guide to style docs thanks to @aupiff
Nov 12, 2018
0668a9e
Public state variables are implementing external functions.
chriseth Nov 30, 2018
3f613a4
Merge pull request #5557 from ethereum/fixInterfaceImplementedByPubli…
chriseth Dec 3, 2018
ba5d8b5
Merge pull request #5565 from ethereum/listTests
chriseth Dec 3, 2018
3159e2a
Merge pull request #5547 from ethereum/assemblySyntax
chriseth Dec 3, 2018
413cb67
Merge pull request #5532 from ethereum/docs-style-add-mapping
chriseth Dec 3, 2018
5897b14
Merge pull request #5568 from ethereum/smt_remove_unary_plus
chriseth Dec 3, 2018
0d1dd30
Merge pull request #5524 from ethereum/yulGrammarChanges
chriseth Dec 3, 2018
78ca280
Move String literal and inline array FAQ items
Nov 15, 2018
04d9466
Merge pull request #5437 from ethereum/docs-faq-types-inline-array
chriseth Dec 3, 2018
4b98946
Merge pull request #5341 from ethereum/optimizeAssemblyCommandline
chriseth Dec 3, 2018
82f5763
Fix internal compiler error for unimplemented base contract function.
anurag-git Dec 1, 2018
1502449
Add solc-js changes.
chriseth Dec 3, 2018
0df641f
Merge pull request #5569 from ethereum/chriseth-patch-1
chriseth Dec 3, 2018
eed353a
Merge pull request #5558 from anurag-git/issue_5130
chriseth Dec 3, 2018
8d623dc
Massage changelog for 0.5.1
chriseth Dec 3, 2018
590be1d
Merge pull request #5570 from ethereum/updateChangelog051
chriseth Dec 3, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
54 changes: 52 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ defaults:
command: |
mkdir -p build
cd build
[ -n "$COVERAGE" -a "$CIRCLE_BRANCH" != release -a -z "$CIRCLE_TAG" ] && CMAKE_OPTIONS="$CMAKE_OPTIONS -DCOVERAGE=ON"
cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo $CMAKE_OPTIONS
make -j4
- run_tests: &run_tests
Expand Down Expand Up @@ -53,7 +54,7 @@ jobs:
name: Save Boost build
key: *boost-cache-key
paths:
- boost_1_57_0
- boost_1_67_0
- store_artifacts:
path: build/libsolc/soljson.js
destination: soljson.js
Expand Down Expand Up @@ -122,7 +123,7 @@ jobs:
- image: buildpack-deps:artful
environment:
TERM: xterm
CMAKE_OPTIONS: -DCOVERAGE=OFF
COVERAGE: "ON"
steps:
- checkout
- run:
Expand All @@ -139,13 +140,35 @@ jobs:
paths:
- "*"

build_x86_archlinux:
docker:
- image: archlinux/base
environment:
TERM: xterm
steps:
- run:
name: Install build dependencies
command: |
pacman --noconfirm -Syu --noprogressbar --needed base-devel boost cmake z3 cvc4 git openssh tar
- checkout
- run: *setup_prerelease_commit_hash
- run: *run_build
- store_artifacts: *solc_artifact
- persist_to_workspace:
root: build
paths:
- solc/solc
- test/soltest
- test/tools/solfuzzer

build_x86_clang7:
docker:
- image: buildpack-deps:cosmic
environment:
TERM: xterm
CC: /usr/bin/clang-7
CXX: /usr/bin/clang++-7
CMAKE_OPTIONS: -DLLL=ON
steps:
- checkout
- run:
Expand All @@ -167,6 +190,7 @@ jobs:
xcode: "10.0.0"
environment:
TERM: xterm
CMAKE_OPTIONS: -DLLL=ON
steps:
- checkout
- run:
Expand Down Expand Up @@ -260,6 +284,27 @@ jobs:
path: test_results/
destination: test_results/

test_x86_archlinux:
docker:
- image: archlinux/base
environment:
TERM: xterm
steps:
- run:
name: Install dependencies
command: |
pacman --noconfirm -Syu --noprogressbar --needed boost z3 cvc4 git openssh tar
- checkout
- attach_workspace:
at: build
- run: mkdir -p test_results
- run: build/test/soltest --logger=JUNIT,test_suite,test_results/result.xml -- --no-ipc --testpath test
- store_test_results:
path: test_results/
- store_artifacts:
path: test_results/
destination: test_results/

test_x86_mac:
macos:
xcode: "10.0.0"
Expand Down Expand Up @@ -330,3 +375,8 @@ workflows:
requires:
- build_x86_mac
- docs: *build_on_tags
- build_x86_archlinux: *build_on_tags
- test_x86_archlinux:
<<: *build_on_tags
requires:
- build_x86_archlinux
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ about: Bug reports about the Solidity Compiler.
## Environment

- Compiler version:
- Target EVM version (as per compiler settings):
- Framework/IDE (e.g. Truffle or Remix):
- EVM execution environment / backend / blockchain client:
- Operating system:
Expand Down
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ matrix:
before_install:
- nvm install 8
- nvm use 8
- docker pull trzeci/emscripten:sdk-tag-1.35.4-64bit
- docker pull trzeci/emscripten:sdk-tag-1.37.21-64bit
env:
- SOLC_EMSCRIPTEN=On
- SOLC_INSTALL_DEPS_TRAVIS=Off
Expand Down Expand Up @@ -153,7 +153,7 @@ git:
cache:
ccache: true
directories:
- boost_1_57_0
- boost_1_67_0
- $HOME/.local

install:
Expand Down
13 changes: 9 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,13 @@ include(EthPolicy)
eth_policy()

# project name and version should be set after cmake_policy CMP0048
set(PROJECT_VERSION "0.5.0")
set(PROJECT_VERSION "0.5.1")
project(solidity VERSION ${PROJECT_VERSION})

option(LLL "Build LLL" OFF)
option(SOLC_LINK_STATIC "Link solc executable statically on supported platforms" OFF)
option(LLLC_LINK_STATIC "Link lllc executable statically on supported platforms" OFF)
option(INSTALL_LLLC "Include lllc executable in installation" OFF)
option(INSTALL_LLLC "Include lllc executable in installation" ${LLL})

# Setup cccache.
include(EthCcache)
Expand Down Expand Up @@ -44,14 +45,18 @@ include(EthOptions)
configure_project(TESTS)

add_subdirectory(libdevcore)
add_subdirectory(liblangutil)
add_subdirectory(libevmasm)
add_subdirectory(libyul)
add_subdirectory(libsolidity)
add_subdirectory(libsolc)

if (NOT EMSCRIPTEN)
add_subdirectory(solc)
add_subdirectory(liblll)
add_subdirectory(lllc)
if (LLL)
add_subdirectory(liblll)
add_subdirectory(lllc)
endif()
endif()

if (TESTS AND NOT EMSCRIPTEN)
Expand Down
41 changes: 41 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,44 @@
### 0.5.1 (2018-12-03)

Language Features:
* Allow mapping type for parameters and return variables of public and external library functions.
* Allow public functions to override external functions.

Compiler Features:
* Code generator: Do not perform redundant double cleanup on unsigned integers when loading from calldata.
* Commandline interface: Experimental ``--optimize`` option for assembly mode (``--strict-assembly`` and ``--yul``).
* SMTChecker: SMTLib2 queries and responses passed via standard JSON compiler interface.
* SMTChecker: Support ``msg``, ``tx`` and ``block`` member variables.
* SMTChecker: Support ``gasleft()`` and ``blockhash()`` functions.
* SMTChecker: Support internal bound function calls.
* Yul: Support Yul objects in ``--assemble``, ``--strict-assembly`` and ``--yul`` commandline options.

Bugfixes:
* Assembly output: Do not mix in/out jump annotations with arguments.
* Commandline interface: Fix crash when using ``--ast`` on empty runtime code.
* Code Generator: Annotate jump from calldata decoder to function as "jump in".
* Code Generator: Fix internal error related to state variables of function type access via base contract name.
* Optimizer: Fix nondeterminism bug related to the boost version and constants representation. The bug only resulted in less optimal but still correct code because the generated routine is always verified to be correct.
* Type Checker: Properly detect different return types when overriding an external interface function with a public contract function.
* Type Checker: Disallow struct return types for getters of public state variables unless the new ABI encoder is active.
* Type Checker: Fix internal compiler error when a field of a struct used as a parameter in a function type has a non-existent type.
* Type Checker: Disallow functions ``sha3`` and ``suicide`` also without a function call.
* Type Checker: Fix internal compiler error with ``super`` when base contract function is not implemented.
* Type Checker: Fixed internal error when trying to create abstract contract in some cases.
* Type Checker: Fixed internal error related to double declaration of events.
* Type Checker: Disallow inline arrays of mapping type.
* Type Checker: Consider abstract function to be implemented by public state variable.

Build System:
* CMake: LLL is not built anymore by default. Must configure it with CMake as `-DLLL=ON`.
* Docker: Includes both Scratch and Alpine images.
* Emscripten: Upgrade to Emscripten SDK 1.37.21 and boost 1.67.

Solc-Js:
* Fix handling of standard-json in the commandline executable.
* Remove support of nodejs 4.


### 0.5.0 (2018-11-13)

How to update your code:
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,5 +62,6 @@ if you want to help.
[@chriseth](https://github.com/chriseth)

## License
Solidity is licensed under [GNU General Public License v3.0](https://github.com/ethereum/solidity/blob/develop/LICENSE.txt)
Solidity is licensed under [GNU General Public License v3.0](LICENSE.txt)

Some third-party code has its [own licensing terms](cmake/templates/license.h.in).
2 changes: 1 addition & 1 deletion cmake/templates/license.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ jsoncpp:
license you like.

scanner/token:
The libsolidity/parsing/{scanner,token}.{h,cpp} files are dervied from
The liblangutil/{CharStream,Scanner,Token}.{h,cpp} files are dervied from
code originating from the V8 project licensed under the following terms:

Copyright 2006-2012, the V8 project authors. All rights reserved.
Expand Down
4 changes: 4 additions & 0 deletions docs/bugs_by_version.json
Original file line number Diff line number Diff line change
Expand Up @@ -612,5 +612,9 @@
"0.5.0": {
"bugs": [],
"released": "2018-11-13"
},
"0.5.1": {
"bugs": [],
"released": "2018-12-03"
}
}
Loading