Skip to content

Commit b25a886

Browse files
authored
Add embedded UnimplementedKeystore struct toKeystore impls (#269)
This PR enables forward compatibility for Keystore implementations by adding an embedded `UnimplementedKeystore` struct imported from `chainlink-common`. It also replaces a reference to the deprecated `loop.Keystore` with `core.Keystore`. Also, bump `chainlink-common` and `chainlink-tron/relayer`. Related: smartcontractkit/chainlink-common#1475 Ultimately related to a Keystore change to enable Workflow key use by Capabilities. [JIRA](https://smartcontract-it.atlassian.net/browse/PRIV-126).
1 parent dcc3dc1 commit b25a886

4 files changed

Lines changed: 83 additions & 69 deletions

File tree

.changeset/fifty-colts-raise.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"chainlink-deployments-framework": minor
3+
---
4+
5+
#changed bump chainlink-common, update Keystore to implement extended Keystore interface

chain/tron/keystore/keystore.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77

88
"github.com/ethereum/go-ethereum/crypto"
99
"github.com/fbsobreira/gotron-sdk/pkg/address"
10-
"github.com/smartcontractkit/chainlink-common/pkg/loop"
10+
"github.com/smartcontractkit/chainlink-common/pkg/types/core"
1111
)
1212

1313
// Keystore is a simple in-memory key store that holds private keys for signing.
@@ -16,10 +16,11 @@ import (
1616
// - value (*ecdsa.PrivateKey): the private key associated with that address
1717
type Keystore struct {
1818
Keys map[string]*ecdsa.PrivateKey
19+
core.UnimplementedKeystore
1920
}
2021

2122
// Assert that *Keystore implements the loop.Keystore interface
22-
var _ loop.Keystore = &Keystore{}
23+
var _ core.Keystore = &Keystore{}
2324

2425
// NewKeystore initializes a new Keystore with a single ECDSA private key.
2526
// The key is stored using the derived Tron address as the map key.

go.mod

Lines changed: 21 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ require (
1616
github.com/google/uuid v1.6.0
1717
github.com/pelletier/go-toml/v2 v2.2.4
1818
github.com/segmentio/ksuid v1.0.4
19-
github.com/smartcontractkit/chain-selectors v1.0.60
19+
github.com/smartcontractkit/chain-selectors v1.0.62
2020
github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250805210128-7f8a0f403c3a
21-
github.com/smartcontractkit/chainlink-common v0.7.1-0.20250425195105-d9eabb4a4519
21+
github.com/smartcontractkit/chainlink-common v0.8.1-0.20250814111752-91ec077f29f5
2222
github.com/smartcontractkit/chainlink-evm/gethwrappers v0.0.0-20250808121824-2c3544aab8f3
2323
github.com/smartcontractkit/chainlink-protos/chainlink-catalog v0.0.2
2424
github.com/smartcontractkit/chainlink-protos/job-distributor v0.12.0
2525
github.com/smartcontractkit/chainlink-testing-framework/framework v0.10.12
2626
github.com/smartcontractkit/chainlink-testing-framework/seth v1.51.2
27-
github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20250422175525-b7575d96bd4d
27+
github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20250815105909-75499abc4335
2828
github.com/smartcontractkit/freeport v0.1.1
2929
github.com/smartcontractkit/mcms v0.21.1
3030
github.com/spf13/viper v1.20.1
@@ -33,7 +33,7 @@ require (
3333
github.com/xssnick/tonutils-go v1.13.0
3434
github.com/zksync-sdk/zksync2-go v1.1.1-0.20250620124214-2c742ee399c6
3535
go.uber.org/zap v1.27.0
36-
golang.org/x/exp v0.0.0-20250408133849-7e4ce0ab07d0
36+
golang.org/x/exp v0.0.0-20250711185948-6ae5c78190dc
3737
golang.org/x/oauth2 v0.30.0
3838
google.golang.org/grpc v1.74.2
3939
google.golang.org/protobuf v1.36.7
@@ -77,8 +77,8 @@ require (
7777
github.com/buger/jsonparser v1.1.1 // indirect
7878
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
7979
github.com/cespare/xxhash/v2 v2.3.0 // indirect
80-
github.com/cloudevents/sdk-go/binding/format/protobuf/v2 v2.15.2 // indirect
81-
github.com/cloudevents/sdk-go/v2 v2.16.0 // indirect
80+
github.com/cloudevents/sdk-go/binding/format/protobuf/v2 v2.16.1 // indirect
81+
github.com/cloudevents/sdk-go/v2 v2.16.1 // indirect
8282
github.com/cockroachdb/errors v1.11.3 // indirect
8383
github.com/cockroachdb/fifo v0.0.0-20240606204812-0bbfbd93a7ce // indirect
8484
github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect
@@ -119,12 +119,12 @@ require (
119119
github.com/go-playground/universal-translator v0.18.1 // indirect
120120
github.com/go-playground/validator/v10 v10.26.0 // indirect
121121
github.com/go-resty/resty/v2 v2.16.3 // indirect
122-
github.com/go-viper/mapstructure/v2 v2.2.1 // indirect
122+
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
123123
github.com/gofrs/flock v0.12.1 // indirect
124124
github.com/gogo/protobuf v1.3.2 // indirect
125125
github.com/golang-jwt/jwt/v4 v4.5.2 // indirect
126126
github.com/golang/protobuf v1.5.4 // indirect
127-
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect
127+
github.com/golang/snappy v1.0.0 // indirect
128128
github.com/google/go-cmp v0.7.0 // indirect
129129
github.com/gorilla/websocket v1.5.3 // indirect
130130
github.com/graph-gophers/graphql-go v1.5.0 // indirect
@@ -151,7 +151,6 @@ require (
151151
github.com/jackc/pgtype v1.14.4 // indirect
152152
github.com/jackc/pgx/v4 v4.18.3 // indirect
153153
github.com/jackpal/go-nat-pmp v1.0.2 // indirect
154-
github.com/jhump/protoreflect v1.15.3 // indirect
155154
github.com/jmespath/go-jmespath v0.4.0 // indirect
156155
github.com/jmoiron/sqlx v1.4.0 // indirect
157156
github.com/jpillora/backoff v1.0.0 // indirect
@@ -190,6 +189,7 @@ require (
190189
github.com/olekukonko/tablewriter v0.0.5 // indirect
191190
github.com/opencontainers/go-digest v1.0.0 // indirect
192191
github.com/opencontainers/image-spec v1.1.1 // indirect
192+
github.com/pelletier/go-toml v1.9.5 // indirect
193193
github.com/pion/dtls/v2 v2.2.12 // indirect
194194
github.com/pion/logging v0.2.2 // indirect
195195
github.com/pion/stun/v2 v2.0.0 // indirect
@@ -218,6 +218,8 @@ require (
218218
github.com/smartcontractkit/chainlink-aptos v0.0.0-20250414155853-651b4e583ee9 // indirect
219219
github.com/smartcontractkit/chainlink-ccip v0.0.0-20250320090719-315440f5b0a7 // indirect
220220
github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20250805210128-7f8a0f403c3a // indirect
221+
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.1 // indirect
222+
github.com/smartcontractkit/chainlink-common/pkg/values v0.0.0-20250806152407-159881c7589c // indirect
221223
github.com/smartcontractkit/grpc-proxy v0.0.0-20240830132753-a7e17fec5ab7 // indirect
222224
github.com/smartcontractkit/libocr v0.0.0-20250408131511-c90716988ee0 // indirect
223225
github.com/sourcegraph/conc v0.3.0 // indirect
@@ -244,25 +246,25 @@ require (
244246
github.com/yusufpapurcu/wmi v1.2.4 // indirect
245247
go.mongodb.org/mongo-driver v1.17.0 // indirect
246248
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
247-
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.60.0 // indirect
249+
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.61.0 // indirect
248250
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 // indirect
249-
go.opentelemetry.io/otel v1.36.0 // indirect
251+
go.opentelemetry.io/otel v1.37.0 // indirect
250252
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.11.0 // indirect
251253
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.11.0 // indirect
252254
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.35.0 // indirect
253255
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.35.0 // indirect
254256
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.35.0 // indirect
255257
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.35.0 // indirect
256258
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.35.0 // indirect
257-
go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.11.0 // indirect
259+
go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.13.0 // indirect
258260
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.35.0 // indirect
259261
go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.35.0 // indirect
260-
go.opentelemetry.io/otel/log v0.11.0 // indirect
261-
go.opentelemetry.io/otel/metric v1.36.0 // indirect
262-
go.opentelemetry.io/otel/sdk v1.36.0 // indirect
263-
go.opentelemetry.io/otel/sdk/log v0.11.0 // indirect
264-
go.opentelemetry.io/otel/sdk/metric v1.36.0 // indirect
265-
go.opentelemetry.io/otel/trace v1.36.0 // indirect
262+
go.opentelemetry.io/otel/log v0.13.0 // indirect
263+
go.opentelemetry.io/otel/metric v1.37.0 // indirect
264+
go.opentelemetry.io/otel/sdk v1.37.0 // indirect
265+
go.opentelemetry.io/otel/sdk/log v0.13.0 // indirect
266+
go.opentelemetry.io/otel/sdk/metric v1.37.0 // indirect
267+
go.opentelemetry.io/otel/trace v1.37.0 // indirect
266268
go.opentelemetry.io/proto/otlp v1.5.0 // indirect
267269
go.uber.org/atomic v1.11.0 // indirect
268270
go.uber.org/multierr v1.11.0 // indirect
@@ -273,7 +275,7 @@ require (
273275
golang.org/x/sys v0.34.0 // indirect
274276
golang.org/x/term v0.33.0 // indirect
275277
golang.org/x/text v0.27.0 // indirect
276-
golang.org/x/time v0.10.0 // indirect
278+
golang.org/x/time v0.12.0 // indirect
277279
golang.org/x/tools v0.35.0 // indirect
278280
google.golang.org/genproto/googleapis/api v0.0.0-20250528174236-200df99c418a // indirect
279281
google.golang.org/genproto/googleapis/rpc v0.0.0-20250528174236-200df99c418a // indirect

0 commit comments

Comments
 (0)