Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
0fad3bf
fix: skip gas estimation on zkSync due to signer requirement
mortezashojaei Jan 20, 2025
de267f5
feat: add technical stack-aware ISM factory deployment with static ad…
mortezashojaei Jan 20, 2025
d576f7e
feat: Add technical stack compatibility check for ISM deployment
mortezashojaei Jan 20, 2025
619e165
docs(changeset): Check for ZKSync contracts and functionalities support
mortezashojaei Jan 20, 2025
fd2ef51
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 21, 2025
d7d7171
Merge remote-tracking branch 'origin/main' into feat/zksync-compatibi…
ljankovic-txfusion Jan 23, 2025
4040fa5
Merge remote-tracking branch 'origin/main' into feat/zksync-compatibi…
ljankovic-txfusion Jan 23, 2025
8b0a49e
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 23, 2025
a5ee211
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 23, 2025
233e950
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 23, 2025
52fe803
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 24, 2025
f6cc068
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 27, 2025
2d6a7dc
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 27, 2025
f35fa92
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 27, 2025
1bd7514
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 29, 2025
8a32f10
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Jan 29, 2025
5d40bb1
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Feb 3, 2025
dab4fd7
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Mar 12, 2025
3c3bebd
chore: update Solidity version in zk-hardhat.config.cts to 0.8.22
ljankovic-txfusion Mar 12, 2025
329245c
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Mar 12, 2025
a70befc
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Mar 18, 2025
50b4d32
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Mar 26, 2025
b2adbba
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 1, 2025
3ebbee1
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 2, 2025
f0861ce
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 2, 2025
0a89e50
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 2, 2025
ce2a4a0
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 4, 2025
84b1cc5
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 8, 2025
6b5d7d8
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 11, 2025
f5e6ece
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 14, 2025
a0f27bf
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 14, 2025
6da082e
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 15, 2025
e1ac233
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 17, 2025
c14248c
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 22, 2025
09ab3b8
refactor: reorganize ISM utility exports and add isStaticIsm function
ljankovic-txfusion Apr 22, 2025
4a0592f
feat: add isHookCompatible function to check hook type compatibility …
ljankovic-txfusion Apr 22, 2025
69d08ce
refactor: move isHookCompatible function to a new file and update ISM…
ljankovic-txfusion Apr 22, 2025
4d46d5c
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 28, 2025
99fb21b
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion Apr 29, 2025
6ed0232
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion May 2, 2025
13abf18
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion May 2, 2025
69949a6
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
ljankovic-txfusion May 20, 2025
1a597e9
chore: evm e2e with new submitter (#6196)
daniel-savu May 20, 2025
2faf54e
fix: storage diff-check (#6290)
paulbalaji May 20, 2025
d03a8ff
chore: depot docker recommendations (#6258)
paulbalaji May 21, 2025
7aae0ec
feat: setup turborepo (#3899)
paulbalaji May 21, 2025
ac13dde
chore: add cosmos native core cli commands (#6263)
troykessler May 21, 2025
33f88c2
feat(relayer): optimize ccip-read initialization (#6299)
daniel-savu May 21, 2025
0c4037f
fix: require ssl for connection (#6285)
Mo-Hussain May 21, 2025
61cc963
fix: priority gas price overpayments (#6295)
daniel-savu May 21, 2025
5840ad1
chore: update monitor image to include new token standard handling (#…
Mo-Hussain May 21, 2025
db5744e
fix: token metadata handling (#6175)
christopherbrumm May 21, 2025
1c01a4f
fix: Scraper: Fix issue with missing enum invariant for Sealevel (#6298)
ameten May 21, 2025
197fd87
chore: new relayer image (#6304)
daniel-savu May 21, 2025
689ed7c
chore: reduce release-e2e-matrix frequency (#6296)
paulbalaji May 21, 2025
89a7c6f
fix(submitter): Fix transaction fields (#6306)
ameten May 21, 2025
e67cb5f
chore: Upgrade Scraper to latest (#6307)
ameten May 21, 2025
ec1ba92
chore: add `sol`, `ufd`, `fartcoin`& `pengu` (#6249)
christopherbrumm May 21, 2025
6a7feaa
Merge branch 'main' into feat/zksync-verification-classes
mshojaei-txfusion May 22, 2025
f41f766
feat: yaml sorting eslint plugin (#5909)
mshojaei-txfusion May 22, 2025
754f7ba
fix: disable cosmos signers for now (#6309)
troykessler May 22, 2025
4cb0f8f
chore: add routing ism to cosmos native ism module (#6264)
troykessler May 22, 2025
86a8502
chore: change extractPrivateKey info logs to debug logs (#6310)
paulbalaji May 22, 2025
72db0fc
chore: migrate to workspace dependency syntax (#6308)
antigremlin May 22, 2025
67e280d
chore: disable arthera (#6313)
paulbalaji May 22, 2025
2fe1ee8
Merge remote-tracking branch 'origin/feat/zksync-verification-classes…
mshojaei-txfusion May 22, 2025
7d5c6b4
chore: share tsconfig.json from a package (#6314)
antigremlin May 22, 2025
9cc195f
fix: Make Solana testnet chunk same as for mainnet (#6311)
ameten May 22, 2025
a1aeb05
feat: may 18 multisig batch (#6259)
paulbalaji May 22, 2025
6e86efa
feat: agent-specific rpc consensus defaults (#6316)
daniel-savu May 22, 2025
c42ea09
feat: may 21 testnet batch (#6300)
paulbalaji May 22, 2025
99e645f
feat: may 20 svm multisig batch (#6283)
paulbalaji May 22, 2025
1838a32
chore: trigger release PR testing automatically (#6318)
paulbalaji May 22, 2025
711ec32
Version Packages (#6302)
github-actions[bot] May 22, 2025
cd510d4
feat: publish with github-hosted runner (#6319)
paulbalaji May 22, 2025
a1635bd
feat: update warp init to generate config with new warp route id (#6230)
ltyu May 22, 2025
ba4deea
Revert "chore: migrate to workspace dependency syntax (#6308)" (#6326)
paulbalaji May 23, 2025
28e19ad
Version Packages (#6327)
github-actions[bot] May 23, 2025
9711466
Merge branch 'main' into feat/zksync-compatibility-check
mshojaei-txfusion May 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/honest-readers-lick.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@hyperlane-xyz/sdk': minor
---

Check for ZKSync contracts and functionalities support
53 changes: 44 additions & 9 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,22 @@ on:

concurrency: ${{ github.workflow }}-${{ github.ref }}

env:
LOG_FORMAT: PRETTY
TURBO_TELEMETRY_DISABLED: 1
TURBO_API: https://cache.depot.dev
TURBO_TOKEN: ${{ secrets.DEPOT_TURBO_TOKEN }}
TURBO_TEAM: ${{ secrets.DEPOT_ORG_ID }}

jobs:
# This job prepares the release by creating or updating a release PR.
# Notice the omission of the `publish` flag in the changesets action.
prepare-release:
outputs:
hasChangesets: ${{ steps.changesets.outputs.hasChangesets }}
permissions:
id-token: write
contents: write
pull-requests: write
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand All @@ -46,15 +51,45 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

# The release PR removes individual changesets to prepare for a release.
# This means that once the release PR is merged, there are no changesets left.
# When there are no changesets left, we can run the cli-install-cross-platform-release-test
# workflow to verify that the CLI installs correctly on all platforms.
check-latest-published:
runs-on: ubuntu-latest
outputs:
all_latest: ${{ steps.check.outputs.all_latest }}
steps:
- uses: actions/checkout@v4

- name: Retrieve package versions
id: pkg
run: |
find . -name 'package.json' -print0 | while IFS= read -r -d '' pkg; do
jq -r 'select(.private != true) | .name + "@" + .version' "$pkg"
done | tee versions.txt

- name: Compare package versions
id: check
run: |
all_latest=true
while read -r pkg; do
echo "Checking if $pkg is published..."
exists=$(npm view "$pkg" version 2>/dev/null || echo "N/A")
echo "npm returned: $exists"
if [ "$exists" = "N/A" ]; then
echo "$pkg is NOT published."
all_latest=false
break
else
echo "$pkg is published."
fi
done < versions.txt
echo "all_latest=$all_latest" >> $GITHUB_OUTPUT

# If we detect that not all packages are published, we run the
# cli-install-cross-platform-release-test workflow to verify that the CLI installs correctly on all platforms.
# In all other cases, we already have a barebones `cli-install` test on the default CI platform
# which will catch most issues before any offending PR is merged.
cli-install-cross-platform-release-test:
needs: prepare-release
if: needs.prepare-release.outputs.hasChangesets == 'false'
needs: [check-latest-published]
if: needs.check-latest-published.outputs.all_latest == 'false'
strategy:
matrix:
os: [depot-ubuntu-latest, depot-macos-latest, depot-windows-2022]
Expand Down
34 changes: 19 additions & 15 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,14 @@ env:
CARGO_TERM_COLOR: always
RUST_BACKTRACE: full
RUSTC_WRAPPER: sccache
TURBO_TELEMETRY_DISABLED: 1
TURBO_API: https://cache.depot.dev
TURBO_TOKEN: ${{ secrets.DEPOT_TURBO_TOKEN }}
TURBO_TEAM: ${{ secrets.DEPOT_ORG_ID }}

jobs:
yarn-install:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -60,7 +64,7 @@ jobs:
run: yarn syncpack list-mismatches

lint-prettier:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -75,6 +79,7 @@ jobs:
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
cache-provider: github

- name: lint
run: yarn lint
Expand Down Expand Up @@ -169,7 +174,7 @@ jobs:
echo "Push event to main detected. Setting only_rust to false."

yarn-test-run:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
needs: [rust-only]
timeout-minutes: 10
if: needs.rust-only.outputs.only_rust == 'false'
Expand All @@ -187,7 +192,7 @@ jobs:
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}

cache-provider: github
- name: Checkout registry
uses: ./.github/actions/checkout-registry

Expand All @@ -207,7 +212,7 @@ jobs:
result: ${{ needs.yarn-test-run.result }}

infra-test:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
needs: [yarn-install, set-base-sha]
env:
GRAFANA_SERVICE_ACCOUNT_TOKEN: ${{ secrets.GRAFANA_SERVICE_ACCOUNT_TOKEN }}
Expand All @@ -234,6 +239,7 @@ jobs:
if: env.BALANCE_CHANGES == 'true' || env.WARP_CONFIG_CHANGES == 'true'
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
cache-provider: github

- name: Checkout registry
if: env.BALANCE_CHANGES == 'true' || env.WARP_CONFIG_CHANGES == 'true'
Expand Down Expand Up @@ -278,7 +284,7 @@ jobs:
result: ${{ needs.cli-install-test-run.result }}

cli-e2e-matrix:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
needs: [rust-only]
if: needs.rust-only.outputs.only_rust == 'false'
strategy:
Expand Down Expand Up @@ -314,16 +320,12 @@ jobs:
- name: foundry-install
uses: foundry-rs/foundry-toolchain@v1

- name: yarn-build
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}

- name: install-hyperlane-cli
id: install-hyperlane-cli
uses: ./.github/actions/install-cli
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
cache-provider: github

- name: Checkout registry
uses: ./.github/actions/checkout-registry
Expand All @@ -346,7 +348,7 @@ jobs:
result: ${{ needs.cli-e2e-matrix.result }}

cosmos-sdk-e2e-run:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
needs: [rust-only]
if: needs.rust-only.outputs.only_rust == 'false'
steps:
Expand All @@ -360,6 +362,7 @@ jobs:
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
cache-provider: github

- name: Cosmos SDK e2e tests
run: yarn --cwd typescript/cosmos-sdk test:e2e
Expand All @@ -377,7 +380,7 @@ jobs:
result: ${{ needs.cosmos-sdk-e2e-run.result }}

agent-configs:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
strategy:
fail-fast: false
matrix:
Expand All @@ -392,6 +395,7 @@ jobs:
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
cache-provider: github

- name: Checkout registry
uses: ./.github/actions/checkout-registry
Expand Down Expand Up @@ -581,7 +585,7 @@ jobs:
exit 1

env-test-matrix:
runs-on: ubuntu-latest
runs-on: depot-ubuntu-latest
needs: [rust-only]
if: needs.rust-only.outputs.only_rust == 'false'
env:
Expand Down Expand Up @@ -614,6 +618,7 @@ jobs:
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
cache-provider: github

- name: Checkout registry
uses: ./.github/actions/checkout-registry
Expand Down Expand Up @@ -654,7 +659,6 @@ jobs:
uses: ./.github/actions/yarn-build-with-cache
with:
ref: ${{ github.event.pull_request.head.sha || github.sha }}

- name: foundry-install
uses: foundry-rs/foundry-toolchain@v1

Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ solidity/artifacts
.yarn/cache
yarn-error.log

.turbo

.idea
**/*.ignore

Expand Down
2 changes: 1 addition & 1 deletion .registryrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ea6268432101949d2f3b8d304b7aea9be841bf99
31cc3e1a2c91f6b0e6125ccdcade99628b84fe04
22 changes: 11 additions & 11 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,32 @@ FROM node:20-alpine

WORKDIR /hyperlane-monorepo

RUN apk add --update --no-cache git g++ make py3-pip jq bash curl

RUN yarn set version 4.5.1
RUN apk add --update --no-cache git g++ make py3-pip jq bash curl && \
yarn set version 4.5.1

# Copy package.json and friends
COPY package.json yarn.lock .yarnrc.yml ./
COPY .yarn/plugins ./.yarn/plugins
COPY .yarn/releases ./.yarn/releases
COPY .yarn/patches ./.yarn/patches
COPY typescript/utils/package.json ./typescript/utils/
COPY typescript/sdk/package.json ./typescript/sdk/
COPY typescript/helloworld/package.json ./typescript/helloworld/
COPY typescript/ccip-server/package.json ./typescript/ccip-server/
COPY typescript/cli/package.json ./typescript/cli/
COPY typescript/cosmos-sdk/package.json ./typescript/cosmos-sdk/
COPY typescript/cosmos-types/package.json ./typescript/cosmos-types/
COPY typescript/github-proxy/package.json ./typescript/github-proxy/
COPY typescript/helloworld/package.json ./typescript/helloworld/
COPY typescript/infra/package.json ./typescript/infra/
COPY typescript/ccip-server/package.json ./typescript/ccip-server/
COPY typescript/sdk/package.json ./typescript/sdk/
COPY typescript/tsconfig/package.json ./typescript/tsconfig/
COPY typescript/utils/package.json ./typescript/utils/
COPY typescript/widgets/package.json ./typescript/widgets/
COPY typescript/github-proxy/package.json ./typescript/github-proxy/
COPY typescript/cosmos-types/package.json ./typescript/cosmos-types/
COPY typescript/cosmos-sdk/package.json ./typescript/cosmos-sdk/
COPY solidity/package.json ./solidity/
COPY starknet/package.json ./starknet/

RUN yarn install && yarn cache clean

# Copy everything else
COPY tsconfig.json ./
COPY turbo.json ./
COPY typescript ./typescript
COPY solidity ./solidity
COPY starknet ./starknet
Expand Down
19 changes: 10 additions & 9 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
"prettier": "^3.5.3",
"prettier-plugin-solidity": "^1.4.2",
"syncpack": "^13.0.0",
"tsx": "^4.19.1"
"tsx": "^4.19.1",
"turbo": "^2.5.3"
},
"dependencies": {
"@changesets/cli": "^2.26.2"
Expand All @@ -26,14 +27,14 @@
"private": true,
"scripts": {
"agent-configs": "yarn --cwd typescript/infra/ update-agent-config:mainnet3 && yarn --cwd typescript/infra/ update-agent-config:testnet4 && yarn prettier",
"build": "yarn workspaces foreach --all --parallel --topological-dev run build",
"clean": "yarn workspaces foreach --all --parallel run clean",
"prettier": "yarn workspaces foreach --since --parallel run prettier",
"lint": "yarn workspaces foreach --all --parallel run lint",
"test": "yarn workspaces foreach --all --parallel run test",
"test:ci": "yarn workspaces foreach --all --topological-dev run test:ci",
"coverage": "yarn workspaces foreach --all --parallel run coverage",
"version:prepare": "yarn changeset version && yarn workspaces foreach --all --parallel run version:update && yarn install --no-immutable",
"build": "turbo run build",
"clean": "turbo run clean",
"prettier": "turbo run prettier",
"lint": "turbo run lint",
"test": "turbo run test --continue",
"test:ci": "turbo run test:ci",
"coverage": "turbo run coverage",
"version:prepare": "yarn changeset version && turbo run version:update && yarn install --no-immutable",
"version:check": "yarn changeset status",
"release": "yarn build && yarn changeset publish",
"postinstall": "husky install"
Expand Down
7 changes: 5 additions & 2 deletions rust/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@
# Base image containing all necessary build tools and dependencies
FROM rust:1.81.0 AS base
RUN apt-get update && \
apt-get install -y musl-tools clang && \
apt-get install -y --no-install-recommends musl-tools clang && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
rustup target add x86_64-unknown-linux-musl && \
cargo install --locked sccache

Expand Down Expand Up @@ -67,7 +69,8 @@ COPY --from=builder /release/* .
# Install runtime dependencies
# remove /var/lib/apt/lists/* to clean up the package lists
RUN apt-get update && \
apt-get install -y openssl ca-certificates tini && \
apt-get install -y --no-install-recommends openssl ca-certificates tini && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
chmod 777 /app && \
mkdir -p /usr/share/hyperlane && chmod 1000 /usr/share/hyperlane && \
Expand Down
Loading