v0.5.0-testnet-holesky
Pre-release
Pre-release
What's Changed
Added ๐
-
Added all features of the
eigensdk
crate to its"full"
feature #370- This includes:
"types"
,"utils"
,"metrics-collectors-economic"
, and"metrics-collectors-rpc-calls"
features.
- This includes:
-
Bump alloy to 0.12 in #381.
-
Added
register_for_operator_sets_with_churn
method toelcontracts/writer
in #382.let el_chain_writer_2 = new_test_writer(http_endpoint.clone(), SECOND_PRIVATE_KEY.to_string()).await; let bls_key_pair = BlsKeyPair::new(OPERATOR_BLS_KEY_2.to_string()).unwrap(); let churn_private_key = FIRST_PRIVATE_KEY.to_string(); let churn_sig_salt = FixedBytes::from([0x05; 32]); let churn_sig_expiry = U256::MAX; let tx_hash = el_chain_writer_2 .register_for_operator_sets_with_churn( SECOND_ADDRESS, // Operator address to register bls_key_pair, // Operator's BLS key pair avs_address, // AVS address vec![operator_set_id], // Operator set ID "socket".to_string(), // Socket address Bytes::from([0]), // Quorum numbers vec![FIRST_ADDRESS], // Operators to kick if quorum is full churn_private_key, // Churn approver's private key churn_sig_salt, // Churn signature salt churn_sig_expiry, // Churn signature expiry ) .await .unwrap();
Breaking Changes ๐
-
Renamed
set_account_identifier
toset_avs
#365- The underlying call was renamed in the v1.1.1 eigenlayer-middleware release.
-
Changed the signature of
build_avs_registry_chain_writer
in #384.- The
operator_state_retriever_addr
parameter was replaced byservice_manager_addr
. - This change was made because later middleware versions do not include
ServiceManager
.
// Before pub async fn build_avs_registry_chain_writer( logger: SharedLogger, provider: String, signer: String, registry_coordinator_addr: Address, _operator_state_retriever_addr: Address, ) -> Result<Self, AvsRegistryError> {} // After pub async fn build_avs_registry_chain_writer( logger: SharedLogger, provider: String, signer: String, registry_coordinator_addr: Address, service_manager_addr: Address, ) -> Result<Self, AvsRegistryError> {}
- The
-
Bump middleware to v1.4.0-testnet-holesky in [#396] , [#365], [#395] and [#388].
- Added method
is_operator_slashable
.
- Added method
let chain_reader = build_el_chain_reader(http_endpoint.clone()).await;
let operator_set = OperatorSet {
id: 1,
avs: Address::ZERO,
};
let is_slashable = chain_reader
.is_operator_slashable(OPERATOR_ADDRESS, operator_set)
.await
.unwrap();
assert!(!is_slashable);
- Added method
get_allocated_stake
.
let chain_reader = build_el_chain_reader(http_endpoint.clone()).await;
let operator_set = OperatorSet {
id: 1,
avs: Address::ZERO,
};
let operators = vec![OPERATOR_ADDRESS];
let strategies = vec![get_erc20_mock_strategy(http_endpoint.to_string()).await];
let slashable_stake = chain_reader
.get_allocated_stake(operator_set, operators, strategies)
.await
.unwrap();
- Added method
get_encumbered_magnitude
.
let chain_reader = build_el_chain_reader(http_endpoint.clone()).await;
let magnitude = chain_reader
.get_encumbered_magnitude(
OPERATOR_ADDRESS,
get_erc20_mock_strategy(http_endpoint.to_string()).await,
)
.await
.unwrap();
- Updated error types in
BlsAggregationServiceError
for channel failures in the BLS Aggregator Service (#392).- Before: A generic
ChannelError
was used for both sender and receiver channel failures. - After: Distinct errors are now provided:
SenderError
is returned when the sender channel fails to send a message to the service.ReceiverError
is returned when the receiver channel fails to receive a message from the service.
- Before: A generic
Removed ๐
- Removed unused empty structs from the library in #371
eigen_client_eth::client::Client
eigen_services_operatorsinfo::OperatorPubKeysService
- Removed the
AvsRegistryChainReader::is_operator_set_quorum
method #365- This function was removed in the v1.1.1 eigenlayer-middleware release.
Documentation ๐
- Reflect 2 bindings(rewardsv2 and slashing) in readme in #383.
Other Changes
- docs: remove foundry docker platform error mention mention by @MegaRedHand in #374
- test: add missing test for query_existing_registered_operator_pub_keys by @damiramirez in #377
- refactor: use
SlashingRegistryCoordinator
inMockAvsDeploymentLib.sol
by @damiramirez in #384 - test: add test for deregister_from_operator_sets by @damiramirez in #386
- docs: rewrite
bls_agg
refactor entry in changelog by @MegaRedHand in #389 - chore: release 0.5.0 by @supernovahs in #397
New Contributors
- @Serial-ATA made their first contribution in #381
Full Changelog: v0.4.0-rc.1...v0.5.0