Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
153 commits
Select commit Hold shift + click to select a range
916d6a4
params: release Geth v1.15.5
karalabe Nov 14, 2023
5ba3d57
Merge branch 'release/1.13' into release-1.13.6
fjl Dec 18, 2023
da6cdaf
all: release go-ethereum v1.13.6
fjl Dec 18, 2023
c3d9ca6
all: release go-ethereum v1.13.7
fjl Dec 19, 2023
b20b4a7
all: release go-ethereum v1.13.8
holiman Dec 22, 2023
dd938d1
Merge branch 'master' into release/1.13
fjl Jan 10, 2024
bc0be1b
Merge branch 'master' into release/1.13
karalabe Jan 11, 2024
8f7eb9c
all: release go-ethereum v1.13.11 (#28868)
holiman Jan 24, 2024
02eb36a
all: release go-ethereum v1.13.12 (#28961)
holiman Feb 9, 2024
7f131dc
Merge branch 'master' into release/1.13
fjl Feb 21, 2024
2bd6bd0
Merge branch 'master' into release/1.13
karalabe Feb 27, 2024
5429fd8
chore: squash `arr4n/libevm` into `libevm` (#7)
ARR4N Sep 10, 2024
b6f3eb9
chore: basic CI (#9)
ARR4N Sep 10, 2024
d9991bb
feat: `params.ChainConfig` extra payload can use root JSON (#8)
ARR4N Sep 11, 2024
72744ce
refactor: abstract `hookstest.Register()` out of `hookstest.Stub.Regi…
ARR4N Sep 11, 2024
d31803a
refactor: params extra types are zero values not nil pointers by defa…
ARR4N Sep 12, 2024
a574ae6
feat: `params.ExtraPayloads.SetOnChainConfig()` + `Rules` equiv (#14)
ARR4N Sep 12, 2024
2d3894f
fix: run flaky upstream tests sequentially (#15)
ARR4N Sep 12, 2024
04543ea
chore: `golangci-lint` CI workflow (#16)
ARR4N Sep 12, 2024
2034f76
chore: PR template (#19)
ARR4N Sep 13, 2024
df32256
chore: workflow to print diffs vs `libevm-base` tag (#18)
ARR4N Sep 14, 2024
58f3883
feat: read-only stateful precompiles (#20)
ARR4N Sep 14, 2024
38eaaab
feat!: RulesHooks.CanCreateContract() accepts and returns gas (#28)
ARR4N Sep 17, 2024
c5da3ca
refactor!: gas consumption for stateful precompiles (#26)
ARR4N Sep 17, 2024
ab357e0
feat: `vm.PrecompileEnvironment` access to block info (#27)
ARR4N Sep 17, 2024
c70b3e3
feat: `CheckConfig{Compatible,ForkOrder}` + `Description` hooks (#29)
ARR4N Sep 17, 2024
df13389
feat: `vm.MutableStack` wrapper (#31)
ARR4N Sep 18, 2024
81e109a
feat: `PrecompileEnvironment.ChainConfig()` (#32)
ARR4N Sep 18, 2024
1a6dd02
feat: override vm.NewEVM() args (#35)
ARR4N Sep 19, 2024
dc61999
doc: licensing of libevm additions and modifications (#34)
ARR4N Sep 19, 2024
53ef071
feat: override `EVM.Reset()` args (#36)
ARR4N Sep 25, 2024
99a755f
feat!: `vm.Hooks.OverrideEVMResetArgs()` receives `params.Rules` (#38)
ARR4N Sep 26, 2024
f1dba53
feat: `params.RulesHooks.ActivePrecompiles` override (#39)
ARR4N Sep 26, 2024
210f8ab
feat: `vm.PrecompiledStatefulContract` can make `CALL`s (#40)
ARR4N Sep 30, 2024
1478c18
fix: `ExtraPayloads.SetOn{ChainConfig,Rules}()` overrides shallow cop…
ARR4N Sep 30, 2024
336a289
feat: `pseudo.Type` RLP round-tripping (#43)
ARR4N Oct 1, 2024
f0ae9c5
feat: `types.StateAccount` pseudo-generic payload (#44)
ARR4N Oct 2, 2024
5ec080f
test: `StateAccount.Extra` via `trie.StateTrie.{Update,Get}Account()`…
ARR4N Oct 2, 2024
51cd795
fix: `vm.WithUNSAFECallerAddressProxying` under `DELEGATECALL` (#50)
ARR4N Oct 7, 2024
77c5571
feat: `state.{Get,Set}Extra[SA any](*StateDB,types.ExtraPayloads,...)…
ARR4N Oct 9, 2024
18d6153
chore: test external push to protected branch
ARR4N Oct 10, 2024
88c00c6
chore: cleanup after repo and default-branch renames (#55)
ARR4N Oct 11, 2024
a8cc7bd
feat: GitHub action to rename module (#51)
ARR4N Oct 11, 2024
21122c0
fix: run renaming workflow if branch `== main` (#58)
ARR4N Oct 11, 2024
c6c8558
feat: signed commit when renaming upstream module (#61)
ARR4N Oct 17, 2024
0b56af5
[AUTO] rename Go module + update internal import paths
github-actions[bot] Oct 17, 2024
4410f80
Merge branch 'auto-rename-module_source-2bd6bd01d2e8561dd7fc21b631f4a…
ARR4N Oct 17, 2024
5c66352
chore: CI updates for renamed module
ARR4N Oct 12, 2024
cb7eb89
fix: `state.stateObject.empty()` with extra payload (#62)
ARR4N Oct 28, 2024
12b8aa5
fix: pre-state tracer logging storage after call from precompile (#64)
ARR4N Oct 29, 2024
dc8fc03
chore: run workflows on PRs+push to release branches (#67)
ARR4N Oct 29, 2024
41a2592
chore: post-rename cleanup + `libevm` intro (#68)
ARR4N Oct 30, 2024
594abd9
feat: `triedb.Config` support for arbitrary backend implementations (…
ARR4N Nov 14, 2024
44068c8
refactor: abstract `options` package (#74)
ARR4N Nov 21, 2024
4feb960
feat(core/state): async trie prefetching (#76)
ARR4N Nov 26, 2024
3a75409
feat: `state.SnapshotTree` interface for drop-in replacement (#77)
ARR4N Nov 26, 2024
7d1b45b
chore: mark upstream `triedb/pathdb` test flaky (#78)
ARR4N Nov 27, 2024
c2f1269
feat!: `types.ExtraPayloads` supports `SlimAccount` (#79)
ARR4N Nov 29, 2024
25e5ca3
chore: retract `v1.13.14-0.1.0-rc.1` (#81)
ARR4N Dec 3, 2024
d71677f
refactor: consolidate once-only registration of extras (#85)
ARR4N Dec 9, 2024
380aa31
refactor!: consolidate `params` and `types` payload access (#84)
ARR4N Dec 9, 2024
aa183c5
refactor: generate internal `Header.encodeRLP()` for override (#86)
ARR4N Dec 11, 2024
bd44839
test: lock in `types.Header` RLP encoding (#87)
ARR4N Dec 12, 2024
dc7e27a
feat: `types.HeaderHooks` for RLP overrides (#89)
ARR4N Dec 17, 2024
43878f4
feat: `internalise` command (#90)
ARR4N Dec 17, 2024
44f23c8
refactor: `PrecompileEnvironment.{,Use,Refund}Gas()` in lieu of args …
ARR4N Dec 18, 2024
4575ced
feat: `types.HeaderHooks` JSON round-trip support (#94)
ARR4N Dec 19, 2024
bee85d6
chore(ci): define Github labels as code with a workflow (#93)
qdm12 Dec 23, 2024
9e452f2
chore(github): issue template configuration and update issue template…
qdm12 Dec 30, 2024
efa14ab
chore(ci): `goheader` linting only runs in CI on changed or new files…
qdm12 Jan 8, 2025
ce2cde5
docs(linter): comment why `goheader` is only enabled in the CI (#101)
qdm12 Jan 9, 2025
c996175
chore(ci): yaml linter workflow and fix yaml files (#98)
qdm12 Jan 12, 2025
d08d0f0
feat(params): `UnmarshalChainJSONConfig` and `MarshalChainConfigJSON`…
qdm12 Jan 12, 2025
e2b0abb
chore(ci): automate detection of last auto-rename commit(#99)
qdm12 Jan 13, 2025
ee93f60
feat(core/types): `Header` hook `PostCopy` (#106)
qdm12 Feb 4, 2025
be6e93e
chore(ci): linting job changes regarding goheader (#116)
qdm12 Feb 5, 2025
eda3b59
feat(core/types): fine-grained `Body` RLP override (#109)
ARR4N Feb 5, 2025
80bdfe7
chore(ci): use the Go version found in `go.mod` (#118)
qdm12 Feb 6, 2025
a8df623
chore(ci): restrict each job concurrency except for main branch (#117)
qdm12 Feb 6, 2025
f906679
fix(libevm/legacy): `PrecompiledStatefulContract` gas and remaining g…
qdm12 Feb 7, 2025
761c4b4
fix(ci): module-renaming workflow includes `.go.tpl` and `.proto` (#122)
ARR4N Feb 7, 2025
d210cc4
refactor(core/types): simplify `Body` RLP override (#120)
ARR4N Feb 7, 2025
c74b645
feat: `rawdb.InspectDatabaseOption` (#111)
ARR4N Feb 7, 2025
9125583
chore(ci): pin goheader golangci-lint action to v6.2.0 (#124)
qdm12 Feb 10, 2025
f6832f2
chore!(core/types): change method names of JSON header hooks (#125)
qdm12 Feb 10, 2025
94383c7
chore: add label "Priority: With next Geth sync" (#129)
ARR4N Feb 11, 2025
2580bd1
chore(ci): add go_tidy job to go workflow (#127)
qdm12 Feb 11, 2025
67f879a
refactor!(core/types): `Block` method `WithBody(Body)` signature (#110)
qdm12 Feb 11, 2025
80fbed6
refactor(core/types): `Body` backwards-compatibility out of `package …
ARR4N Feb 12, 2025
b2c38ce
feat(core/types): body RLP hooks registration (#130)
qdm12 Feb 12, 2025
0c90568
chore(core/rawdb): `InspectDatabase` can receive multiple times the s…
qdm12 Feb 12, 2025
c78db42
doc(core/rawdb): fix outdated comment (#134)
ARR4N Feb 12, 2025
0eb029a
chore(core/types): restructure libevm hooks code (#135)
qdm12 Feb 13, 2025
3ab3cd2
feat(core/types): `Block` RLP overriding (#133)
ARR4N Feb 13, 2025
00c10cf
feat: release-branch automation (#137)
ARR4N Feb 14, 2025
bc42e5f
chore(ci): consolidate linters (#139)
ARR4N Feb 14, 2025
f7a3a4f
chore(ci): add `go` catch-all job (#140)
ARR4N Feb 14, 2025
53867ac
chore: retract `v1.13.14-0.1.0.rc-2` (#141)
ARR4N Feb 14, 2025
1344d20
chore(ci): disable lint goheader step on non-pull-request events (#143)
qdm12 Feb 17, 2025
32e7daf
chore: release branches remove `memsize` (#146)
ARR4N Feb 17, 2025
d32c7e0
chore: remove module retractions in lieu of bumping minor (#147)
ARR4N Feb 17, 2025
02110d3
chore: logging (#151)
ARR4N Feb 24, 2025
24d7bde
chore!: remove `memsize` (#155)
ARR4N Feb 25, 2025
9f410ec
chore: `[email protected]` (#156)
ARR4N Feb 25, 2025
739ba84
feat(rlp/rlpgen): support alias types (#154)
qdm12 Feb 27, 2025
4c6e50e
chore: module-renaming workflow inverts between `libevm` and `geth` (…
ARR4N Mar 7, 2025
b0332b5
chore(ci): add `merge_group` trigger to required workflows (#160)
ARR4N Mar 11, 2025
433c606
feat(core/types): export `rlpHash()` (#163)
ARR4N Mar 13, 2025
08490a9
test: branch properties of `main` and `release/*` (#145)
ARR4N Mar 17, 2025
0ed6135
refactor(params): make `LibEVMVersion` a constant (#162)
ARR4N Mar 17, 2025
7b8d20f
fix(ci): only create local `main` branch if non-existent (#164)
ARR4N Mar 17, 2025
7be6bee
chore: enable metrics by default (#165)
ARR4N Mar 20, 2025
87a2d57
chore!(triedb): remove config argument for `DBConstructor` (#167)
qdm12 Mar 25, 2025
319a924
feat(params): export `newTimestampCompatError` with alias `NewTimesta…
qdm12 Mar 25, 2025
1d75a11
chore: release-branch test logs `HEAD` (#172)
ARR4N Mar 26, 2025
7b930f1
fix(libevm/tooling/release): small `cherrypick.sh` fixes (#171)
qdm12 Mar 26, 2025
979064c
fix(ci): `go_tooling` CI job git checkout tip of PR (#173)
qdm12 Mar 26, 2025
d7bb4f6
feat(core/types): export `rlpHash()` (#174)
qdm12 Mar 27, 2025
86a2fa8
Verify key length in range proofs (#176)
StephenButtolph Apr 10, 2025
c2e6df1
refactor(core/vm): expose clearing of registered hooks in tests (#181)
ARR4N Apr 16, 2025
2d94327
feat: partially expose `internal/ethapi` package (#182)
ARR4N May 27, 2025
7342b55
feat(triedb): expose backend for custom use (#183)
alarso16 May 30, 2025
8580388
internal/build, rpc: add missing HTTP response body Close() calls (#2…
wzshiming Mar 12, 2024
9f0e1f8
core/state: fix bug in statedb.Copy and remove unnecessary preallocat…
AaronChen0 Apr 17, 2024
b570d5e
params: print time value instead of pointer in ConfigCompatError (#29…
NathanBSC Apr 30, 2024
7c5a808
eth/gasprice: add query limit for FeeHistory to defend DDOS attack (#…
NathanBSC May 7, 2024
7688f98
core/state/snapshot: add a missing lock (#30001)
mask-pp Jun 17, 2024
955616d
crypto: add IsOnCurve check (#31100)
fjl Jan 30, 2025
7b6ff3e
internal/ethapi: fix panic in debug methods (#31157)
s1na Feb 11, 2025
fd03f3a
chore: deprecate cherry-picking on release (#186)
ARR4N Jun 10, 2025
2672fbd
feat: RIP-7212 precompile for P256 ECDSA verification (#184)
ARR4N Jun 10, 2025
bedfd12
feat: `RulesHooks.MinimumGasConsumption` (#185)
ARR4N Jun 11, 2025
0bfe4a0
chore: fix linter issues that CI missed (#188)
ARR4N Jun 11, 2025
ab5ad25
crypto/bn256/cloudflare: pull in upstream fix for R27 and R29 usage (…
StephenButtolph Jun 18, 2025
9b97d60
feat: `triedb.Database.Update` options via `statedb.Commit` (#190)
alarso16 Jun 18, 2025
263186c
chore: bump libevm minor version to `0.3.0` (#192)
ARR4N Jun 20, 2025
f850ca6
chore: placate `goheader` (#195)
ARR4N Jun 23, 2025
d4c22ca
chore: stochastic gradient descent to fix `goheader` (#196)
ARR4N Jun 23, 2025
ff39776
chore: yamllint ignore all of upstream `crypto/secp256k1`
ARR4N Jun 23, 2025
8ae4631
crypto/secp256k1: update libsecp256k1 (#31242)
MariusVanDerWijden Mar 12, 2025
08e2b6d
crypto/kz4844: pass blobs by ref (#29050)
holiman Mar 13, 2024
99f0d0b
Add `*StateDB.TxHash` for usage with Warp (#204)
StephenButtolph Jul 22, 2025
464de82
feat: state-key transformation w/ override (#205)
ARR4N Jul 22, 2025
e35febe
feat: enable invalidating txs (#208)
alarso16 Aug 1, 2025
e7035f1
feat!: disambiguate EVM-semantic and raw caller/self addresses for pr…
ARR4N Aug 7, 2025
62dc2ea
refactor: set `EVM.readOnly` and `depth` before running stateful prec…
ARR4N Aug 12, 2025
ba21474
Delete custom secp256 implementation (#215)
JonathanOppenheimer Aug 12, 2025
9e4c147
core/vm: implement EIP-7951 - precompile for secp256r1 (#31991)
fjl Jul 7, 2025
f19cd58
feat(rawdb): skip freezers (#220)
RodrigoVillar Sep 3, 2025
e4220c7
refactor: `rawdb` tests (#221)
ARR4N Sep 3, 2025
72e9ad7
feat: export `P256Verify` precompile (#222)
ARR4N Sep 4, 2025
4bc19e9
Update feature.yml (#223)
michaelkaplan13 Sep 5, 2025
ba9ab53
feat: `options.ApplyTo` for default values (#225)
ARR4N Sep 9, 2025
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
  •  
  •  
  •  
31 changes: 0 additions & 31 deletions .github/ISSUE_TEMPLATE/bug.md

This file was deleted.

41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Bug
description: Report a bug
title: "Bug: "
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!

⚠️ Your issue will be closed as "not planned" if:
- you do not fill out **the title of the issue** ☝️
- you do not provide the **libevm version** as requested below
- type: input
id: host-os
attributes:
label: Host platform
description: What is your host platform?
placeholder: "Debian Buster amd64"
- type: input
id: version
attributes:
label: What is the version of libevm
validations:
required: true
- type: textarea
id: problem
attributes:
label: "What's the problem 🤔"
placeholder: "That feature does not work..."
validations:
required: true
- type: textarea
id: logs
attributes:
label: Share your logs if needed
render: plain text
- type: textarea
id: config
attributes:
label: Share your configuration(s) if needed
render: plain text
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Need help
url: https://github.com/ava-labs/libevm/discussions/new/choose
about: Please create a Github discussion.
17 changes: 0 additions & 17 deletions .github/ISSUE_TEMPLATE/feature.md

This file was deleted.

15 changes: 15 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Feature request
description: Suggest a feature to add to libevm
title: "Feature request: "
body:
- type: textarea
id: description
attributes:
label: "What's the feature 🧐"
placeholder: "Describe the feature you want and why it should be added"
validations:
required: true
- type: textarea
id: approach-and-alternatives
attributes:
label: "Recommended approach and alternatives"
9 changes: 0 additions & 9 deletions .github/ISSUE_TEMPLATE/question.md

This file was deleted.

74 changes: 74 additions & 0 deletions .github/labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
# libevm specific labels
- name: "Status: 🔴 Blocked by Geth sync"
color: "959a9c"
description: "This needs to wait for the next fork sync with the geth repository 🍴"
- name: "Status: 🔴 DO NOT MERGE"
color: "959a9c"
from_name: "DO NOT MERGE"

# General categories
- name: "Category: New feature 🆕"
color: "ffc7ea"
- name: "Category: Documentation ✒️"
description: "A problem with the readme or a code comment."
color: "ffc7ea"
- name: "Category: Bug 🐛"
color: "ffc7ea"
from_name: "bug"
- name: "Category: Investigation 🔍"
color: "ffc7ea"
- name: "Category: CI ⛓️"
description: "Anything related to continuous integration"
color: "ffc7ea"
- name: "Category: Testing 🧪"
description: "Unit tests, integration tests, etc."
color: "ffc7ea"
- name: "Category: Code quality ✏️"
color: "ffc7ea"
- name: "Category: Performance 🚀"
color: "ffc7ea"
- name: "Category: Label missing ❗"
description: "Use this if it feels a label should be added to label this issue"
color: "ffc7ea"

# Status
- name: "Status: 🗯️ Waiting for feedback"
color: "f7d692"
- name: "Status: 🔴 Blocked"
color: "f7d692"
description: "Blocked by another issue or pull request"
- name: "Status: 🟡 Nearly resolved"
color: "f7d692"
description: "This might be resolved or is about to be resolved"

# Priority
- name: "Priority: 🚨 Urgent"
color: "03adfc"
- name: "Priority: 📌 Before next release"
color: "03adfc"
- name: "Priority: ⛓️ With next Geth sync"
color: "03adfc"
description: "Has to be done before the next release"
- name: "Status: 🔒 After next release"
color: "03adfc"
description: "Will be done after the next release"
- name: "Priority: 💤 Low priority"
color: "03adfc"

# Complexity
- name: "Complexity: 🟥 Hard to do"
color: "ff9efc"
- name: "Complexity: 🟦 Easy to do"
color: "ff9efc"

# Closing reason
- name: "Closed: 👥 Duplicate"
color: "959a9c"
description: "Issue duplicates an existing issue"
- name: "Closed: ⚰️ Inactive"
color: "959a9c"
description: "No answer was received for weeks"
- name: "Closed: 🙅 Won't fix"
color: "959a9c"
- name: "Closed: 🧺 Invalid"
color: "959a9c"
5 changes: 5 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## Why this should be merged

## How this works

## How this was tested
96 changes: 83 additions & 13 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,93 @@
name: i386 linux tests
name: Go

on:
push:
branches: [ master ]
branches: [main, "release/**"]
pull_request:
branches: [ master ]
branches: [main, "release/**"]
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
runs-on: self-hosted
# If adding a new job, add it to the `needs` list of the `go` job as this is
# what gates PRs.
go:
runs-on: ubuntu-latest
needs: [go_test_short, go_test_tooling, go_generate, go_tidy]
steps:
- run: echo "Dependencies successful"

go_test_short:
env:
FLAKY_REGEX: "ava-labs/libevm/(triedb/pathdb|eth|eth/tracers/js|eth/tracers/logger|eth/tracers/internal/tracetest|accounts/abi/bind|accounts/keystore|eth/downloader|miner|ethclient|ethclient/gethclient|eth/catalyst)$"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: "go.mod"
- name: Run flaky tests sequentially
run:
| # Upstream flakes are race conditions exacerbated by concurrent tests
go list ./... | grep -P "${FLAKY_REGEX}" | xargs -n 1 go test -short;
- name: Run non-flaky tests concurrently
run: |
go test -short $(go list ./... | grep -Pv "${FLAKY_REGEX}");

go_test_tooling:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./libevm/tooling
env:
TARGET_BRANCH: ${{ github.event_name == 'pull_request' && github.base_ref || github.ref }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # everything
ref: ${{ github.event.pull_request.head.sha }}
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: "./libevm/tooling/go.mod"
- name: Create local `main` if non-existent
run: git show-ref --quiet --verify refs/heads/main || git branch main origin/main
- run: go test -v ./... --target_branch="${{ env.TARGET_BRANCH }}"

go_generate:
env:
EXCLUDE_REGEX: "ava-labs/libevm/(accounts/usbwallet/trezor)$"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version-file: "go.mod"

- name: Run `go generate`
run: go list ./... | grep -Pv "${EXCLUDE_REGEX}" | xargs go generate;

- name: git diff
run: git diff --exit-code

go_tidy:
runs-on: ubuntu-latest
strategy:
matrix:
dir: ["./", "./libevm/tooling"]
defaults:
run:
working-directory: ${{ matrix.dir }}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v2
uses: actions/setup-go@v5
with:
go-version: 1.21.4
- name: Run tests
run: go test -short ./...
env:
GOOS: linux
GOARCH: 386
go-version-file: "${{ matrix.dir }}/go.mod"
- run: go mod tidy
- run: git diff --exit-code
28 changes: 28 additions & 0 deletions .github/workflows/labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: labels
on:
push:
branches:
- main
paths:
- .github/labels.yml
- .github/workflows/labels.yml
pull_request: # dry run only
paths:
- .github/labels.yml
- .github/workflows/labels.yml

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
labeler:
permissions:
contents: read
issues: write
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: crazy-max/ghaction-github-labeler@v5
with:
dry-run: ${{ github.event_name == 'pull_request' }}
48 changes: 48 additions & 0 deletions .github/workflows/libevm-delta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: libevm delta

on:
push:
branches: [main, "release/**"]
pull_request:
branches: [main, "release/**"]
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
diffs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # everything
fetch-tags: true

- name: Find base commit hash
id: base-commit
run: echo "LIBEVM_BASE=$(git rev-list --author "github-actions\[bot\]" --grep "rename Go module" -n 1 origin/main)" >> "$GITHUB_OUTPUT"

- name: Color-blindness a11y
run:
| # https://davidmathlogic.com/colorblind/#%23D81B60-%231E88E5-%23FFC107-%23004D40:~:text=8%20pairs%20of%20contrasting%20colors
git config color.diff.old "#DC3220";
git config color.diff.new "#005AB5";

- name: git diff ${{ steps.base-commit.outputs.LIBEVM_BASE }}
run: |
git diff --diff-filter=a --word-diff --unified=0 --color=always \
${{ steps.base-commit.outputs.LIBEVM_BASE }} \
':(exclude).golangci.yml' \
':(exclude).github/**' \
':(exclude)README.md';

- name: git diff ${{ steps.base-commit.outputs.LIBEVM_BASE }}..main
run: |
git checkout main --;
git diff --diff-filter=a --word-diff --unified=0 --color=always \
"${{ steps.base-commit.outputs.LIBEVM_BASE }}" \
':(exclude).golangci.yml' \
':(exclude).github/**' \
':(exclude)README.md';
Loading
Loading