Marenz
9c4ea1dc68
lsp.py: Add missing check for non-interactive
2022-06-07 15:30:14 +02:00
a3d4
423f3d3088
Fix ICE caused by an immutable struct
2022-06-07 10:29:45 +02:00
nishant-sachdeva
61306a6f9d
disabling more zeppline tests that expect reverts with specific errors and they're broken via IR due to Hardhat heuristics.
...
Updated zeppelin.sh
Added cautionary comment for two sed commands that depend on the order of occurrence of the patterns in the files.
L122, and L123 both are referencing the 3rd occurrence of the patterns from their respective files.
This could result in an error in the future when the code is further modified.
2022-06-06 19:15:40 +05:30
Marenz
6c9754a784
lsp.py: Fix various problems with subdirectory edge cases
...
* fix properly path parsing with nested subdirectories
* fix regex to be able to handle `file://..`
* fix not checking all expected diagnostics
* Some extra comments and renames
2022-05-31 16:17:35 +02:00
Matheus Aguiar
3904a0d5ce
Revert workaround introduced in euler tests because it is no longer needed.
...
This reverts commit 98efb46031
.
2022-05-31 09:00:00 -03:00
Kamil Śliwak
1543cfc904
Merge pull request #13067 from ethereum/disable-zeppelin-test-cases-failing-after-relaxing-inlining
...
Disable more zeppelin test cases in which Hardhat's heuristics break after relaxing inlining.
2022-05-25 23:04:05 +02:00
Matheus Aguiar
be12f90775
Disable zeppelin test cases in which Hardhat's heuristics break after relaxing inilining.
...
Also disabled one test because of hardhat issue 2115 (revert due to overflow misdetected).
2022-05-25 16:24:18 -03:00
Kamil Śliwak
c8612078c4
Remove the ethers.js 5.6.2 workaround from all ext tests except for gnosis and uniswap
2022-05-25 16:20:49 +02:00
Kamil Śliwak
6937799587
gnosis: Pin typescript dependency at <= 4.7.0
2022-05-25 15:52:21 +02:00
chriseth
a8dc762850
Merge pull request #12818 from ethereum/benchmark-downloader
...
Benchmark downloader (script + CI job)
2022-05-23 15:41:13 +02:00
Kamil Śliwak
9618cb947d
download_benchmarks: Script for downloading benchmark results from CircleCI
2022-05-23 14:18:29 +02:00
chriseth
77038aa40e
Update test expectations.
2022-05-23 13:37:50 +02:00
Kamil Śliwak
f08d349791
Separate some inlining tests into pre- and post-homestead
2022-05-23 13:37:50 +02:00
Kamil Śliwak
49d5c0a292
Disable external test cases where Hardhat's heuristics break after relaxing inlining
2022-05-23 13:37:36 +02:00
chriseth
f0e43921f7
Merge pull request #12921 from ethereum/add_event_and_error_selector_fields_on_the_line_of_function_selector_field
...
Adding event and error selector fields
2022-05-23 11:34:13 +02:00
chriseth
2bbc9a1445
Merge pull request #13040 from ethereum/returndatacopyOptimizer
...
Do not remove potentially reverting returndatacopy cases.
2022-05-23 11:32:26 +02:00
Matheus Aguiar
98efb46031
Patches issue https://github.com/euler-xyz/euler-contracts/issues/119 .
...
After issue is resolved, this should be reverted/changed.
2022-05-23 11:26:50 +02:00
Daniel Kirchner
9fa907aac2
Do not remove potentially reverting returndatacopy cases.
2022-05-23 11:01:03 +02:00
chriseth
30335c13ff
Merge pull request #13001 from matheusaaguiar/develop
...
Don't add an empty data slot to ABI-encoded empty strings from storage
2022-05-23 10:56:30 +02:00
nishant-sachdeva
d4c06d2b4e
Adding event and error selector fields on the lines of the function selector fields
2022-05-23 10:49:16 +02:00
Kamil Śliwak
3f4d9cb035
Disable more external tests failing due to Hardhat heuristics
2022-05-20 15:59:57 +02:00
Kamil Śliwak
54c5b3de68
Re-enable the optimized IR preset in all external tests
2022-05-20 14:50:57 +02:00
Daniel Kirchner
953bc9fed2
Merge pull request #12983 from ethereum/hint-via-ir
...
Recommend `via-ir` whenever a stack too deep error is encountered.
2022-05-20 12:26:25 +02:00
Daniel Kirchner
a2f768d29a
Remove empty settings.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
58d21f1e9d
Remove // compileViaYul: also
2022-05-19 20:23:28 +02:00
Daniel Kirchner
788dc6b4c8
Remove canEnableViaYul logic and default to compiling also via yul.
2022-05-19 20:23:28 +02:00
Daniel Kirchner
e93ad30e43
Remove obsolete enforce-via-yul logic and CI run.
2022-05-19 20:23:28 +02:00
nishant-sachdeva
7ff4cab0b9
issue has already been fixed. Adding test cases for confirmation
2022-05-19 15:36:59 +05:30
Matheus Aguiar
33ea6a679d
Fixed bug that added a superfluous empty slot for data when encoding an empty string coming from storage.
...
Added tests covering empty string, uninitialized string, emptry string literal, byte arrays and explicit call to `abi.encode`.
2022-05-18 14:50:26 -03:00
Marenz
0234e2aa6b
lsp.py: Fix broken console reading
2022-05-18 14:54:19 +02:00
Marenz
ca3af4b2a2
LSP: Implement semantic tokens
2022-05-18 14:54:16 +02:00
Kamil Śliwak
1164d1b4dd
Switch ENS external test to master branch
2022-05-17 13:02:12 +02:00
Kamil Śliwak
27e5afa23d
Patch external tests for the override data alignment issue until our patches are accepted upstream
2022-05-17 13:02:12 +02:00
chriseth
dfa0bcf760
More strict override check for data locations.
2022-05-17 13:02:12 +02:00
Kamil Śliwak
adf3eaac9b
gnosis: Update upstream repo URL
2022-05-17 10:57:21 +02:00
Kamil Śliwak
c57bc47060
gnosis: Disable newly added tests broken due to Hardhat heuristics
2022-05-17 10:57:21 +02:00
Kamil Śliwak
91177d74ee
perpetual-pools: Remove the ethers@5.6.1 workaround
2022-05-16 20:52:53 +02:00
Kamil Śliwak
e9f1bd00cc
gnosis: Workaround for problems caused by forcing ethers@5.6.1 in external tests
2022-05-16 20:52:30 +02:00
Kamil Śliwak
3bfb79df0c
gnosis: Workaround for getStorageAt() bug in Hardhat 2.9.5
2022-05-13 19:05:21 +02:00
Daniel Kirchner
12ee9aed50
Merge pull request #13013 from ethereum/revert-disallow-returndatacopy-in-pure-functions
...
Revert "Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions"
2022-05-13 18:52:37 +02:00
Leo Alt
6a126f6ccb
Update tests and hashes for z3 4.8.17
2022-05-13 15:25:10 +02:00
Matheus Aguiar
35661479b6
Revert "Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions"
...
This reverts commit f567eb1fb2
.
Correcting Bugfixes section of Changelog.
2022-05-13 08:35:21 -03:00
Daniel Kirchner
aafda389ea
Merge pull request #12907 from ethereum/calldataReencodeValidationBug
...
Calldatasize-check during ABI encoding from calldata values with nested dynamic arrays.
2022-05-12 17:56:44 +02:00
Daniel Kirchner
352a3c5f4b
Bug list entry, changelog entry and tests.
2022-05-12 13:08:30 +02:00
Leo Alt
cbaba6f913
update tests
2022-05-11 20:02:31 +02:00
Daniel Kirchner
d3a837b340
Bugfix.
2022-05-11 18:17:47 +02:00
Daniel Kirchner
d92ed3fd29
Test case for the buggy behaviour.
2022-05-11 18:17:47 +02:00
Daniel Kirchner
cbf9a4f1ed
Add bogus return to switch.
2022-05-11 13:58:06 +02:00
Kamil Śliwak
0e0d1972f9
Disable non-deterministic counterexamples in some SMT tests
...
- The counterexamples sometimes do appear and the tests fail.
2022-05-10 12:48:01 +02:00
Marenz
893122eb89
lsp.py: Support subdirectories
2022-05-09 14:54:55 +02:00
Marenz
02dfeb5427
lsp.py: Trigger fatal error when importing outside of test dir
2022-05-09 14:22:23 +02:00
Christian Parpart
e8d07772d9
lsp.py: Port to support running on Windows & adapt to changes due to prior merged PR.
...
- lsp.py: Fixes invalid-syntax by Python interpreter on Windows CI (older Python version).
- lsp.py: Savely strip CRLF from right side of the string, ignoring accidental multiple occurrences of \r (such as \r\r\n).
- lsp.py: Fixes reading single character from stdin (wrt. Windows platform).
- lsp.py: Adds header line reading to I/O tracing (useful for debugging).
- lsp.py: When running the tests on Windows, don't care test file content's newlines but simply expect LFs (instead of CRLF for example).
- Apply pylint notes.
- Fixing use of @functools.lru_cache for older python versions (CircleCI Windows)
2022-05-09 11:37:11 +02:00
Christian Parpart
c2f245b40a
Fixes to lsp.py with respect to Windows drive-letter paths in URI.
2022-05-09 11:37:11 +02:00
hrkrshnn
5ae17c8e65
Recommend via-ir
whenever a stack too deep error is encountered.
2022-05-05 19:22:03 +02:00
Leo Alt
201c6c6819
fix smt flaky test
2022-05-05 11:38:16 +02:00
Leo Alt
cba3d18f66
adjust for osx nondeterminism
2022-05-04 19:04:54 +02:00
Leo Alt
4fd7de36f1
update smt tests z3 4.8.16
2022-05-03 14:23:27 +02:00
chriseth
df29ea72f0
Merge pull request #12836 from ethereum/fixUsingGlobal
...
Fix using global with libraries.
2022-05-02 12:41:34 +02:00
chriseth
505fa7763f
Fix checks for "using for ... global" for libraries.
2022-05-02 12:40:56 +02:00
Alexey Shekhirin
cb24e5d545
fix(parser): error for unexpected token
2022-04-29 16:13:04 +04:00
chriseth
d55b84ff63
Merge pull request #12861 from ethereum/disallow-returndatacopy-in-pure-functions
...
Disallow RETURNDATACOPY and RETURNDATASIZE in inline assembly in pure functions
2022-04-28 13:15:04 +02:00
Christian Parpart
fbecdbe76d
Merge pull request #12798 from ethereum/lsp-tests-expectations
...
LSP.py: Implement expectations directly in the test files
2022-04-25 15:27:57 +02:00
Kamil Śliwak
8e085432bb
External test for Brink
2022-04-13 13:43:48 +02:00
Kamil Śliwak
e30d0a6199
externalTests: Allow adding extra settings to presets
2022-04-13 13:43:48 +02:00
Marenz
afd9feead4
LSP.py: Implement simple send/respond framework
2022-04-13 13:22:05 +02:00
Leo Alt
f9fa76c9d3
smt encode call
2022-04-11 12:19:41 +02:00
Joshua Quinones
e1a59397c6
Renamed AssemblyStack to YulStack
...
All files, references, variables, comments, etc. were renamed to YulStack.
2022-04-08 20:28:55 +02:00
Kamil Śliwak
f567eb1fb2
Disallow RETURNDATASIZE and RETURNDATACOPY in inline assembly blocks in pure functions
2022-04-08 14:48:35 +02:00
Kamil Śliwak
fb7c969ce8
Tests for assembly instructions allowed with mutable/view/pure functions
2022-04-08 14:47:32 +02:00
Christian Parpart
e74f03056c
Merge pull request #12283 from ethereum/soltest-graceful-error-handling
...
Graceful error handling in soltest/isoltest + improved soltestAssert()
2022-04-07 13:12:43 +02:00
Daniel Kirchner
52f5ffd876
Merge pull request #12804 from ethereum/benchmark-differ
...
Benchmark differ
2022-04-07 09:24:01 +02:00
Kamil Śliwak
b3048ccf07
Use EXIT_FAILURE and EXIT_SUCCESS constants in exit() and when returning from main()
2022-04-06 22:27:08 +02:00
Kamil Śliwak
7c83559881
soltest: Handle CLI validation errors gracefully
2022-04-06 22:26:21 +02:00
Kamil Śliwak
cf6704ae06
isoltest: Do not return an error code from --help
2022-04-06 22:26:21 +02:00
Kamil Śliwak
7bace8d25d
soltest: Don't assume that parse() can never return false
2022-04-06 22:26:21 +02:00
Kamil Śliwak
ed8403f456
isoltest: Handle parsing errors differently from unexpected exceptions
2022-04-06 22:26:21 +02:00
Kamil Śliwak
0bb885dab2
Bring soltestAssert() up to date with solAssert()
...
- Allow omitting description.
- Provide a default description.
- Use a custom exception type derived from util::Exception rather than std::exception.
2022-04-06 22:26:10 +02:00
Daniel Kirchner
c71d0aec83
Merge pull request #12898 from ethereum/via-ir-equivalence-tests
...
Create split_on_empty_lines_into_numbered_files function in scripts/common.sh
2022-04-06 13:16:24 +02:00
wechman
4d8a34370e
Create split_on_empty_lines_into_numbered_files function in scripts/common.sh
2022-04-06 07:26:18 +02:00
Ryan
3a17274691
Improve error message for static array with size too large
2022-04-05 17:36:37 +02:00
Kamil Śliwak
8c9856c52c
benchmark_diff: Add table mode with support for json, console and markdown output
2022-04-05 15:43:18 +02:00
Kamil Śliwak
ee5e878ad7
benchmark_diff: A Python script for diffing summarized benchmarks from external tests
2022-04-05 15:40:28 +02:00
Damian Wechman
d0bd365d2c
Merge pull request #12179 from akali/pretty-json
...
Set handlers use unified jsonPrint with prettifier if needed
2022-04-05 07:05:53 +02:00
Daniel Kirchner
fd763fa6ad
Merge pull request #12851 from ethereum/via-ir-equivalence-tests
...
Tests for the equivalence of one and two-stage compilation via IR ports multi-file contracts
2022-04-04 20:19:27 +02:00
Aisultan Kali
96376264e8
Set handlers use unified jsonPrint with prettifier if needed
2022-04-04 20:17:11 +02:00
Kamil Śliwak
1bc1f8bdbb
Merge pull request #12835 from dtedesco1/develop
...
Fix MultiSigWallet.sol order of functions
2022-04-04 17:37:28 +02:00
Kamil Śliwak
c06308146a
Merge pull request #12828 from ethereum/errorForUnary
...
Use error message for unary operators.
2022-04-04 17:13:28 +02:00
dtedesco1
2fabb3db8f
attempt rebase, fix free function, fix check errors
2022-04-04 22:49:12 +08:00
Kamil Śliwak
c7222044a2
externalTests.sh: Fix broken ${} syntax in the script
2022-04-04 14:16:42 +02:00
chriseth
755e043a6d
Use error message for unary operators.
2022-04-04 16:53:36 +05:30
wechman
1e7688e8a1
Tests for the equivalence of one and two-stage compilation via IR supports multi-file contracts
2022-04-04 11:09:43 +02:00
Kamil Śliwak
73443c0ada
elementfi: Switch all presets to compile-only
2022-04-01 23:06:21 +02:00
Kamil Śliwak
5ef0048d85
zeppelin: Disable the newly added Polygon-Child test, failing via IR due to Hardhat heuristics
2022-04-01 23:06:21 +02:00
Kamil Śliwak
b445e7e74c
Revert "perpetual-pools: Use Hardhat 2.8.4 to work around @openzeppelin/hardhat-upgrades's problem with parallel compilation on Hardhat 2.9.0"
...
This reverts commit 30008465bf
.
2022-03-28 19:51:46 +02:00
Kamil Śliwak
34c06c27a5
Downgrade ethers.js to 5.6.1 in ens, gnosis, euler, perpetual-pools and uniswap external tests
2022-03-28 17:56:30 +02:00
nishant-sachdeva
4c6066bfad
typeCheckAbiEncodeCallFunction should type check the arguments on functionPointerType->asExternallyCallableFunction instead of teh plain function type
2022-03-24 18:53:46 +05:30
Alexander Arlt
1a0988e503
libevmasm: refactor asm-json export & add support for source list.
2022-03-23 15:58:07 -05:00
Christian Parpart
13a4c79a9b
lsp.py: Adds --fail-fast (-f) to terminate early on first failure.
2022-03-23 17:34:04 +01:00
Marenz
0bf674b442
LSP test: Minor refactoring and better exception reporting
2022-03-21 13:23:02 +01:00
chriseth
430ecb6e16
Merge pull request #12795 from ethereum/morePopRemovalInPeepholeOptimizer
...
More pop removal in peephole optimizer.
2022-03-17 12:22:48 +01:00