Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tenderly coreth #10

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ WORKDIR $GOPATH/src/github.com/ava-labs/avalanchego
# Run go mod download here to improve caching of AvalancheGo specific depednencies
RUN go mod download
# Replace the coreth dependency
RUN go mod edit -replace github.com/ava-labs/coreth=../coreth
RUN go mod edit -replace github.com/tenderly/coreth=../coreth
RUN go mod download && go mod tidy -compat=1.21

# Build the AvalancheGo binary with local version of coreth.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Coreth is a dependency of AvalancheGo which is used to implement the EVM based V

```bash
cd $GOPATH/src/github.com/ava-labs/avalanchego
go mod edit -replace github.com/ava-labs/coreth=../coreth
go mod edit -replace github.com/tenderly/coreth=../coreth
```

Now that AvalancheGo depends on the local version of Coreth, we can build with the normal build script:
Expand Down
78 changes: 39 additions & 39 deletions RELEASES.md
Original file line number Diff line number Diff line change
@@ -1,85 +1,85 @@
# Release Notes

## [v0.13.3](https://github.com/ava-labs/coreth/releases/tag/v0.13.3)
## [v0.13.3](https://github.com/tenderly/coreth/releases/tag/v0.13.3)
- Update go-ethereum to v1.13.2
- Bump AvalancheGo to v1.11.5
- Bump golang version requirement to 1.21.9
- Respect local flag in legacy tx pool
- Disable blobpool
- Testing improvements

## [v0.13.2](https://github.com/ava-labs/coreth/releases/tag/v0.13.2)
## [v0.13.2](https://github.com/tenderly/coreth/releases/tag/v0.13.2)
- Integrate stake weighted gossip selection
- Update go-ethereum to v1.12.2
- Force precompile modules registration in ethclient
- Bump Avalanchego to v1.11.3

## [v0.13.1](https://github.com/ava-labs/coreth/releases/tag/v0.13.1)
## [v0.13.1](https://github.com/tenderly/coreth/releases/tag/v0.13.1)

- Bump AvalancheGo to v1.11.2
- Remove Legacy Gossipper
- Tune default gossip parameters

## [v0.13.0](https://github.com/ava-labs/coreth/releases/tag/v0.13.0)
## [v0.13.0](https://github.com/tenderly/coreth/releases/tag/v0.13.0)

- Bump AvalancheGo to v1.11.1
- Bump minimum Go version to 1.21.7
- Add more error messages to warp backend

## [v0.12.10](https://github.com/ava-labs/coreth/releases/tag/v0.12.10)
## [v0.12.10](https://github.com/tenderly/coreth/releases/tag/v0.12.10)

- Add support for off-chain warp messages
- Add support for getBlockReceipts RPC API
- Fix issue with state sync for large blocks
- Migrating Push Gossip to avalanchego network SDK handlers

## [v0.12.9](https://github.com/ava-labs/coreth/releases/tag/v0.12.9)
## [v0.12.9](https://github.com/tenderly/coreth/releases/tag/v0.12.9)

- Add concurrent prefetching of trie nodes during block processing
- Add `skip-tx-indexing` flag to disable transaction indexing and unindexing
- Update acceptor tip before sending chain events to subscribers
- Add soft cap on total block data size for state sync block requests

## [v0.12.8](https://github.com/ava-labs/coreth/releases/tag/v0.12.8)
## [v0.12.8](https://github.com/tenderly/coreth/releases/tag/v0.12.8)

- Bump AvalancheGo to v1.10.15
- Fix crash in prestate tracer on memory read

## [v0.12.7](https://github.com/ava-labs/coreth/releases/tag/v0.12.7)
## [v0.12.7](https://github.com/tenderly/coreth/releases/tag/v0.12.7)

- Bump AvalancheGo to v1.10.14

## [v0.12.6](https://github.com/ava-labs/coreth/releases/tag/v0.12.6)
## [v0.12.6](https://github.com/tenderly/coreth/releases/tag/v0.12.6)

- Remove lock options from HTTP handlers
- Fix deadlock in `eth_getLogs` when matcher session hits a missing block
- Replace Kurtosis E2E tests with avctl test framework

## [v0.12.5](https://github.com/ava-labs/coreth/releases/tag/v0.12.5)
## [v0.12.5](https://github.com/tenderly/coreth/releases/tag/v0.12.5)

- Add P2P SDK Pull Gossip to mempool
- Fix hanging requests on shutdown that could cause ungraceful shutdown
- Increase batch size writing snapshot diff to disk
- Migrate geth changes from v1.11.4 through v1.12.0
- Bump AvalancheGo dependency to v1.10.10

## [v0.12.4](https://github.com/ava-labs/coreth/releases/tag/v0.12.4)
## [v0.12.4](https://github.com/tenderly/coreth/releases/tag/v0.12.4)

- Fix API handler crash for `lookupState` in `prestate` tracer
- Fix API handler crash for LOG edge cases in the `callTracer`
- Fix regression in `eth_getLogs` serving request for blocks containing no Ethereum transactions
- Export `CalculateDynamicFee`

## [v0.12.3](https://github.com/ava-labs/coreth/releases/tag/v0.12.3)
## [v0.12.3](https://github.com/tenderly/coreth/releases/tag/v0.12.3)

- Migrate go-ethereum changes through v1.11.4
- Downgrade API error log from `Warn` to `Info`

## [v0.12.2](https://github.com/ava-labs/coreth/releases/tag/v0.12.2)
## [v0.12.2](https://github.com/tenderly/coreth/releases/tag/v0.12.2)

- Increase default trie dirty cache size from 256MB to 512MB

## [v0.12.1](https://github.com/ava-labs/coreth/releases/tag/v0.12.1)
## [v0.12.1](https://github.com/tenderly/coreth/releases/tag/v0.12.1)

- Bump AvalancheGo dependency to v1.10.1
- Improve block building logic
Expand All @@ -88,47 +88,47 @@
- Fail outstanding requests on shutdown
- Make state sync request sizes configurable

## [v0.12.0](https://github.com/ava-labs/coreth/releases/tag/v0.12.0)
## [v0.12.0](https://github.com/tenderly/coreth/releases/tag/v0.12.0)

- Increase C-Chain block gas limit to 15M in Cortina
- Add Mainnet and Fuji Cortina Activation timestamps

## [v0.11.9](https://github.com/ava-labs/coreth/releases/tag/v0.11.9)
## [v0.11.9](https://github.com/tenderly/coreth/releases/tag/v0.11.9)

- Downgrade SetPreference log from warn to debug

## [v0.11.8](https://github.com/ava-labs/coreth/releases/tag/v0.11.8)
## [v0.11.8](https://github.com/tenderly/coreth/releases/tag/v0.11.8)

- Fix shutdown hanging during state sync
- Add pre-check for imported UTXOs
- Fix bug in `BadBlockReason` output to display error string correctly
- Update golangci-lint version to v1.51.2

## [v0.11.7](https://github.com/ava-labs/coreth/releases/tag/v0.11.7)
## [v0.11.7](https://github.com/tenderly/coreth/releases/tag/v0.11.7)

- Enable state sync by default when syncing from an empty database
- Increase block gas limit to 15M for Cortina Network Upgrade
- Add back file tracer endpoint
- Add back JS tracer

## [v0.11.6](https://github.com/ava-labs/coreth/releases/tag/v0.11.6)
## [v0.11.6](https://github.com/tenderly/coreth/releases/tag/v0.11.6)

- Bump AvalancheGo to v1.9.6

## [v0.11.5](https://github.com/ava-labs/coreth/releases/tag/v0.11.5)
## [v0.11.5](https://github.com/tenderly/coreth/releases/tag/v0.11.5)

- Add support for eth_call over VM2VM messaging
- Add config flags for tx pool behavior

## [v0.11.4](https://github.com/ava-labs/coreth/releases/tag/v0.11.4)
## [v0.11.4](https://github.com/tenderly/coreth/releases/tag/v0.11.4)

- Add config option to perform database inspection on startup
- Add configurable transaction indexing to reduce disk usage
- Add special case to allow transactions using Nick's Method to bypass API level replay protection
- Add counter metrics for number of accepted/processed logs
- Improve header and logs caching using maximum accepted depth cache

## [v0.11.3](https://github.com/ava-labs/coreth/releases/tag/v0.11.3)
## [v0.11.3](https://github.com/tenderly/coreth/releases/tag/v0.11.3)

- Add counter for number of processed and accepted transactions
- Wait for state sync goroutines to complete on shutdown
Expand All @@ -137,13 +137,13 @@
- Add back isForkIncompatible checks for all existing forks
- Clean up Apricot Phase 6 code

## [v0.11.2](https://github.com/ava-labs/coreth/releases/tag/v0.11.2)
## [v0.11.2](https://github.com/tenderly/coreth/releases/tag/v0.11.2)

- Add trie clean cache journaling to disk to improve processing time on restart
- Fix regression where snapshot could be marked as stale by async acceptor during block processing
- Add fine-grained block processing metrics

## [v0.11.1](https://github.com/ava-labs/coreth/releases/tag/v0.11.1)
## [v0.11.1](https://github.com/tenderly/coreth/releases/tag/v0.11.1)

- Add cache size config parameters for `trie-clean-cache`, `trie-dirty-cache`, `trie-dirty-commit-target`, and `snapshot-cache`
- Increase default `trie-clean-cache` size from 256 MB to 512 MB
Expand All @@ -157,25 +157,25 @@
- Add Opentelemetry support
- Simplify caching logic for gas price estimation

## [v0.11.0](https://github.com/ava-labs/coreth/releases/tag/v0.11.0)
## [v0.11.0](https://github.com/tenderly/coreth/releases/tag/v0.11.0)

- Update Chain Config compatibility check to compare against last accepted block timestamp
- Bump go-ethereum dependency to v1.10.25
- Add Banff activation times for Mainnet and Fuji for October 18 4pm UTC and October 3 2pm UTC respectively
- Banff cleanup

## [v0.10.0](https://github.com/ava-labs/coreth/releases/tag/v0.10.0)
## [v0.10.0](https://github.com/tenderly/coreth/releases/tag/v0.10.0)

- Deprecate Native Asset Call and Native Asset Balance
- Deprecate Import/Export of non-AVAX Avalanche Native Tokens via Atomic Transactions
- Add failure reason to bad block API

## [v0.9.0](https://github.com/ava-labs/coreth/releases/tag/v0.9.0)
## [v0.9.0](https://github.com/tenderly/coreth/releases/tag/v0.9.0)

- Migrate to go-ethereum v1.10.23
- Add API to fetch Chain Config

## [v0.8.16](https://github.com/ava-labs/coreth/releases/tag/v0.8.16)
## [v0.8.16](https://github.com/tenderly/coreth/releases/tag/v0.8.16)

- Fix bug in `codeToFetch` database accessors that caused an error when starting/stopping state sync
- Bump go-ethereum version to v1.10.21
Expand All @@ -186,7 +186,7 @@
- Remove deprecated gossiper/block building logic from pre-Apricot Phase 4
- Add marshal function for duration to improve config output

## [v0.8.15](https://github.com/ava-labs/coreth/releases/tag/v0.8.15)
## [v0.8.15](https://github.com/tenderly/coreth/releases/tag/v0.8.15)

- Add optional JSON logging
- Bump minimum go version to v1.18.1
Expand All @@ -196,7 +196,7 @@
- Fix atomic trie sync bug that could result in storing incorrect metadata
- Update state sync metrics to use counter for number of items received

## [v0.8.14](https://github.com/ava-labs/coreth/releases/tag/v0.8.14)
## [v0.8.14](https://github.com/tenderly/coreth/releases/tag/v0.8.14)

- Bump go-ethereum dependency to v1.10.20
- Update API names used to enable services in `eth-api` config flag. Prior names are supported but deprecated, please update your configuration [accordingly](https://docs.avax.network/nodes/maintain/chain-config-flags#c-chain-configs)
Expand All @@ -205,13 +205,13 @@
- Adds metrics to atomic transaction mempool
- Adds metrics for incoming/outgoing mempool gossip

## [v0.8.13](https://github.com/ava-labs/coreth/releases/tag/v0.8.13)
## [v0.8.13](https://github.com/tenderly/coreth/releases/tag/v0.8.13)

- Bump go-ethereum dependency to v1.10.18
- Parallelize state sync code fetching
- Deprecated CB58 format for API calls

## [v0.8.12](https://github.com/ava-labs/coreth/releases/tag/v0.8.12)
## [v0.8.12](https://github.com/tenderly/coreth/releases/tag/v0.8.12)

- Add peer bandwidth tracking to optimize state sync message routing
- Fix leaf request handler bug to ensure the handler delivers a valid range proof
Expand All @@ -220,47 +220,47 @@
- Improve state sync handler metrics
- Improve state sync ETA

## [v0.8.11](https://github.com/ava-labs/coreth/releases/tag/v0.8.11)
## [v0.8.11](https://github.com/tenderly/coreth/releases/tag/v0.8.11)

- Improve state sync leaf request serving by optimistically reading leaves from snapshot
- Add acceptor queue within `core/blockchain.go`
- Cap size of TrieDB dirties cache during block acceptance to reduce commit size at 4096 block interval
- Refactor state sync block fetching
- Improve state sync metrics

## [v0.8.10](https://github.com/ava-labs/coreth/releases/tag/v0.8.10)
## [v0.8.10](https://github.com/tenderly/coreth/releases/tag/v0.8.10)

- Add beta support for fast sync
- Bump trie tip buffer size to 32
- Fix bug in metrics initialization

## [v0.8.9](https://github.com/ava-labs/coreth/releases/tag/v0.8.9)
## [v0.8.9](https://github.com/tenderly/coreth/releases/tag/v0.8.9)

- Fix deadlock bug on shutdown causing historical re-generation on restart
- Add API endpoint to fetch running VM Config
- Add AvalancheGo custom log formatting to C-Chain logs
- Deprecate support for JS Tracer

## [v0.8.8](https://github.com/ava-labs/coreth/releases/tag/v0.8.8)
## [v0.8.8](https://github.com/tenderly/coreth/releases/tag/v0.8.8)

- Reduced log level of snapshot regeneration logs
- Enabled atomic tx replacement with higher gas fees
- Parallelize trie index re-generation

## [v0.8.7](https://github.com/ava-labs/coreth/releases/tag/v0.8.7)
## [v0.8.7](https://github.com/tenderly/coreth/releases/tag/v0.8.7)

- Optimize FeeHistory API
- Add protection to prevent accidental corruption of archival node trie index
- Add capability to restore complete trie index on best effort basis
- Round up fastcache sizes to utilize all mmap'd memory in chunks of 64MB

## [v0.8.6](https://github.com/ava-labs/coreth/releases/tag/v0.8.6)
## [v0.8.6](https://github.com/tenderly/coreth/releases/tag/v0.8.6)

- Migrate go-ethereum v1.10.16 changes
- Increase FeeHistory maximum historical limit to improve MetaMask UI on C-Chain
- Enable chain state metrics

## [v0.8.5](https://github.com/ava-labs/coreth/releases/tag/v0.8.5)
## [v0.8.5](https://github.com/tenderly/coreth/releases/tag/v0.8.5)

- Add support for offline pruning
- Refactor VM networking layer
Expand Down
2 changes: 1 addition & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ Please refer to the [Bug Bounty Page](https://hackenproof.com/avalanche) for the

## Supported Versions

Please use the [most recently released version](https://github.com/ava-labs/coreth/releases/latest) to perform testing and to validate security issues.
Please use the [most recently released version](https://github.com/tenderly/coreth/releases/latest) to perform testing and to validate security issues.

8 changes: 4 additions & 4 deletions accounts/abi/bind/auth.go
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ import (
"io"
"math/big"

"github.com/ava-labs/coreth/accounts"
"github.com/ava-labs/coreth/accounts/external"
"github.com/ava-labs/coreth/accounts/keystore"
"github.com/ava-labs/coreth/core/types"
"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/crypto"
"github.com/ethereum/go-ethereum/log"
"github.com/tenderly/coreth/accounts"
"github.com/tenderly/coreth/accounts/external"
"github.com/tenderly/coreth/accounts/keystore"
"github.com/tenderly/coreth/core/types"
)

// ErrNoChainID is returned whenever the user failed to specify a chain id.
Expand Down
4 changes: 2 additions & 2 deletions accounts/abi/bind/backend.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ import (
"errors"
"math/big"

"github.com/ava-labs/coreth/core/types"
"github.com/ava-labs/coreth/interfaces"
"github.com/ethereum/go-ethereum/common"
"github.com/tenderly/coreth/core/types"
"github.com/tenderly/coreth/interfaces"
)

var (
Expand Down
32 changes: 16 additions & 16 deletions accounts/abi/bind/backends/simulated.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,28 +34,28 @@ import (
"sync"
"time"

"github.com/ava-labs/coreth/eth"
"github.com/ava-labs/coreth/vmerrs"

"github.com/ava-labs/coreth/accounts/abi"
"github.com/ava-labs/coreth/accounts/abi/bind"
"github.com/ava-labs/coreth/consensus/dummy"
"github.com/ava-labs/coreth/core"
"github.com/ava-labs/coreth/core/bloombits"
"github.com/ava-labs/coreth/core/rawdb"
"github.com/ava-labs/coreth/core/state"
"github.com/ava-labs/coreth/core/types"
"github.com/ava-labs/coreth/core/vm"
"github.com/ava-labs/coreth/eth/filters"
"github.com/ava-labs/coreth/interfaces"
"github.com/ava-labs/coreth/params"
"github.com/ava-labs/coreth/rpc"
"github.com/tenderly/coreth/eth"
"github.com/tenderly/coreth/vmerrs"

"github.com/ethereum/go-ethereum/common"
"github.com/ethereum/go-ethereum/common/hexutil"
"github.com/ethereum/go-ethereum/common/math"
"github.com/ethereum/go-ethereum/ethdb"
"github.com/ethereum/go-ethereum/event"
"github.com/ethereum/go-ethereum/log"
"github.com/tenderly/coreth/accounts/abi"
"github.com/tenderly/coreth/accounts/abi/bind"
"github.com/tenderly/coreth/consensus/dummy"
"github.com/tenderly/coreth/core"
"github.com/tenderly/coreth/core/bloombits"
"github.com/tenderly/coreth/core/rawdb"
"github.com/tenderly/coreth/core/state"
"github.com/tenderly/coreth/core/types"
"github.com/tenderly/coreth/core/vm"
"github.com/tenderly/coreth/eth/filters"
"github.com/tenderly/coreth/interfaces"
"github.com/tenderly/coreth/params"
"github.com/tenderly/coreth/rpc"
)

// Verify that SimulatedBackend implements required interfaces
Expand Down
Loading
Loading