Skip to content

Conversation

@graham-chainlink
Copy link
Collaborator

The original intention was not to compose ChainMetadata and just use it directly by explicitly implementing the ChainMetadata interface and calling ChainMetadatato avoid breaking existing compatibility with EVM, SOL and APTOS and also the clunky initiation code.

However this introduces some duplication across all chains.

So the compromise is to still have the duplication in the existing chains but for new chains, they will compose the ChainMetadata and to avoid referencing another package for the ChainMetadata (clunky), the type alias is introduced.

The original intention was not to compose ChainMetadata and just use it directly by explicitly implementing the BlockChain interface and calling ChainMetadata to avoid breaking existing compatibility with EVM, SOL and APTOS and also the clunky initiation code.

However this introduces some duplication across all chains.

So the compromise is to still have the duplication in the existing chains but for new chains, they will compose the ChainMetadata and to avoid referencing another package for the ChainMetadata, the type alias is introduced.
@graham-chainlink graham-chainlink requested a review from a team as a code owner May 26, 2025 01:55
@changeset-bot
Copy link

changeset-bot bot commented May 26, 2025

🦋 Changeset detected

Latest commit: cec66bb

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
chainlink-deployments-framework Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@cl-sonarqube-production
Copy link

@graham-chainlink graham-chainlink added this pull request to the merge queue May 26, 2025
Merged via the queue into main with commit 8eaef28 May 26, 2025
8 checks passed
@graham-chainlink graham-chainlink deleted the ggoh/compose-base-chain branch May 26, 2025 11:22
github-merge-queue bot pushed a commit that referenced this pull request May 27, 2025
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## chainlink-deployments-framework@0.5.1

### Patch Changes

-
[#114](#114)
[`20b09f9`](20b09f9)
Thanks [@jkongie](https://github.com/jkongie)! - Add `Exists` and
`ExistsN` methods to `Blockchains` to test for the existence of a chain
for the provided selector/s

-
[#117](#117)
[`92c030d`](92c030d)
Thanks [@giogam](https://github.com/giogam)! - feat(datastore):
Implement Stringer for ContractMetadata and AddressRef Keys

-
[#115](#115)
[`3f32425`](3f32425)
Thanks [@graham-chainlink](https://github.com/graham-chainlink)! - fix:
remove unused error return value

-
[#119](#119)
[`bb450f4`](bb450f4)
Thanks [@graham-chainlink](https://github.com/graham-chainlink)! -
ListChainSelectors can filter multiple families

-
[#112](#112)
[`91ac227`](91ac227)
Thanks [@jkongie](https://github.com/jkongie)! - Adds a `Family` method
to the `Blockchain` interface

-
[#116](#116)
[`8eaef28`](8eaef28)
Thanks [@graham-chainlink](https://github.com/graham-chainlink)! -
chains: update sui & ton to compose ChainMetadata

-
[#118](#118)
[`afc5f2f`](afc5f2f)
Thanks [@giogam](https://github.com/giogam)! - feat(datastore): removes
EnvMetadataKey implementation

---------

Co-authored-by: app-token-issuer-engops[bot] <144731339+app-token-issuer-engops[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants