Repository navigation
Conversation
📊 API Diff Results
|
|
There was a problem hiding this comment.
🟡 Changes recommended
TransactionByHashWithOpts must propagate the simulated backend’s pending flag before approval.
1 open issue
What changed in this PR
Updates geth integration to v1.17.8 and regenerates contract bindings to resolve wrapper-generation version skew, while adapting transaction lookup APIs to expose pending status.
Changes:
- Bumps geth and related dependencies and refreshes generation-version records.
- Regenerates bindings, including event-signature mismatch handling in watchers.
- Adds
isPendingto client interfaces, implementations, mocks, and affected callers.
Unresolved issue (moderate): In pkg/client/simulated_backend_client.go:212, TransactionByHashWithOpts still discards the underlying pending flag. It reports uncommitted transactions as non-pending and disagrees with TransactionByHash; it must forward the flag into isPending.
| File | Description |
|---|---|
pkg/relay/evm_service.go |
Adapts transaction lookup to three return values. |
pkg/relay/evm_service_test.go |
Updates the transaction lookup mock expectation. |
pkg/relay/config_poller.go |
Aliases the EVM client import. |
pkg/functions/logpoller_wrapper.go |
Aliases the EVM client import. |
pkg/client/simulated_backend_client.go |
Adds pending-status returns; options lookup still discards the flag. |
pkg/client/rpc_client.go |
Propagates pending status from geth. |
pkg/client/rpc_client_test.go |
Adapts transaction lookup tests. |
pkg/client/null_client.go |
Updates null-client lookup signatures. |
pkg/client/clienttest/client.go |
Updates transaction lookup mocks. |
pkg/client/chain_client.go |
Updates client interfaces and lookup delegation. |
pkg/client/chain_client_test.go |
Adapts the error-path lookup test. |
go.mod |
Bumps geth and related indirect dependencies. |
gethwrappers/shared/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/shared/generated/latest/weth9/weth9.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/weth9_zksync/weth9_zksync.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/werc20_mock/werc20_mock.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/vrf_log_emitter/vrf_log_emitter.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/type_and_version/type_and_version.go |
Refreshes generated imports and references. |
gethwrappers/shared/generated/latest/transparent_upgradeable_proxy/transparent_upgradeable_proxy.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/multicall3/multicall3.go |
Refreshes generated imports and references. |
gethwrappers/shared/generated/latest/mock_v3_aggregator_contract/mock_v3_aggregator_contract.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/log_emitter/log_emitter.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/link_token/link_token.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/i_burn_mint_erc20_upgradeable/i_burn_mint_erc20_upgradeable.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/erc677/erc677.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/erc20/erc20.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/chain_reader_tester/chain_reader_tester.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/burn_mint_erc677/burn_mint_erc677.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/burn_mint_erc20/burn_mint_erc20.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/burn_mint_erc20_with_drip/burn_mint_erc20_with_drip.go |
Refreshes imports and event watchers. |
gethwrappers/shared/generated/latest/aggregator_v3_interface/aggregator_v3_interface.go |
Refreshes generated imports and references. |
gethwrappers/payments/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/operatorforwarder/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/operatorforwarder/generated/operator/operator.go |
Refreshes imports and event watchers. |
gethwrappers/operatorforwarder/generated/operator_factory/operator_factory.go |
Refreshes imports and event watchers. |
gethwrappers/operatorforwarder/generated/link_token_receiver/link_token_receiver.go |
Refreshes generated imports and references. |
gethwrappers/operatorforwarder/generated/authorized_receiver/authorized_receiver.go |
Refreshes imports and event watchers. |
gethwrappers/operatorforwarder/generated/authorized_forwarder/authorized_forwarder.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/llo-feeds/generated/verifier/verifier.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/verifier_v0_5_1/verifier_v0_5_1.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/verifier_v0_5_0/verifier_v0_5_0.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/verifier_proxy/verifier_proxy.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/verifier_proxy_v0_5_1/verifier_proxy_v0_5_1.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/verifier_proxy_v0_5_0/verifier_proxy_v0_5_0.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/reward_manager/reward_manager.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/reward_manager_v0_5_1/reward_manager_v0_5_1.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/reward_manager_v0_5_0/reward_manager_v0_5_0.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/no_op_fee_manager/no_op_fee_manager.go |
Refreshes generated imports and references. |
gethwrappers/llo-feeds/generated/no_op_fee_manager_v0_5_1/no_op_fee_manager_v0_5_1.go |
Refreshes generated imports and references. |
gethwrappers/llo-feeds/generated/mock_fee_manager_v0_5_0/mock_fee_manager_v0_5_0.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/fee_manager/fee_manager.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/fee_manager_v0_5_1/fee_manager_v0_5_1.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/fee_manager_v0_5_0/fee_manager_v0_5_0.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/exposed_verifier/exposed_verifier.go |
Refreshes generated imports and references. |
gethwrappers/llo-feeds/generated/exposed_configurator/exposed_configurator.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/errored_verifier/errored_verifier.go |
Refreshes generated imports and references. |
gethwrappers/llo-feeds/generated/destination_verifier/destination_verifier.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/destination_verifier_proxy/destination_verifier_proxy.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/destination_reward_manager/destination_reward_manager.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/destination_fee_manager/destination_fee_manager.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/configurator/configurator.go |
Refreshes imports and event watchers. |
gethwrappers/llo-feeds/generated/channel_config_store/channel_config_store.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/l2ep/generated/latest/scroll_validator/scroll_validator.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/scroll_cross_domain_governor/scroll_cross_domain_governor.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/scroll_cross_domain_forwarder/scroll_cross_domain_forwarder.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/optimism_validator/optimism_validator.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/optimism_cross_domain_governor/optimism_cross_domain_governor.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/optimism_cross_domain_forwarder/optimism_cross_domain_forwarder.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/arbitrum_validator/arbitrum_validator.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/arbitrum_cross_domain_governor/arbitrum_cross_domain_governor.go |
Refreshes imports and event watchers. |
gethwrappers/l2ep/generated/latest/arbitrum_cross_domain_forwarder/arbitrum_cross_domain_forwarder.go |
Refreshes imports and event watchers. |
gethwrappers/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/generated/vrfv2plus_wrapper/vrfv2plus_wrapper.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2plus_wrapper_load_test_consumer/vrfv2plus_wrapper_load_test_consumer.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2plus_wrapper_consumer_example/vrfv2plus_wrapper_consumer_example.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2plus_reverting_example/vrfv2plus_reverting_example.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2plus_malicious_migrator/vrfv2plus_malicious_migrator.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2plus_consumer_example/vrfv2plus_consumer_example.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2plus_client/vrfv2plus_client.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrfv2_wrapper/vrfv2_wrapper.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2_wrapper_load_test_consumer/vrfv2_wrapper_load_test_consumer.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2_wrapper_interface/vrfv2_wrapper_interface.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrfv2_wrapper_consumer_example/vrfv2_wrapper_consumer_example.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2_transparent_upgradeable_proxy/vrfv2_transparent_upgradeable_proxy.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrfv2_reverting_example/vrfv2_reverting_example.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrfv2_proxy_admin/vrfv2_proxy_admin.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_v2plus_sub_owner/vrf_v2plus_sub_owner.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_v2plus_single_consumer/vrf_v2plus_single_consumer.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_v2plus_load_test_with_metrics/vrf_v2plus_load_test_with_metrics.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_v2_consumer_wrapper/vrf_v2_consumer_wrapper.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_single_consumer_example/vrf_single_consumer_example.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_ownerless_consumer_example/vrf_ownerless_consumer_example.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_owner/vrf_owner.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_owner_test_consumer/vrf_owner_test_consumer.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_mock_ethlink_aggregator/vrf_mock_ethlink_aggregator.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_malicious_consumer_v2/vrf_malicious_consumer_v2.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_malicious_consumer_v2_plus/vrf_malicious_consumer_v2_plus.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_load_test_with_metrics/vrf_load_test_with_metrics.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_load_test_ownerless_consumer/vrf_load_test_ownerless_consumer.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_load_test_external_sub_owner/vrf_load_test_external_sub_owner.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_external_sub_owner_example/vrf_external_sub_owner_example.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_coordinator_v2plus_interface/vrf_coordinator_v2plus_interface.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_coordinator_v2_plus_v2_example/vrf_coordinator_v2_plus_v2_example.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_coordinator_mock/vrf_coordinator_mock.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_consumer_v2/vrf_consumer_v2.go |
Refreshes generated imports and references. |
gethwrappers/generated/vrf_consumer_v2_upgradeable_example/vrf_consumer_v2_upgradeable_example.go |
Refreshes imports and event watchers. |
gethwrappers/generated/vrf_consumer_v2_plus_upgradeable_example/vrf_consumer_v2_plus_upgradeable_example.go |
Refreshes imports and event watchers. |
gethwrappers/generated/trusted_blockhash_store/trusted_blockhash_store.go |
Refreshes imports and event watchers. |
gethwrappers/generated/solidity_vrf_v08_verifier_wrapper/solidity_vrf_v08_verifier_wrapper.go |
Refreshes generated imports and references. |
gethwrappers/generated/solidity_vrf_request_id_v08/solidity_vrf_request_id_v08.go |
Refreshes generated imports and references. |
gethwrappers/generated/solidity_vrf_consumer_interface_v08/solidity_vrf_consumer_interface_v08.go |
Refreshes generated imports and references. |
gethwrappers/generated/keepers_vrf_consumer/keepers_vrf_consumer.go |
Refreshes generated imports and references. |
gethwrappers/generated/counter/counter.go |
Refreshes generated imports and references. |
gethwrappers/generated/chain_specific_util_helper/chain_specific_util_helper.go |
Refreshes generated imports and references. |
gethwrappers/generated/blockhash_store/blockhash_store.go |
Refreshes generated imports and references. |
gethwrappers/generated/batch_vrf_coordinator_v2plus/batch_vrf_coordinator_v2plus.go |
Refreshes imports and event watchers. |
gethwrappers/generated/batch_vrf_coordinator_v2/batch_vrf_coordinator_v2.go |
Refreshes imports and event watchers. |
gethwrappers/generated/batch_blockhash_store/batch_blockhash_store.go |
Refreshes generated imports and references. |
gethwrappers/data-feeds/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/data-feeds/generated/bundle_aggregator_proxy/bundle_aggregator_proxy.go |
Refreshes imports and event watchers. |
gethwrappers/automation-cre/generation/generated-wrapper-dependency-versions-do-not-edit.txt |
Records geth 1.17.8. |
gethwrappers/automation-cre/generated/latest/eth_balance_monitor/eth_balance_monitor.go |
Refreshes imports and event watchers. |
Review effort: Balanced
dhaidashenko
left a comment
There was a problem hiding this comment.
Chainlink build fails due to integration tests and a breaking RPC interface change (failing job)
It would be nice to prep corresponding PRs before merging, to avoid blocking bumps with other changes.
| "github.com/smartcontractkit/chainlink-common/pkg/logger" | ||
| "github.com/smartcontractkit/chainlink-common/pkg/services" | ||
| "github.com/smartcontractkit/chainlink-evm/pkg/client" | ||
| evmclient "github.com/smartcontractkit/chainlink-evm/pkg/client" |
There was a problem hiding this comment.
nit: seems to be a redundant change
|
I'm abandoning this PR in favor of #581 |

Problem
#559 bumped
go-ethereumonly in the root module (v1.17.4), leavinggethwrappers/andgethwrappers/helpers/onv1.17.3.tools/bin/build_abigensilently skips on version mismatch, breaking make abigen and CI's Native Compilation / wrapper-result-validation.Changes
v1.17.8(root, gethwrappers, gethwrappers/helpers; helpers bump merged in Bump go-ethereum in gethwrappers/helpers #572)v1.17.8(GETH_VERSION: 1.17.8)Client.TransactionByHash/TransactionByHashWithOptsnow return(tx, isPending, err)— following the Return custom tx receipt instead of geth #449 precedent of adapting the interface. This letsClientsatisfybind/v2.ContractBackendnatively, so all downstream binding-construction sites compile unchanged. The underlyingRPCClient/SimulatedBackendClientalready receivedisPendingfrom geth's ethclient and were discarding it(tx, _, err = ...); it is now surfaced for real.clienttest.Clientmock updated to the new signature; 4 test call sites updated mechanically