Skip to content

Commit 9495316

Browse files
authored
Merge pull request #1596 from matter-labs/zk/zksync-os-stable-v29
feat: add v29 to zksync os
2 parents c796928 + c0c232f commit 9495316

File tree

416 files changed

+15808
-6012
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

416 files changed

+15808
-6012
lines changed

.github/workflows/dead-links.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@ jobs:
1919
- name: Find and check markdown files
2020
run: |
2121
GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}
22-
find . -type f -name "*.md" ! -path "*/node_modules/*" ! -path "*/openzeppelin*" ! -path "*/murky/*" -exec lychee --github-token $GITHUB_TOKEN {} +
22+
find . -type f -name "*.md" ! -path "*/node_modules/*" ! -path "*/openzeppelin*" ! -path "*/murky/*" -exec lychee --max-concurrency 1 --cache --retry-wait-time 10 --exclude-path .lycheeignore --github-token $GITHUB_TOKEN {} +

.github/workflows/l1-contracts-ci.yaml

Lines changed: 20 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
- name: Install foundry-zksync
2222
run: |
2323
mkdir ./foundry-zksync
24-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
24+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
2525
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
2626
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
2727
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -57,7 +57,7 @@ jobs:
5757
yarn build:foundry
5858
5959
- name: Create cache
60-
uses: actions/cache/save@v3
60+
uses: actions/cache/save@v4
6161
with:
6262
key: artifacts-l1-${{ github.sha }}
6363
path: |
@@ -149,7 +149,7 @@ jobs:
149149
- name: Install foundry-zksync
150150
run: |
151151
mkdir ./foundry-zksync
152-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
152+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
153153
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
154154
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
155155
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -173,7 +173,12 @@ jobs:
173173
174174
- name: Run tests
175175
working-directory: ./l1-contracts
176-
run: FOUNDRY_PROFILE=default yarn test:foundry
176+
run: yarn test:foundry
177+
178+
# TODO: restore once we can get back to latest foundry
179+
# - name: Check gas snapshots
180+
# working-directory: ./l1-contracts
181+
# run: forge test --match-test MeasureGas --gas-snapshot-check=true
177182

178183
test-foundry-zksync:
179184
needs: [build, lint]
@@ -194,7 +199,7 @@ jobs:
194199
- name: Install foundry-zksync
195200
run: |
196201
mkdir ./foundry-zksync
197-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
202+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
198203
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
199204
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
200205
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -221,7 +226,7 @@ jobs:
221226
222227
- name: Run tests
223228
working-directory: ./l1-contracts
224-
run: FOUNDRY_PROFILE=default yarn test:zkfoundry
229+
run: yarn test:zkfoundry
225230

226231
check-verifier-generator-l1:
227232
runs-on: ubuntu-latest
@@ -280,7 +285,6 @@ jobs:
280285
run: diff tools/data/VerifierFflonk.sol l1-contracts/contracts/state-transition/verifiers/L2VerifierFflonk.sol
281286

282287
coverage:
283-
if: false # FIXME: coverage disabled due to stack-too-deep in VerifierFflonk.sol
284288
defaults:
285289
run:
286290
working-directory: l1-contracts
@@ -302,7 +306,7 @@ jobs:
302306
- name: Install foundry-zksync
303307
run: |
304308
mkdir ./foundry-zksync
305-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
309+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
306310
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
307311
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
308312
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -325,7 +329,7 @@ jobs:
325329
system-contracts/zkout
326330
327331
- name: Run coverage
328-
run: FOUNDRY_PROFILE=default yarn test:foundry && FOUNDRY_PROFILE=default yarn coverage:foundry --report summary --report lcov
332+
run: yarn test:foundry && yarn coverage:foundry --report summary --report lcov
329333

330334
# Installing the specific version of `lcov` because of
331335
# the `genhtml: ERROR: line ... of ... has branchcov but no linecov data` error.
@@ -336,15 +340,15 @@ jobs:
336340
ref: v1.16
337341

338342
# To ignore coverage for certain directories modify the paths in this step as needed. The
339-
# below default ignores coverage results for the test and script directories. Alternatively,
340-
# to include coverage in all directories, comment out this step. Note that because this
341-
# filtering applies to the lcov file, the summary table generated in the previous step will
342-
# still include all files and directories.
343-
# The `--rc branch_coverage=1` part keeps branch info in the filtered report, since lcov
344-
# defaults to removing branch info.
343+
# below default ignores coverage results for the test and script directories. It also ignores
344+
# the ChainRegistrar contract since it is unused. Alternatively, to include coverage in all
345+
# directories, comment out this step. Note that because this filtering applies to the lcov
346+
# file, the summary table generated in the previous step will still include all files and
347+
# directories. The `--rc branch_coverage=1` part keeps branch info in the filtered report,
348+
# since lcov defaults to removing branch info.
345349
- name: Filter directories
346350
run: |
347-
lcov --ignore-errors unused --remove lcov.info 'test/*' 'contracts/dev-contracts/*' 'lib/*' '../lib/*' 'lib/' 'deploy-scripts/*' --output-file lcov.info --rc branch_coverage=1
351+
lcov --ignore-errors unused --remove lcov.info 'test/*' 'contracts/dev-contracts/*' 'lib/*' '../lib/*' 'lib/' 'deploy-scripts/*' 'contracts/chain-registrar/ChainRegistrar.sol' --output-file lcov.info --rc branch_coverage=1
348352
349353
# This step posts a detailed coverage report as a comment and deletes previous comments on
350354
# each push. The below step is used to fail coverage if the specified coverage threshold is

.github/workflows/l1-contracts-foundry-ci.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- name: Install foundry-zksync
2020
run: |
2121
mkdir ./foundry-zksync
22-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
22+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
2323
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
2424
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
2525
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -46,7 +46,7 @@ jobs:
4646
run: yarn da build:foundry
4747

4848
- name: Create cache
49-
uses: actions/cache/save@v3
49+
uses: actions/cache/save@v4
5050
with:
5151
key: artifacts-l1-contracts-foudry-${{ github.sha }}
5252
path: |

.github/workflows/l2-contracts-ci.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
- name: Install foundry-zksync
1717
run: |
1818
mkdir ./foundry-zksync
19-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
19+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
2020
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
2121
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
2222
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -44,7 +44,7 @@ jobs:
4444
run: yarn sc build:foundry
4545

4646
- name: Create cache
47-
uses: actions/cache/save@v3
47+
uses: actions/cache/save@v4
4848
with:
4949
key: artifacts-l1-${{ github.sha }}
5050
path: |
@@ -109,7 +109,7 @@ jobs:
109109
- name: Install foundry-zksync
110110
run: |
111111
mkdir ./foundry-zksync
112-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-27360d4c8d12beddbb730dae07ad33a206b38f4b/foundry_nightly_linux_amd64.tar.gz
112+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
113113
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
114114
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
115115
echo "$PWD/foundry-zksync" >> $GITHUB_PATH

.github/workflows/system-contracts-ci.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
- name: Install foundry-zksync
1717
run: |
1818
mkdir ./foundry-zksync
19-
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-5353a10345187933527fbad213d8c4f6500a775c/foundry_nightly_linux_amd64.tar.gz
19+
curl -LO https://github.com/matter-labs/foundry-zksync/releases/download/nightly-ae913af65381734ad46c044a9495b67310bc77c4/foundry_nightly_linux_amd64.tar.gz
2020
tar zxf foundry_nightly_linux_amd64.tar.gz -C ./foundry-zksync
2121
chmod +x ./foundry-zksync/forge ./foundry-zksync/cast
2222
echo "$PWD/foundry-zksync" >> $GITHUB_PATH
@@ -43,7 +43,7 @@ jobs:
4343
yarn build:foundry
4444
4545
- name: Create cache
46-
uses: actions/cache/save@v3
46+
uses: actions/cache/save@v4
4747
with:
4848
key: artifacts-system-${{ github.sha }}
4949
path: |
@@ -126,7 +126,7 @@ jobs:
126126
uses: dutterbutter/[email protected]
127127
with:
128128
mode: run
129-
releaseTag: aa7f1aa
129+
releaseTag: v0.6.1
130130
protocolVersion: 28
131131
emulateEvm: true
132132

.lycheeignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
https://zksync.mirror.xyz/
2+

.solhint.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@
44
"avoid-call-value": "error",
55
"avoid-low-level-calls": "off",
66
"avoid-sha3": "error",
7+
"avoid-tx-origin": "off",
78
"check-send-result": "error",
89
"compiler-version": ["error", "^0.8.0"],
910
"const-name-snakecase": "off",
10-
"contract-name-camelcase": "off",
11+
"contract-name-capwords": "off",
1112
"gas-calldata-parameters": "error",
1213
"gas-custom-errors": "error",
1314
"gas-increment-by-one": "error",

.solhintignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ l1-contracts/node_modules
99
l1-contracts/contracts/dev-contracts
1010
l1-contracts/test
1111
l1-contracts/deploy-scripts
12+
!l1-contracts/deploy-scripts/DeployL1.s.sol
13+
!l1-contracts/deploy-scripts/DeployUtils.s.sol
1214

1315
# l1-contracts-foundry
1416
l1-contracts-foundry/cache

0 commit comments

Comments
 (0)