Skip to content
This repository has been archived by the owner on Dec 5, 2021. It is now read-only.

[pull] develop from ethereum-optimism:develop #91

Merged
merged 135 commits into from
Jun 23, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
135 commits
Select commit Hold shift + click to select a range
d168005
chore: reduce hardhat timeout to 20 seconds (#968)
maurelian May 28, 2021
245136f
fix: force LF line endings for scripts to avoid docker problems on Wi…
smartcontracts May 28, 2021
b284dc3
refactor[contracts]: Turn ExecutionManagerWrapper into a predeployed …
smartcontracts May 7, 2021
f87a2d0
maintenance[contracts]: use dashes in chain container names (#819)
smartcontracts May 10, 2021
db0dbfb
feat[contracts]: temporarily disable EOA upgrades (#857)
smartcontracts May 13, 2021
2e72fd9
feat[contracts]: Update Lib_AddressManager.AddressSet event to speed …
smartcontracts May 13, 2021
200a083
Reduce gas costs of deposits (#667)
elenadimitrova May 12, 2021
b7f3af2
optimism: bump gaslimit to 10 million #870 (#871)
tynes May 19, 2021
07a6d3e
fix: use correct contract name in tests (#921)
smartcontracts May 19, 2021
6b46c8b
fix: disable upgradability from ECDSA Account (#885)
karlfloersch May 20, 2021
25a5dbd
l2geth: remove `SignatureHashType` (#752)
tynes May 20, 2021
912ab68
feat[contracts]: introduce OVM_GasPriceOracle (#912)
smartcontracts May 20, 2021
4e0461d
fix: configure max gas limit to 11m (#928)
gakonst May 20, 2021
62a6c53
Consolidate Predeploy Addresses (#931)
rajivpo May 25, 2021
e8a95df
chore: remove yarn-error.log and gitignore it (#956)
gakonst May 25, 2021
85da497
feat[contracts]: Replace Lib_RingBuffer with a much simpler Lib_Buffe…
smartcontracts May 25, 2021
95ccef5
fix(contracts): import predeploys (#982)
maurelian May 28, 2021
4e03f8a
feat: add hardhat deploy instructions to readme (#965)
karlfloersch May 29, 2021
a64f816
feat: fees v2 (#976)
tynes May 29, 2021
11a9296
Add static analysis action (#848)
elenadimitrova May 31, 2021
5a79849
build(deps): bump ws from 7.4.4 to 7.4.6 in /ops/docker/hardhat (#987)
dependabot[bot] May 31, 2021
e1d6636
Merge branch 'develop' into regenesis/0.4.0
smartcontracts Jun 1, 2021
c4c7bea
fix[l2geth]: fix accidental merge conflict (#994)
smartcontracts Jun 1, 2021
86708bb
feat[message-relayer]: relay tx generator (#952)
smartcontracts Jun 1, 2021
1293825
backwards compatible dtl syncing (#986)
tynes Jun 1, 2021
5e3c5d1
fix[smock]: fix broken call assertions for overloaded functions (#996)
smartcontracts Jun 2, 2021
e410362
Merge branch 'develop' into regenesis/0.4.0
smartcontracts Jun 2, 2021
a41311c
fix[message-relayer]: fix failing test because of merge with develop …
smartcontracts Jun 2, 2021
064c03a
fix[message-relayer]: remove spreadsheet mode (#998)
smartcontracts Jun 2, 2021
8082d16
Lower local rollup timestamp refresh (#985)
K-Ho Jun 2, 2021
c2b6e14
feat: fees v3 (#999)
tynes Jun 2, 2021
750a502
fix: remove dead coders (#1001)
tynes Jun 2, 2021
9d39121
docs[message-relayer]: add a README and improve the interface for gen…
smartcontracts Jun 2, 2021
e52ccd9
dtl: log error stack for failed http request (#995)
tynes Jun 2, 2021
a02392b
Add rpc-proxy service for whitelisting JSON RPC methods to the sequen…
optimisticben Jun 2, 2021
e29fab1
Pass additional information across domains via token gateways (#824)
maurelian Jun 2, 2021
7f5936a
More consistent style for Constant values (#991)
maurelian Jun 2, 2021
8e2bfd0
feat: deployment config for fee oracle contract (#936)
karlfloersch Jun 2, 2021
b355be0
ops: expose debug namespace (#1007)
tynes Jun 2, 2021
1d91ac6
Merge branch 'develop' into regenesis/0.4.0
tynes Jun 2, 2021
c54de60
develop merge fixes
tynes Jun 2, 2021
0887367
refactor[l2geth]: queue origin type (#975)
karlfloersch Jun 2, 2021
5e4eaea
fix(sync-service): prevent underflows (#1015)
gakonst Jun 3, 2021
d2ad599
test: remove duplicate value in array (#1014)
snario Jun 3, 2021
1c1e405
ci: tag docker image for canary with abbreviated GITHUB_SHA (#1006)
snario Jun 3, 2021
55ee461
refactor: improve logging for transactions being submitted to chain w…
snario Jun 3, 2021
8fee7be
dtl: remove stringify from db logic + more overflow protection (#1010)
tynes Jun 3, 2021
ed9fc79
ci: upload logs for failed integration tests (#1020)
snario Jun 4, 2021
8ac4c74
fix(dtl): improve slow blocking JSON parsing that occurs during l2 sy…
timmyers Jun 4, 2021
e3dc90c
fix: lint errors in dtl (#1025)
karlfloersch Jun 6, 2021
a75f05b
fix[dtl]: fix dtl bug breaking verifiers (#1011)
smartcontracts Jun 7, 2021
cb4a928
fix: deterministic blockhashes (#1032)
tynes Jun 8, 2021
0cbaa9a
Version Packages (#978)
github-actions[bot] Jun 8, 2021
958477b
ci: add sync test's own workflow (#1031)
annieke Jun 8, 2021
1b69241
fix(dtl): incorrect parsing of eth_getBlockRange result (#1037)
timmyers Jun 8, 2021
0c18e19
Version Packages (#1045)
github-actions[bot] Jun 8, 2021
0a7f5a4
fix: no gas refund (#1043)
tynes Jun 9, 2021
014dea7
refactor[contracts]: remove one-off GasPriceOracle deployment file (#…
smartcontracts Jun 9, 2021
baacda3
feat[contracts]: introduce new L1ChugSplashProxy contract (#1009)
smartcontracts Jun 9, 2021
e045f58
feat[contracts]: add sequencer fee wallet (#1029)
smartcontracts Jun 9, 2021
859437f
build(deps): bump glob-parent from 5.1.1 to 5.1.2 (#1036)
dependabot[bot] Jun 9, 2021
01646a0
fix: predeploy gasprice oracle (#1039)
tynes Jun 9, 2021
989a302
l2geth: optimize loops (#1027)
tynes Jun 9, 2021
c451060
Enable custom tagging of release docker image (#1048)
snario Jun 9, 2021
f03bb3e
ci: fix indentation issue of canary workflow
snario Jun 9, 2021
85d5ce1
ci: fix typo with GITHUB_SHA
snario Jun 9, 2021
cc74271
fix: typo in USE_HARDHAT config (#1023)
karlfloersch Jun 9, 2021
c2a0489
fix: abi encoded tx (#1049)
tynes Jun 10, 2021
cc6c7f0
l2geth: bump to go 1.15 (#1058)
tynes Jun 10, 2021
98b7839
Change monotonicity band-aid code to log warnings not errors (#1060)
snario Jun 10, 2021
e04de62
feat(contracts, l2geth): native ETH value support for ovmCALL (#1038)
ben-chain Jun 10, 2021
630d4ed
Merge remote-tracking branch 'origin' into regenesis/0.4.0
karlfloersch Jun 11, 2021
25f09ab
Add erc1271 support to contract account (#1052)
K-Ho Jun 11, 2021
48ece14
feat[contracts]: slightly better account funding for hardhat accounts…
K-Ho Jun 11, 2021
baa3b76
Ensure Sentry is correctly set up for DTL and MR (#1054)
snario Jun 11, 2021
85362d4
Add more logging information to monotonicity violation logs (#1066)
snario Jun 11, 2021
ed088ee
temporarily disable hardhat example tests (#1071)
smartcontracts Jun 11, 2021
c520100
fix: monotonicity auto healer (#1070)
karlfloersch Jun 11, 2021
e389ba1
Version Packages (#1053)
github-actions[bot] Jun 11, 2021
5fc728d
Standard token bridge (#988)
elenadimitrova Jun 12, 2021
6d7b12b
fix: comment out codeowners (#1073)
smartcontracts Jun 13, 2021
3c2c32e
fix: use predeploy constant lib for em wrapper (#1075)
smartcontracts Jun 14, 2021
f409ce7
fix[l2geth]: off-by-one sometimes breaking replica sync (#1082)
smartcontracts Jun 14, 2021
d9fd67d
fix(l2geth): Log 'end of OVM execution' correctly (#1080)
maurelian Jun 14, 2021
38355a3
refactor[contracts]: move account contracts to predeploy folder (#1085)
smartcontracts Jun 15, 2021
ef0df81
maintenance[contracts]: rename precompiles test folder to predeploys …
smartcontracts Jun 15, 2021
7cce55a
fix[bs]: disambiguate generic submission errors (#1051)
annieke Jun 15, 2021
c43b33e
WETH deposit and withdraw on OVM_ETH (#1083)
K-Ho Jun 15, 2021
a0d9e56
Also move the accounts interface to iOVM/predeploys (#1087)
maurelian Jun 15, 2021
2378711
Version Packages (#1089)
github-actions[bot] Jun 15, 2021
1424370
fix: use -z flag for var unset in canary
snario Jun 15, 2021
38c7e5a
Merge branch 'develop' into regenesis/0.4.0
tynes Jun 15, 2021
c87e4c7
Use Eslint instead of Tslint (#1005)
rajivpo Jun 15, 2021
52d02b1
metrics[batch-submitter]: add new batch submitter metrics (#1074)
annieke Jun 15, 2021
6c1627f
Fix canary publishing (#1093)
snario Jun 15, 2021
aba77c0
feat[ci]: upload logs for sync tests if failure (#1098)
annieke Jun 15, 2021
26bc63a
deploy: goerli 0.4.0 (#1099)
tynes Jun 15, 2021
0b91df4
fix[dtl]: defend against RPC provider missing events (#1084)
smartcontracts Jun 16, 2021
2bd4973
deploy: kovan v.4.0 rc (#1101)
tynes Jun 16, 2021
b74b052
maintenance[monorepo]: first pass update to README (#1106)
smartcontracts Jun 16, 2021
5c89c45
Move the metric prefix string to a label (#1047)
optimisticben Jun 17, 2021
71349a4
fix[smock]: add support for hardhat 2.4.0 (#1112)
smartcontracts Jun 17, 2021
3c6c99b
build(deps): bump hosted-git-info from 2.8.8 to 2.8.9 (#1064)
dependabot[bot] Jun 18, 2021
cd1cfd4
Merge branch 'develop' into regenesis/0.4.0
karlfloersch Jun 18, 2021
3b60ea6
Misc. small improvements to README (#1115)
smartcontracts Jun 18, 2021
a415d01
fix[dtl]: use the same L2 chain ID everywhere (#1122)
smartcontracts Jun 18, 2021
f9bacd7
fix: make sync tests only on workflow dispatch (#1123)
annieke Jun 21, 2021
3282be2
Merge branch 'develop' into regenesis/0.4.0
tynes Jun 21, 2021
ca7d65d
fix[dtl]: remove old stringification function (#1134)
smartcontracts Jun 21, 2021
16f6815
fix[dtl]: log server errors as ERROR instead of INFO (#1133)
smartcontracts Jun 21, 2021
57ca21a
Contracts: connectL1Contracts & connectL2Contracts (#713)
gigamesh Jun 21, 2021
257deb7
fix: prevent overflow in abi encoding (#1135)
tynes Jun 21, 2021
b8e2d68
tests: replica syncing (#981)
annieke Jun 21, 2021
735cd78
fix[relayer]: update exported files list in package.json (#1138)
smartcontracts Jun 21, 2021
5ae256f
Merge branch 'develop' into regenesis/0.4.0
tynes Jun 21, 2021
dd8edc7
fix: import path (#1141)
tynes Jun 21, 2021
31f517a
refactor: improve logging for batch submission timeout scenarios (#1120)
snario Jun 21, 2021
29431d6
Add highest L1 and L2 block number Gauge metrics to DTL (#1125)
snario Jun 22, 2021
df5ff89
Improve Watcher ability to find transactions (#1107)
rajivpo Jun 22, 2021
017d323
Add minimal vscode settings and extensions (#1109)
maurelian Jun 22, 2021
fa29b03
fix[contracts]: remove part of MultiMessageRelayer deployment (#1144)
smartcontracts Jun 22, 2021
8582fc1
Define L1 Starting block via OwnershipTransferred rather than Address…
CAPtheorem Jun 22, 2021
d9644c3
Easy fix for broken watchers (#1121)
eternauta1337 Jun 22, 2021
42decb6
feat: go packages (#1111)
tynes Jun 22, 2021
6ad1dcb
Merge branch 'develop' into regenesis/0.4.0
snario Jun 22, 2021
f434379
Merge pull request #993 from ethereum-optimism/regenesis/0.4.0
snario Jun 22, 2021
264ee54
Version Packages (#1094)
github-actions[bot] Jun 22, 2021
588058f
build: add husky pre-commit hook to lint (#1146)
snario Jun 22, 2021
0cd3259
feat[contracts]: add mainnet deploy script (#1147)
karlfloersch Jun 22, 2021
98e02cf
feat: mainnet contract deployment 0.4.0 (#1148)
tynes Jun 23, 2021
40b99a6
feat: `rollup gasPrices` RPC endpoint (#1136)
tynes Jun 23, 2021
0112650
Adds l2 standard bridge to contracts markdown file (#1151)
gigamesh Jun 23, 2021
095ce8c
Version Packages (#1150)
github-actions[bot] Jun 23, 2021
0c98b04
Add more info about our branching strategy to the README (#1114)
smartcontracts Jun 23, 2021
e6e85a6
Remove references to OVM_L1ETHGateway in deployments and readme (#1119)
elenadimitrova Jun 23, 2021
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
  •  
  •  
  •  
5 changes: 0 additions & 5 deletions .changeset/chilled-books-grab.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/dull-fishes-type.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/neat-melons-lie.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/nervous-bobcats-grow.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/unlucky-shoes-bake.md

This file was deleted.

186 changes: 186 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,186 @@
module.exports = {
"env": {
"browser": true,
"es6": true
},
"extends": [
"prettier",
],
"ignorePatterns": ["dist/**/*.ts"],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"project": "tsconfig.json",
"sourceType": "module"
},
"plugins": [
"eslint-plugin-import",
"eslint-plugin-unicorn",
"eslint-plugin-jsdoc",
"eslint-plugin-prefer-arrow",
"eslint-plugin-react",
"@typescript-eslint",
],
"rules": {
"@typescript-eslint/adjacent-overload-signatures": "error",
"@typescript-eslint/array-type": "off",
"@typescript-eslint/ban-types": "off",
"@typescript-eslint/consistent-type-assertions": "error",
"@typescript-eslint/dot-notation": "off",
"@typescript-eslint/indent": "off",
"@typescript-eslint/member-delimiter-style": [
"off",
{
"multiline": {
"delimiter": "none",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@typescript-eslint/member-ordering": "off",
"@typescript-eslint/naming-convention": "off",
"@typescript-eslint/no-empty-function": "error",
"@typescript-eslint/no-empty-interface": "off",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-misused-new": "error",
"@typescript-eslint/no-namespace": "error",
"@typescript-eslint/no-parameter-properties": "off",
"@typescript-eslint/no-shadow": [
"error",
{
"hoist": "all"
}
],
"@typescript-eslint/no-this-alias": "error",
"@typescript-eslint/no-unused-expressions": "off",
"@typescript-eslint/no-use-before-define": "off",
"@typescript-eslint/no-var-requires": "error",
"@typescript-eslint/prefer-for-of": "error",
"@typescript-eslint/prefer-function-type": "error",
"@typescript-eslint/prefer-namespace-keyword": "error",
"@typescript-eslint/quotes": "off",
"@typescript-eslint/semi": [
"off",
null
],
"@typescript-eslint/triple-slash-reference": [
"error",
{
"path": "always",
"types": "prefer-import",
"lib": "always"
}
],
"@typescript-eslint/type-annotation-spacing": "off",
"@typescript-eslint/unified-signatures": "error",
"arrow-parens": [
"off",
"always"
],
"brace-style": [
"off",
"off"
],
"comma-dangle": "off",
"complexity": "off",
"constructor-super": "error",
"curly": "error",
"dot-notation": "off",
"eol-last": "off",
"eqeqeq": [
"error",
"smart"
],
"guard-for-in": "error",
"id-blacklist": "off",
"id-match": "off",
"import/no-extraneous-dependencies": [
"error"
],
"import/no-internal-modules": "off",
"import/order": "off",
"indent": "off",
"jsdoc/check-alignment": "error",
"jsdoc/check-indentation": "error",
"jsdoc/newline-after-description": "error",
"linebreak-style": "off",
"max-classes-per-file": "off",
"max-len": "off",
"new-parens": "off",
"newline-per-chained-call": "off",
"no-bitwise": "off",
"no-caller": "error",
"no-cond-assign": "error",
"no-console": "off",
"no-debugger": "error",
"no-duplicate-case": "error",
"no-duplicate-imports": "error",
"no-empty": "error",
"no-eval": "error",
"no-extra-bind": "error",
"no-extra-semi": "off",
"no-fallthrough": "off",
"no-invalid-this": "off",
"no-irregular-whitespace": "off",
"no-multiple-empty-lines": "off",
"no-new-func": "error",
"no-new-wrappers": "error",
"no-redeclare": "error",
"no-return-await": "error",
"no-sequences": "error",
"no-sparse-arrays": "error",
"no-template-curly-in-string": "error",
"no-throw-literal": "error",
"no-trailing-spaces": "off",
"no-undef-init": "error",
"no-underscore-dangle": "off",
"no-unsafe-finally": "error",
"no-unused-expressions": "off",
"no-unused-labels": "error",
"no-use-before-define": "off",
"no-var": "error",
"object-shorthand": "error",
"one-var": [
"error",
"never"
],
"padded-blocks": [
"off",
{
"blocks": "never"
},
{
"allowSingleLineBlocks": true
}
],
"prefer-arrow/prefer-arrow-functions": "error",
"prefer-const": "error",
"prefer-object-spread": "error",
"quote-props": "off",
"quotes": "off",
"radix": "error",
"react/jsx-curly-spacing": "off",
"react/jsx-equals-spacing": "off",
"react/jsx-tag-spacing": [
"off",
{
"afterOpening": "allow",
"closingSlash": "allow"
}
],
"react/jsx-wrap-multilines": "off",
"semi": "off",
"space-before-blocks": "error",
"space-before-function-paren": "off",
"space-in-parens": [
"off",
"never"
],
"unicorn/prefer-ternary": "off",
"use-isnan": "error",
"valid-typeof": "off"
}
};
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
*.sh text eol=lf
32 changes: 18 additions & 14 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
l2geth/ @smartcontracts @tynes @karlfloersch
packages/specs/l2geth/ @smartcontracts @tynes @karlfloersch
packages/contracts/ @smartcontracts @ben-chain @maurelian @elenadimitrova
packages/specs/protocol/ @smartcontracts @ben-chain @maurelian
ops/ @tynes @karlfloersch
packages/hardhat-ovm/ @smartcontracts
packages/smock/ @smartcontracts @maurelian
packages/core-utils/ @smartcontracts @annieke @ben-chain
packages/common-ts/ @annieke
packages/core-utils/src/watcher.ts @K-Ho
packages/message-relayer/ @K-Ho
packages/batch-submitter/ @annieke @karlfloersch
packages/data-transport-layer/ @annieke
integration-tests/ @tynes
# CODEOWNERS can be disruptive because it automatically requests review from individuals across the
# board. We still like to use this file to track who's working on what, but all lines are commented
# out so that GitHub won't trigger review requests.

# l2geth/ @smartcontracts @tynes @karlfloersch
# packages/specs/l2geth/ @smartcontracts @tynes @karlfloersch
# packages/contracts/ @smartcontracts @ben-chain @maurelian @elenadimitrova
# packages/specs/protocol/ @smartcontracts @ben-chain @maurelian
# ops/ @tynes @karlfloersch
# packages/hardhat-ovm/ @smartcontracts
# packages/smock/ @smartcontracts @maurelian
# packages/core-utils/ @smartcontracts @annieke @ben-chain
# packages/common-ts/ @annieke
# packages/core-utils/src/watcher.ts @K-Ho
# packages/message-relayer/ @K-Ho
# packages/batch-submitter/ @annieke @karlfloersch
# packages/data-transport-layer/ @annieke
# integration-tests/ @tynes
54 changes: 36 additions & 18 deletions .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,18 +45,18 @@ jobs:
run: docker-compose run integration_tests

# Examples Tests
- name: Test & deploy hardhat-example on Ethereum (regression)
working-directory: ./examples/hardhat
run: |
yarn
yarn deploy
yarn test:integration
# - name: Test & deploy hardhat-example on Ethereum (regression)
# working-directory: ./examples/hardhat
# run: |
# yarn
# yarn deploy
# yarn test:integration

- name: Test & deploy hardhat-example on Optimistic Ethereum
working-directory: ./examples/hardhat
run: |
yarn deploy:ovm
yarn test:integration:ovm
# - name: Test & deploy hardhat-example on Optimistic Ethereum
# working-directory: ./examples/hardhat
# run: |
# yarn deploy:ovm
# yarn test:integration:ovm

- name: Test & deploy waffle-example on Ethereum (regression)
working-directory: ./examples/waffle
Expand Down Expand Up @@ -86,10 +86,28 @@ jobs:
yarn test:integration:ovm
yarn deploy:ovm

- name: Test l1-l2-deposit-withdrawal example on Optimistic Ethereum with cross-domain message passing
working-directory: ./examples/l1-l2-deposit-withdrawal
run: |
yarn
yarn compile
yarn compile:ovm
yarn test:integration:ovm
# - name: Test l1-l2-deposit-withdrawal example on Optimistic Ethereum with cross-domain message passing
# working-directory: ./examples/l1-l2-deposit-withdrawal
# run: |
# yarn
# yarn compile
# yarn compile:ovm
# yarn test:integration:ovm

- name: Collect docker logs on failure
if: failure()
uses: jwalton/gh-docker-logs@v1
with:
images: 'ethereumoptimism/builder,ethereumoptimism/hardhat,ethereumoptimism/deployer,ethereumoptimism/data-transport-layer,ethereumoptimism/l2geth,ethereumoptimism/message-relayer,ethereumoptimism/batch-submitter,ethereumoptimism/l2geth,ethereumoptimism/integration-tests'
dest: './logs'

- name: Tar logs
if: failure()
run: tar cvzf ./logs.tgz ./logs

- name: Upload logs to GitHub
if: failure()
uses: actions/upload-artifact@master
with:
name: logs.tgz
path: ./logs.tgz
Loading