Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
868fc23
docs(plugin/evm): add local API docs to be pulled by Docs `remote-con…
meaghanfitzgerald Mar 25, 2025
382b0fb
chore(all): fix different typos (#1506)
qdm12 Mar 25, 2025
d62ba17
Switch from `go install` to `go run` to avoid cluttering shared bin p…
maru-ava Mar 26, 2025
ed9147d
[ci] Use SHAs instead of tags for 3rd-party github actions (#1507)
maru-ava Mar 26, 2025
1a53e9a
[ci] Simplify monitoring configuration (#1440)
maru-ava Mar 26, 2025
6ae84aa
[docker] Update to debian12/bookworm (#1497)
maru-ava Mar 27, 2025
f5890db
Bump undici from 5.28.4 to 5.29.0 in /contracts (#1524)
dependabot[bot] Mar 27, 2025
4b9f219
don't assume rpc format on the plugin evm client (#1509)
felipemadero Mar 28, 2025
fd1714b
Update BLST to v0.3.14 to support Go 1.24 (#1534)
yacovm Mar 28, 2025
e63ec7b
Bump axios from 1.7.2 to 1.8.4 in /contracts (#1525)
dependabot[bot] Mar 28, 2025
10aac5f
chore(deps): bump avalanchego to v1.13.1-0.20250321174807-6c72dfc4254…
qdm12 Mar 28, 2025
73c5e53
[documentation] Differentiate between L1 and Subnet self-signing opti…
cam-schultz Mar 28, 2025
7d48dfa
Revert "chore(deps): bump avalanchego to v1.13.1-0.20250321174807-6c7…
qdm12 Mar 28, 2025
0fa9b71
chore: release v0.7.3-rc.0 (#1537)
qdm12 Mar 31, 2025
0abb00e
fix(cd): goreleaser picks non-rc tag and uses workflow config (#1544)
qdm12 Apr 2, 2025
8b0ef32
chore(ci): simplify monitoring configuration (re-apply #1440) (#1545)
qdm12 Apr 2, 2025
4f496a0
Merge branch 'master' into libevm
qdm12 Apr 2, 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
10 changes: 10 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# - Will execute on entry to the containing directory only if authorized with `direnv allow`
# - Requires a recent version of direnv (https://direnv.net/)
# - For quieter direnv output, set `export DIRENV_LOG_FORMAT=`

# Determine AVALANCHE_VERSION
source ./scripts/versions.sh

# - Starts an avalanchego dev shell
# - Requires nix (https://github.com/DeterminateSystems/nix-installer?tab=readme-ov-file#install-nix)
use flake "github:ava-labs/avalanchego?ref=${AVALANCHE_VERSION}"
4 changes: 4 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,7 @@ updates:
directory: "/" # Location of package manifests
schedule:
interval: "daily"
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly
6 changes: 3 additions & 3 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@1b549b9259bda1cb5ddde3b41741a82a2d15a841 #v3.28.13
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -55,7 +55,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
uses: github/codeql-action/autobuild@1b549b9259bda1cb5ddde3b41741a82a2d15a841 #v3.28.13

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
Expand All @@ -69,4 +69,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@1b549b9259bda1cb5ddde3b41741a82a2d15a841 #v3.28.13
2 changes: 1 addition & 1 deletion .github/workflows/publish_antithesis_images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
uses: actions/checkout@v4

- name: Login to GAR
uses: docker/login-action@v3
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 #v3.4.0
with:
registry: ${{ env.REGISTRY }}
username: _json_key
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/publish_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: docker/setup-qemu-action@v3
- uses: docker/setup-buildx-action@v3
- uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 #v3.6.0
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 #v3.10.0
- name: Build and publish images to DockerHub
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
Expand Down
9 changes: 7 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,17 @@ jobs:
echo cd4f08a75577145b8f05245a2975f7c81401d75e9535dcffbb879ee1deefcbf4 tarballs/MacOSX11.3.sdk.tar.xz | sha256sum -c -
UNATTENDED=1 ./build.sh
echo "$PWD/target/bin" >> "$GITHUB_PATH"
- name: Git checkout workflow event ref for .goreleaser.yml only
uses: actions/checkout@v4
with:
fetch-depth: 0
path: goreleaser
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v3
uses: goreleaser/goreleaser-action@90a3faa9d0182683851fbfa97ca1a2cb983bfca3 #v6.2.1
with:
distribution: goreleaser
version: v2.5.1
args: release --clean
args: release --clean --config ../goreleaser/.goreleaser.yml
workdir: ./subnet-evm/
env:
# https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret
Expand Down
37 changes: 18 additions & 19 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
with:
go-version-file: "go.mod"
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
uses: golangci/golangci-lint-action@3a919529898de77ec3da873e3063ca4b10e7f5cc #v3
with:
version: v1.63
working-directory: .
Expand All @@ -38,6 +38,11 @@ jobs:
run: |
go mod tidy
git diff --exit-code
- name: Ensure consistent avalanchego version
shell: bash
run: |
bash -x ./scripts/update_avalanchego_version.sh
git diff --exit-code

unit_test:
name: Golang Unit Tests (${{ matrix.os }})
Expand Down Expand Up @@ -152,18 +157,15 @@ jobs:
shell: bash
run: ./scripts/build.sh
- name: Run Warp E2E Tests
uses: ava-labs/avalanchego/.github/actions/run-monitored-tmpnet-cmd@v1.11.13
uses: ava-labs/avalanchego/.github/actions/run-monitored-tmpnet-cmd@3a6bfac46f43ac2d7cc1e3fc8576ff6a8594bafa
with:
run: AVALANCHEGO_BUILD_PATH=/tmp/e2e-test/avalanchego ./scripts/run_ginkgo_warp.sh
prometheus_id: ${{ secrets.PROMETHEUS_ID || '' }}
run: ./scripts/run_ginkgo_warp.sh
run_env: AVALANCHEGO_BUILD_PATH=/tmp/e2e-test/avalanchego
artifact_prefix: warp
prometheus_username: ${{ secrets.PROMETHEUS_ID || '' }}
prometheus_password: ${{ secrets.PROMETHEUS_PASSWORD || '' }}
loki_id: ${{ secrets.LOKI_ID || '' }}
loki_username: ${{ secrets.LOKI_ID || '' }}
loki_password: ${{ secrets.LOKI_PASSWORD || '' }}
- name: Upload tmpnet network dir for warp testing
uses: ava-labs/avalanchego/.github/actions/upload-tmpnet-artifact@v1-actions
if: always()
with:
name: warp-tmpnet-data
e2e_load:
name: e2e load tests
runs-on: ubuntu-latest
Expand All @@ -183,18 +185,15 @@ jobs:
shell: bash
run: ./scripts/build.sh
- name: Run E2E Load Tests
uses: ava-labs/avalanchego/.github/actions/run-monitored-tmpnet-cmd@v1.11.13
uses: ava-labs/avalanchego/.github/actions/run-monitored-tmpnet-cmd@3a6bfac46f43ac2d7cc1e3fc8576ff6a8594bafa
with:
run: AVALANCHEGO_BUILD_PATH=/tmp/e2e-test/avalanchego ./scripts/run_ginkgo_load.sh
prometheus_id: ${{ secrets.PROMETHEUS_ID || '' }}
run: ./scripts/run_ginkgo_load.sh
run_env: AVALANCHEGO_BUILD_PATH=/tmp/e2e-test/avalanchego
artifact_prefix: load
prometheus_username: ${{ secrets.PROMETHEUS_ID || '' }}
prometheus_password: ${{ secrets.PROMETHEUS_PASSWORD || '' }}
loki_id: ${{ secrets.LOKI_ID || '' }}
loki_username: ${{ secrets.LOKI_ID || '' }}
loki_password: ${{ secrets.LOKI_PASSWORD || '' }}
- name: Upload tmpnet network dir for load testing
uses: ava-labs/avalanchego/.github/actions/upload-tmpnet-artifact@v1-actions
if: always()
with:
name: load-tmpnet-data
test_build_image:
name: Image build
runs-on: ubuntu-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/trigger-antithesis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
name: Run Antithesis
runs-on: ubuntu-latest
steps:
- uses: antithesishq/antithesis-trigger-action@v0.5
- uses: antithesishq/antithesis-trigger-action@b7d0c9d1d9316bd4de73a44144c56636ea3a64ba #v0.8
with:
notebook_name: avalanche
tenant: avalanche
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -58,3 +58,5 @@ diffs/

# clone used for antithesis image builds
avalanchego/

.direnv
6 changes: 6 additions & 0 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
version: 2
# ref. https://goreleaser.com/customization/build/
builds:
- id: subnet-evm
Expand Down Expand Up @@ -37,3 +38,8 @@ release:
github:
owner: ava-labs
name: subnet-evm

git:
# Avoid picking the wrong tag when there is an RC tag and a non-RC tag
# pointing to the same commit.
prerelease_suffix: "-rc"
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
ARG AVALANCHEGO_NODE_IMAGE="invalid-image"

# ============= Compilation Stage ================
FROM --platform=$BUILDPLATFORM golang:1.23.6-bullseye AS builder
FROM --platform=$BUILDPLATFORM golang:1.23.6-bookworm AS builder

WORKDIR /build

Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ The Subnet EVM runs in a separate process from the main AvalancheGo process and
[v0.7.0] [email protected] (Protocol Version: 38)
[v0.7.1] [email protected] (Protocol Version: 39)
[v0.7.2] [email protected]/1.13.0-fuji (Protocol Version: 39)
[v0.7.3] [email protected]/1.13.0 (Protocol Version: 39)
```

## API
Expand Down
10 changes: 10 additions & 0 deletions bin/ginkgo
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/usr/bin/env bash

set -euo pipefail

# Ensure the go command is run from the root of the repository so that its go.mod file is used
REPO_ROOT=$(cd "$( dirname "${BASH_SOURCE[0]}" )"; cd .. && pwd )
cd "${REPO_ROOT}"

# If an explicit version is not specified, go run uses the ginkgo version from go.mod
go run github.com/onsi/ginkgo/v2/ginkgo "${@}"
13 changes: 13 additions & 0 deletions bin/tmpnetctl
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/usr/bin/env bash

set -euo pipefail

# Ensure the go command is run from the root of the repository
REPO_ROOT=$(cd "$( dirname "${BASH_SOURCE[0]}" )"; cd .. && pwd )
cd "${REPO_ROOT}"

# Set AVALANCHE_VERSION
. ./scripts/versions.sh

echo "Running tmpnetctl @ ${AVALANCHE_VERSION}"
go run github.com/ava-labs/avalanchego/tests/fixture/tmpnet/tmpnetctl@"${AVALANCHE_VERSION}" "${@}"
1 change: 1 addition & 0 deletions compatibility.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"rpcChainVMProtocolVersion": {
"v0.7.3": 39,
"v0.7.2": 39,
"v0.7.1": 39,
"v0.7.0": 38
Expand Down
14 changes: 8 additions & 6 deletions contracts/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

21 changes: 11 additions & 10 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ go 1.23.6
require (
github.com/VictoriaMetrics/fastcache v1.12.1
github.com/antithesishq/antithesis-sdk-go v0.3.8
github.com/ava-labs/avalanchego v1.12.3-rc.1.0.20250326132201-73294af08342
github.com/ava-labs/avalanchego v1.13.1-0.20250327151600-3a6bfac46f43
github.com/ava-labs/libevm v1.13.14-0.2.0.rc.4
github.com/davecgh/go-spew v1.1.1
github.com/deckarep/golang-set/v2 v2.1.0
Expand All @@ -32,10 +32,10 @@ require (
go.uber.org/goleak v1.3.0
go.uber.org/mock v0.5.0
go.uber.org/zap v1.26.0
golang.org/x/crypto v0.32.0
golang.org/x/crypto v0.35.0
golang.org/x/exp v0.0.0-20241215155358-4a5509556b9e
golang.org/x/mod v0.22.0
golang.org/x/sync v0.10.0
golang.org/x/sync v0.11.0
golang.org/x/time v0.3.0
golang.org/x/tools v0.29.0
google.golang.org/protobuf v1.35.2
Expand All @@ -46,8 +46,8 @@ require (
github.com/DataDog/zstd v1.5.2 // indirect
github.com/Microsoft/go-winio v0.6.1 // indirect
github.com/NYTimes/gziphandler v1.1.1 // indirect
github.com/StephenButtolph/canoto v0.10.0 // indirect
github.com/ava-labs/coreth v0.14.1-rc.3.0.20250326124329-8ee70dc0f37c // indirect
github.com/StephenButtolph/canoto v0.15.0 // indirect
github.com/ava-labs/coreth v0.15.0-rc.1.0.20250331083503-0d68be6b92be // indirect
github.com/beorn7/perks v1.0.1 // indirect
github.com/bits-and-blooms/bitset v1.10.0 // indirect
github.com/btcsuite/btcd/btcec/v2 v2.3.2 // indirect
Expand Down Expand Up @@ -101,6 +101,7 @@ require (
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/huin/goupnp v1.3.0 // indirect
github.com/imdario/mergo v0.3.16 // indirect
github.com/jackpal/go-nat-pmp v1.0.2 // indirect
github.com/josharian/intern v1.0.0 // indirect
github.com/json-iterator/go v1.1.12 // indirect
Expand Down Expand Up @@ -140,7 +141,7 @@ require (
github.com/spf13/jwalterweatherman v1.1.0 // indirect
github.com/status-im/keycard-go v0.2.0 // indirect
github.com/subosito/gotenv v1.3.0 // indirect
github.com/supranational/blst v0.3.13 // indirect
github.com/supranational/blst v0.3.14 // indirect
github.com/syndtr/goleveldb v1.0.1-0.20220614013038-64ee5596c38a // indirect
github.com/tklauser/go-sysconf v0.3.12 // indirect
github.com/tklauser/numcpus v0.6.1 // indirect
Expand All @@ -155,11 +156,11 @@ require (
go.opentelemetry.io/otel/trace v1.22.0 // indirect
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
golang.org/x/net v0.34.0 // indirect
golang.org/x/net v0.36.0 // indirect
golang.org/x/oauth2 v0.21.0 // indirect
golang.org/x/sys v0.29.0 // indirect
golang.org/x/term v0.28.0 // indirect
golang.org/x/text v0.21.0 // indirect
golang.org/x/sys v0.30.0 // indirect
golang.org/x/term v0.29.0 // indirect
golang.org/x/text v0.22.0 // indirect
gonum.org/v1/gonum v0.11.0 // indirect
google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed // indirect
Expand Down
Loading