diff --git a/RELEASES.md b/RELEASES.md index e859d7ed5876..340088a6bf9a 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1,5 +1,70 @@ # Release Notes +## [v1.9.9](https://github.com/ava-labs/avalanchego/releases/tag/v1.9.9) + +This version is backwards compatible to [v1.9.0](https://github.com/ava-labs/avalanchego/releases/tag/v1.9.0). It is optional, but encouraged. The supported plugin version is `23`. + +**Note: The `--whitelisted-subnets` flag was deprecated in `v1.9.6`. This is the last release in which it will be supported. Use `--track-subnets` instead.** + +### Monitoring + +- Added warning when the P2P server IP is private +- Added warning when the HTTP server IP is potentially publicly reachable +- Removed `merkledb.trieView#calculateIDs` tracing when no recalculation is needed + +### Databases + +- Capped the number of goroutines that `merkledb.trieView#calculateIDsConcurrent` will create +- Removed `nodb` package +- Refactored `Batch` implementations to share common code +- Added `Batch.Replay` invariant tests +- Converted to use `require` in all `database` interface tests + +### Cryptography + +- Moved the `secp256k1` implementations to a new `secp256k1` package out of the `crypto` package +- Added `rfc6979` compliance tests to the `secp256k1` signing implementation +- Removed unused cryptography implementations `ed25519`, `rsa`, and `rsapss` +- Removed unnecessary cryptography interfaces `crypto.Factory`, `crypto.RecoverableFactory`, `crypto.PublicKey`, and `crypto.PrivateKey` +- Added verification when parsing `secp256k1` public keys to ensure usage of the compressed format + +### API + +- Removed delegators from `platform.getCurrentValidators` unless a single `nodeID` is requested +- Added `delegatorCount` and `delegatorWeight` to the validators returned by `platform.getCurrentValidators` + +### Documentation + +- Improved documentation on the `block.WithVerifyContext` interface +- Fixed `--public-ip` and `--public-ip-resolution-service` CLI flag descriptions +- Updated `README.md` to explicitly reference `SECURITY.md` + +### Coreth + +- Enabled state sync by default when syncing from an empty database +- Increased block gas limit to 15M for `Cortina` Network Upgrade +- Added back file tracer endpoint +- Added back JS tracer + +### Miscellaneous + +- Added `allowedNodes` to the subnet config for `validatorOnly` subnets +- Removed the `hashicorp/go-plugin` dependency to improve plugin flexibility +- Replaced specialized `bag` implementations with generic `bag` implementations +- Added `mempool` package to the `avm` +- Added `chain.State#IsProcessing` to simplify integration with `block.WithVerifyContext` +- Added `StateSyncMinVersion` to `sync.ClientConfig` +- Added validity checks for `InitialStakeDuration` in a custom network genesis +- Removed unnecessary reflect call when marshalling an empty slice + +### Cleanup + +- Renamed `teleporter` package to `warp` +- Replaced `bool` flags in P-chain state diffs with an `enum` +- Refactored subnet configs to more closely align between the primary network and subnets +- Simplified the `utxo.Spender` interface +- Removed unused field `common.Config#Validators` + ## [v1.9.8](https://github.com/ava-labs/avalanchego/releases/tag/v1.9.8) This version is backwards compatible to [v1.9.0](https://github.com/ava-labs/avalanchego/releases/tag/v1.9.0). It is optional, but encouraged. The supported plugin version is `22`. diff --git a/go.mod b/go.mod index e90e654a0b08..d1302dc3a343 100644 --- a/go.mod +++ b/go.mod @@ -12,7 +12,7 @@ require ( github.com/Microsoft/go-winio v0.5.2 github.com/NYTimes/gziphandler v1.1.1 github.com/ava-labs/avalanche-network-runner-sdk v0.3.0 - github.com/ava-labs/coreth v0.11.7-rc.2.0.20230216050717-1f6b2886185a + github.com/ava-labs/coreth v0.11.7-rc.3 github.com/ava-labs/ledger-avalanche/go v0.0.0-20230105152938-00a24d05a8c7 github.com/btcsuite/btcd/btcutil v1.1.3 github.com/decred/dcrd/dcrec/secp256k1/v3 v3.0.0-20200627015759-01fd2de07837 diff --git a/go.sum b/go.sum index 158ce704cb7e..7f7a6177321a 100644 --- a/go.sum +++ b/go.sum @@ -57,8 +57,8 @@ github.com/allegro/bigcache v1.2.1-0.20190218064605-e24eb225f156/go.mod h1:Cb/ax github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/ava-labs/avalanche-network-runner-sdk v0.3.0 h1:TVi9JEdKNU/RevYZ9PyW4pULbEdS+KQDA9Ki2DUvuAs= github.com/ava-labs/avalanche-network-runner-sdk v0.3.0/go.mod h1:SgKJvtqvgo/Bl/c8fxEHCLaSxEbzimYfBopcfrajxQk= -github.com/ava-labs/coreth v0.11.7-rc.2.0.20230216050717-1f6b2886185a h1:rvKt9Q1ap2LEwFpbYyWECGjBae9UNNxG2GJ4cOJiJxk= -github.com/ava-labs/coreth v0.11.7-rc.2.0.20230216050717-1f6b2886185a/go.mod h1:pINlVe6EC4NdcTH46BedxoJdmFVUZrZe+SfOMwIwGr0= +github.com/ava-labs/coreth v0.11.7-rc.3 h1:+GaXmcqzBDd6jFJcPrAQ/RKEFJlqCVcdTF/Q5T6woy4= +github.com/ava-labs/coreth v0.11.7-rc.3/go.mod h1:uIKJtaUX5TI60IS+DpYT8SLXLM2JydgngMF+9q8YjXM= github.com/ava-labs/ledger-avalanche/go v0.0.0-20230105152938-00a24d05a8c7 h1:EdxD90j5sClfL5Ngpz2TlnbnkNYdFPDXa0jDOjam65c= github.com/ava-labs/ledger-avalanche/go v0.0.0-20230105152938-00a24d05a8c7/go.mod h1:XhiXSrh90sHUbkERzaxEftCmUz53eCijshDLZ4fByVM= github.com/benbjohnson/clock v1.3.0 h1:ip6w0uFQkncKQ979AypyG0ER7mqUSBdKLOgAle/AT8A= diff --git a/proto/README.md b/proto/README.md index 1b334e1fe797..dbc8ebb15169 100644 --- a/proto/README.md +++ b/proto/README.md @@ -1,6 +1,6 @@ # Avalanche gRPC -Now Serving: **Protocol Version 22** +Now Serving: **Protocol Version 23** Protobuf files are hosted at [https://buf.build/ava-labs/avalanche](https://buf.build/ava-labs/avalanche) and can be used as dependencies in other projects. diff --git a/scripts/constants.sh b/scripts/constants.sh index b56da6b6d872..4f64f0b90fa9 100755 --- a/scripts/constants.sh +++ b/scripts/constants.sh @@ -9,7 +9,7 @@ AVALANCHE_PATH=$( cd "$( dirname "${BASH_SOURCE[0]}" )"; cd .. && pwd ) # Direct avalanchego_path="$AVALANCHE_PATH/build/avalanchego" plugin_dir=${PLUGIN_DIR:-$HOME/.avalanchego/plugins} evm_path=${EVM_PATH:-$plugin_dir/evm} -coreth_version=${CORETH_VERSION:-'v0.11.7-rc.2.0.20230216050717-1f6b2886185a'} +coreth_version=${CORETH_VERSION:-'v0.11.7-rc.3'} # Set the PATHS GOPATH="$(go env GOPATH)" diff --git a/version/compatibility.json b/version/compatibility.json index 758dcac02365..e4d9aae0811f 100644 --- a/version/compatibility.json +++ b/version/compatibility.json @@ -1,4 +1,7 @@ { + "23": [ + "v1.9.9" + ], "22": [ "v1.9.6", "v1.9.7", diff --git a/version/constants.go b/version/constants.go index b23b8f7c4361..f2ae98c8bbcf 100644 --- a/version/constants.go +++ b/version/constants.go @@ -14,14 +14,14 @@ import ( // RPCChainVMProtocol should be bumped anytime changes are made which require // the plugin vm to upgrade to latest avalanchego release to be compatible. -const RPCChainVMProtocol uint = 22 +const RPCChainVMProtocol uint = 23 // These are globals that describe network upgrades and node versions var ( Current = &Semantic{ Major: 1, Minor: 9, - Patch: 8, + Patch: 9, } CurrentApp = &Application{ Major: Current.Major,