diff --git a/.dockerignore b/.dockerignore index 29b2d85c80..b57cc807a9 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,7 +1,7 @@ node_modules test_deploy.env -typescript/abacus-deploy/.env +typescript/hyperlane-deploy/.env **/.env **/tsconfig.tsbuildinfo **/tmp.* diff --git a/.github/workflows/monorepo-docker.yml b/.github/workflows/monorepo-docker.yml index 4501e53594..d78fc7119c 100644 --- a/.github/workflows/monorepo-docker.yml +++ b/.github/workflows/monorepo-docker.yml @@ -43,7 +43,7 @@ jobs: with: # list of Docker images to use as base name for tags images: | - gcr.io/abacus-labs-dev/abacus-monorepo + gcr.io/abacus-labs-dev/hyperlane-monorepo # generate Docker tags based on the following events/attributes tags: | type=ref,event=branch diff --git a/.github/workflows/node.yml b/.github/workflows/node.yml index e21c30da3c..820ae243a5 100644 --- a/.github/workflows/node.yml +++ b/.github/workflows/node.yml @@ -87,11 +87,11 @@ jobs: key: ${{ github.sha }} - name: sdk - run: yarn workspace @abacus-network/sdk run test + run: yarn workspace @hyperlane-xyz/sdk run test - name: infra - run: yarn workspace @abacus-network/infra run test + run: yarn workspace @hyperlane-xyz/infra run test - name: helloworld - run: yarn workspace @abacus-network/helloworld run test + run: yarn workspace @hyperlane-xyz/helloworld run test test-sol: env: @@ -108,6 +108,6 @@ jobs: key: ${{ github.sha }} - name: core - run: yarn workspace @abacus-network/core run test + run: yarn workspace @hyperlane-xyz/core run test - name: app - run: yarn workspace @abacus-network/app run test + run: yarn workspace @hyperlane-xyz/app run test diff --git a/.gitignore b/.gitignore index 7021322efd..d5c148673b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ node_modules test_deploy.env -typescript/abacus-deploy/.env +typescript/hyperlane-deploy/.env **/.env **/tsconfig.tsbuildinfo **/tmp.* diff --git a/.prettierrc b/.prettierrc index 8b4ac47ca2..7abcd19c90 100644 --- a/.prettierrc +++ b/.prettierrc @@ -15,7 +15,7 @@ } } ], - "importOrder": ["^@abacus-network/(.*)$", "^../(.*)$", "^./(.*)$"], + "importOrder": ["^@hyperlane-xyz/(.*)$", "^../(.*)$", "^./(.*)$"], "importOrderSeparation": true, "importOrderSortSpecifiers": true } diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 01616b1554..270af8975d 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,19 +1,19 @@ -Abacus is a decentralized project to enable developers to create shared state blockchain applications. +Hyperlane is a decentralized project to enable developers to create shared state blockchain applications. Our goal is to create an environment where a diverse array of participants come to work together bringing forth their unique experience. In that process it is inevitable that contributors and supporters alike will experience differences in location, language, nationality, professional and overall life experience. It is only natural that in such an environment of open and diverse participation disagreements and misunderstandings will happen. More often than not these can be easily resolved informally, however there will be edge cases where behavior can cross the line. -Our goal is to create an environment that is welcoming to all contributors, and fosters a robust community built on collaboration and experimentation. +Our goal is to create an environment that is welcoming to all contributors, and fosters a robust community built on collaboration and experimentation. Thus we believe it is necessary to ensure those rare cases that devolve into harassing, intimidating, or otherwise disruptive behavior are mitigated and understood to be unacceptable by the community. - -This CoC applies to all members of the Abacus Network's community including, but not limited to - developers, participants in meetings both electronically and in person, conferences, or any other project functions. It is important to note that this code is a complement, not a replacement, to legal rights and obligations pertaining to any particular situation. +This CoC applies to all members of the Hyperlane Network's community including, but not limited to - developers, participants in meetings both electronically and in person, conferences, or any other project functions. It is important to note that this code is a complement, not a replacement, to legal rights and obligations pertaining to any particular situation. **Code** + 1. Never harass or bully anyone. Not verbally, not physically, not sexually. Harassment will not be tolerated. 2. Never discrimnate on the basis of personal characteristics or group membership. 3. Treat your fellow contributors with respect, fairness, and professionalism, especially in situations of high pressure. 4. Seek, offer, and accept objective critism of yours and others work, strive to acknowledge the contributions of others. -5. Be transparent and honest about your qualifications and any potential conflicts of interest. Transparency is a key tenant of the Abacus project and we expect it from all contributors. -6. Bring an open and curious mind, the Abacus project is designed to enable developers to express their curiousity, experiment, and build things we couldn't have imagined ourselves. +5. Be transparent and honest about your qualifications and any potential conflicts of interest. Transparency is a key tenant of the Hyperlane project and we expect it from all contributors. +6. Bring an open and curious mind, the Hyperlane project is designed to enable developers to express their curiousity, experiment, and build things we couldn't have imagined ourselves. 7. Stay on track - Do your best to avoid off-topic discussion and make sure you are posting to the correct channel and repositories. Distractions are costly and it is far too easy for work to go off track. 8. Step down properly - Think of your fellow contributors when you step down from the project. Contributors of open-source projects come and go. It is crucial that when you leave the project or reduce your contribution significantly you do so in a way that minimizes disruption and keeps continuity in mind. Concretely this means telling your fellow contributors you are leaving and taking the proper steps to enable a smooth transition for other contributors to pick up where you left off. 9. Respect the privacy of others, and take extreme care to protect confidential data when you are exposed to it. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 37a683582a..e838ba957b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,15 +1,15 @@ -# Contributing to Abacus +# Contributing to Hyperlane -We'd love for you to contribue to Abacus! Here are the guidelines to follow when contributing: +We'd love for you to contribue to Hyperlane! Here are the guidelines to follow when contributing: -* [Code of Conduct](#coc) -* [Questions and Problems](#question) -* [Issue Submission Guidelines](#submit) -* [Pull Request Submission Guidelines](#submit-pr) +- [Code of Conduct](#coc) +- [Questions and Problems](#question) +- [Issue Submission Guidelines](#submit) +- [Pull Request Submission Guidelines](#submit-pr) ## Code of Conduct -Help us keep Abacus open and inclusive. Please read and follow our [Code of Conduct][coc]. +Help us keep Hyperlane open and inclusive. Please read and follow our [Code of Conduct][coc]. ## Got a Question or Problem? @@ -24,16 +24,17 @@ Please submit a [new issue][github-new-issue] if you have a bug report or featur Help us to maximize the effort we can spend fixing issues and adding new features by not reporting duplicate issues. ## Pull Request Submission Guidelines + Thank you for considering to help out with the source code! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes! -If you'd like to contribute to Abacus, please fork, fix, commit and send a pull request +If you'd like to contribute to Hyperlane, please fork, fix, commit and send a pull request for the maintainers to review and merge into the main code base. If you wish to submit more complex changes, please check up with the core devs first on [our Discord Server][discord] to ensure those changes are in line with the general philosophy of the project and/or get some early feedback which can make both your efforts much lighter as well as our review and merge procedures quick and simple. -[coc]: https://github.com/abacus-network/abacus-monorepo/blob/main/CODE_OF_CONDUCT.md -[github-new-issue]: https://github.com/abacus-network/abacus-monorepo/issues/new +[coc]: https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/main/CODE_OF_CONDUCT.md +[github-new-issue]: https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/new [discord]: https://discord.com/invite/KBD3aD78Bb diff --git a/DISCLAIMER.md b/DISCLAIMER.md index df55300d9b..6651ed6232 100644 --- a/DISCLAIMER.md +++ b/DISCLAIMER.md @@ -1,4 +1,4 @@ -The Abacus Protocol is an open generalized interchain messaging protocol that is designed to enable developers to send arbitrary data from one blockchain to another (“Protocol”). Your use of the Protocol is entirely at your own risk. +The Hyperlane Protocol is an open generalized interchain messaging protocol that is designed to enable developers to send arbitrary data from one blockchain to another (“Protocol”). Your use of the Protocol is entirely at your own risk. The Protocol is available on an “as is” basis without warranties of any kind, either express or implied, including, but not limited to, warranties of merchantability, title, fitness for a particular purpose and non-infringement. You assume all risks associated with using the Protocol, and digital assets and decentralized systems generally, including but not limited to, that: (a) digital assets are highly volatile; (b) using digital assets is inherently risky due to both features of such assets and the potential unauthorized acts of third parties; (c) you may not have ready access to assets; diff --git a/Dockerfile b/Dockerfile index ea3831e43d..0181ce596a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ FROM node:16-alpine -WORKDIR /abacus-monorepo +WORKDIR /hyperlane-monorepo RUN apk add --update --no-cache git g++ make py3-pip diff --git a/README.md b/README.md index 7e28007487..32e1d00432 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,14 @@ -# Abacus +# Hyperlane ## Overview -Abacus is an interchain messaging protocol that allows applications to communicate between blockchains. +Hyperlane is an interchain messaging protocol that allows applications to communicate between blockchains. -Developers can use Abacus to share state between blockchains, allowing them to build interchain applications that live natively across multiple chains. +Developers can use Hyperlane to share state between blockchains, allowing them to build interchain applications that live natively across multiple chains. -To read more about interchain applications, how the protocol works, and how to integrate with Abacus, please see the [documentation](https://docs.useabacus.network/). +To read more about interchain applications, how the protocol works, and how to integrate with Hyperlane, please see the [documentation](https://docs.hyperlane.xyz/). -## Working on Abacus +## Working on Hyperlane ### Workspaces diff --git a/package.json b/package.json index 65e2e022f9..ea6d166721 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { - "name": "@abacus-network/monorepo", - "description": "A yarn workspace of many core Abacus packages", + "name": "@hyperlane-xyz/monorepo", + "description": "A yarn workspace of core Hyperlane packages", "version": "0.0.0", "devDependencies": { "@trivago/prettier-plugin-sort-imports": "^3.2.0", diff --git a/rust/README.md b/rust/README.md index 1864fd945d..ec7cf2dd09 100644 --- a/rust/README.md +++ b/rust/README.md @@ -1,4 +1,4 @@ -## Abacus Rust implementations +## Hyperlane Rust implementations ### Setup @@ -43,11 +43,11 @@ info: The currently active `rustc` version is `rustc 1.63.0 (4b91a6ea7 2022-08-0 ### Architecture -The on-chain portions of Abacus are written in Solidity. The rust portions are +The on-chain portions of Hyperlane are written in Solidity. The rust portions are exclusively off-chain. Later, there may be on-chain rust for Near/Solana/ Polkadot. -Abacus will be managed by a number of small off-chain programs ("agents"). Each +Hyperlane will be managed by a number of small off-chain programs ("agents"). Each of these will have a specific role. We want these roles to be simple, and easily described. Each of these agents will connect to a home chain and any number of replicas. They need to be configured with chain connection details @@ -84,7 +84,7 @@ We use the tokio async runtime environment. Please see the docs ### Running Locally -From within the `abacus-monorepo/rust` directory, run +From within the `hyperlane-monorepo/rust` directory, run ```bash cargo run -r -p run-locally diff --git a/rust/helm/abacus-agent/README.md b/rust/helm/abacus-agent/README.md index f416fca6f3..32990d31cc 100644 --- a/rust/helm/abacus-agent/README.md +++ b/rust/helm/abacus-agent/README.md @@ -1,43 +1,43 @@ -# Abacus-Agent Helm Chart +# Hyperlane-Agent Helm Chart ![Version: 0.1.0](https://img.shields.io/badge/Version-0.1.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.1.0](https://img.shields.io/badge/AppVersion-0.1.0-informational?style=flat-square) -A Helm Chart that encapsulates the deployment of the Abacus Rust Agent(s). It is currently designed to be deployed against a Google Kubernetes Engine cluster, but specification of another PVC Storage Class should be sufficient to make it compatible with other cloud providers. +A Helm Chart that encapsulates the deployment of the Hyperlane Rust Agent(s). It is currently designed to be deployed against a Google Kubernetes Engine cluster, but specification of another PVC Storage Class should be sufficient to make it compatible with other cloud providers. Additional documentation is present in comments in `yalues.yaml`. ## Values -| Key | Type | Default | Description | -| ----------------------------------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| affinity | object | `{}` | | -| fullnameOverride | string | `""` | | -| image.pullPolicy | string | `"Always"` | | -| image.repository | string | `"gcr.io/clabs-optics/optics-agent"` | Main repository for Abacus Agent binaries, provided by cLabs | -| image.tag | string | `"latest"` | Overrides the image tag whose default is the chart appVersion. | -| imagePullSecrets | list | `[]` | | -| nameOverride | string | `""` | | -| nodeSelector | object | `{}` | | -| abacus | object | `{"baseConfig":"base.json","outboxChain":{"address":null,"connectionType":null,"connectionUrl":null,"domain":null,"name":"goerli","rpcStyle":null},enabled":false,"messageInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]},"processor":{"enabled":false,"pollingInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]},"relayer":{"enabled":false,"pollingInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]},"inboxChains":[{"address":null,"connectionType":null,"connectionUrl":null,"domain":null,"name":"alfajores","rpcStyle":null}],"runEnv":"default","validator":{"signer":"","enabled":false,"pollingInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}],"updatePause":null}}` | Abacus Overrides By Default, Abacus Agents load the config baked into the Docker Image Pass values here in order to override the values in the config Note: For successful operation, one _must_ pass signer keys as they are not baked into the image for security reasons. | -| abacus.outboxChain.address | string | `nil` | The contract address for the home contract | -| abacus.outboxChain.connectionUrl | string | `nil` | Connection string pointing to an RPC endpoint for the home chain | -| abacus.outboxChain.domain | string | `nil` | The hard-coded domain corresponding to this blockchain | -| abacus.outboxChain.rpcStyle | string | `nil` | RPC Style | -| abacus.relayer.enabled | bool | `false` | Enables or disables the relayer | -| abacus.inboxChains | list | `[{"address":null,"connectionType":null,"connectionUrl":null,"domain":null,"name":"alfajores","rpcStyle":null}]` | Replica chain overrides, a sequence | -| abacus.inboxChains[0].address | string | `nil` | The contract address for the replica contract | -| abacus.inboxChains[0].connectionUrl | string | `nil` | Connection string pointing to an RPC endpoint for the replica chain | -| abacus.validator.signer | string | `""` | Specialized key used by validator and watcher used to sign attestations, separate from validator.keys | -| abacus.validator.enabled | bool | `false` | Enables or disables the validator | -| abacus.validator.pollingInterval | string | `nil` | How long to wait between checking for updates | -| abacus.validator.signers | list | `[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]` | Trnsaction Signing keys for home and replica(s) | -| podAnnotations | object | `{}` | | -| podSecurityContext | object | `{}` | | -| replicaCount | int | `1` | | -| resources | object | `{}` | | -| securityContext | object | `{}` | | -| tolerations | list | `[]` | | -| volumeStorageClass | string | `"standard"` | Default to standard storageclass provided by GKE | +| Key | Type | Default | Description | +| ----------------------------------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| affinity | object | `{}` | | +| fullnameOverride | string | `""` | | +| image.pullPolicy | string | `"Always"` | | +| image.repository | string | `"gcr.io/clabs-optics/optics-agent"` | Main repository for Hyperlane Agent binaries, provided by cLabs | +| image.tag | string | `"latest"` | Overrides the image tag whose default is the chart appVersion. | +| imagePullSecrets | list | `[]` | | +| nameOverride | string | `""` | | +| nodeSelector | object | `{}` | | +| abacus | object | `{"baseConfig":"base.json","outboxChain":{"address":null,"connectionType":null,"connectionUrl":null,"domain":null,"name":"goerli","rpcStyle":null},enabled":false,"messageInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]},"processor":{"enabled":false,"pollingInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]},"relayer":{"enabled":false,"pollingInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]},"inboxChains":[{"address":null,"connectionType":null,"connectionUrl":null,"domain":null,"name":"alfajores","rpcStyle":null}],"runEnv":"default","validator":{"signer":"","enabled":false,"pollingInterval":null,"signers":[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}],"updatePause":null}}` | Hyperlane Overrides By Default, Hyperlane Agents load the config baked into the Docker Image Pass values here in order to override the values in the config Note: For successful operation, one _must_ pass signer keys as they are not baked into the image for security reasons. | +| abacus.outboxChain.address | string | `nil` | The contract address for the home contract | +| abacus.outboxChain.connectionUrl | string | `nil` | Connection string pointing to an RPC endpoint for the home chain | +| abacus.outboxChain.domain | string | `nil` | The hard-coded domain corresponding to this blockchain | +| abacus.outboxChain.rpcStyle | string | `nil` | RPC Style | +| abacus.relayer.enabled | bool | `false` | Enables or disables the relayer | +| abacus.inboxChains | list | `[{"address":null,"connectionType":null,"connectionUrl":null,"domain":null,"name":"alfajores","rpcStyle":null}]` | Replica chain overrides, a sequence | +| abacus.inboxChains[0].address | string | `nil` | The contract address for the replica contract | +| abacus.inboxChains[0].connectionUrl | string | `nil` | Connection string pointing to an RPC endpoint for the replica chain | +| abacus.validator.signer | string | `""` | Specialized key used by validator and watcher used to sign attestations, separate from validator.keys | +| abacus.validator.enabled | bool | `false` | Enables or disables the validator | +| abacus.validator.pollingInterval | string | `nil` | How long to wait between checking for updates | +| abacus.validator.signers | list | `[{"key":"","name":"goerli"},{"key":"","name":"alfajores"}]` | Trnsaction Signing keys for home and replica(s) | +| podAnnotations | object | `{}` | | +| podSecurityContext | object | `{}` | | +| replicaCount | int | `1` | | +| resources | object | `{}` | | +| securityContext | object | `{}` | | +| tolerations | list | `[]` | | +| volumeStorageClass | string | `"standard"` | Default to standard storageclass provided by GKE | --- diff --git a/solidity/app/contracts/AbacusConnectionClient.sol b/solidity/app/contracts/AbacusConnectionClient.sol index ad3ccebf60..cf96f8a34c 100644 --- a/solidity/app/contracts/AbacusConnectionClient.sol +++ b/solidity/app/contracts/AbacusConnectionClient.sol @@ -2,9 +2,9 @@ pragma solidity >=0.6.11; // ============ Internal Imports ============ -import {IInterchainGasPaymaster} from "@abacus-network/core/interfaces/IInterchainGasPaymaster.sol"; -import {IOutbox} from "@abacus-network/core/interfaces/IOutbox.sol"; -import {IAbacusConnectionManager} from "@abacus-network/core/interfaces/IAbacusConnectionManager.sol"; +import {IInterchainGasPaymaster} from "@hyperlane-xyz/core/interfaces/IInterchainGasPaymaster.sol"; +import {IOutbox} from "@hyperlane-xyz/core/interfaces/IOutbox.sol"; +import {IAbacusConnectionManager} from "@hyperlane-xyz/core/interfaces/IAbacusConnectionManager.sol"; // ============ External Imports ============ import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol"; diff --git a/solidity/app/contracts/Router.sol b/solidity/app/contracts/Router.sol index 5479c8cc92..c80939ca75 100644 --- a/solidity/app/contracts/Router.sol +++ b/solidity/app/contracts/Router.sol @@ -3,10 +3,10 @@ pragma solidity >=0.6.11; // ============ Internal Imports ============ import {AbacusConnectionClient} from "./AbacusConnectionClient.sol"; -import {IAbacusConnectionManager} from "@abacus-network/core/interfaces/IAbacusConnectionManager.sol"; -import {IInterchainGasPaymaster} from "@abacus-network/core/interfaces/IInterchainGasPaymaster.sol"; -import {IMessageRecipient} from "@abacus-network/core/interfaces/IMessageRecipient.sol"; -import {IOutbox} from "@abacus-network/core/interfaces/IOutbox.sol"; +import {IAbacusConnectionManager} from "@hyperlane-xyz/core/interfaces/IAbacusConnectionManager.sol"; +import {IInterchainGasPaymaster} from "@hyperlane-xyz/core/interfaces/IInterchainGasPaymaster.sol"; +import {IMessageRecipient} from "@hyperlane-xyz/core/interfaces/IMessageRecipient.sol"; +import {IOutbox} from "@hyperlane-xyz/core/interfaces/IOutbox.sol"; abstract contract Router is AbacusConnectionClient, IMessageRecipient { // ============ Mutable Storage ============ diff --git a/solidity/app/contracts/test/TestAbacusConnectionClient.sol b/solidity/app/contracts/test/TestAbacusConnectionClient.sol index b7e1f5c3eb..071cea25e0 100644 --- a/solidity/app/contracts/test/TestAbacusConnectionClient.sol +++ b/solidity/app/contracts/test/TestAbacusConnectionClient.sol @@ -1,6 +1,6 @@ // SPDX-License-Identifier: MIT OR Apache-2.0 pragma solidity >=0.6.11; -import {IOutbox} from "@abacus-network/core/interfaces/IOutbox.sol"; +import {IOutbox} from "@hyperlane-xyz/core/interfaces/IOutbox.sol"; import "../AbacusConnectionClient.sol"; diff --git a/solidity/app/package.json b/solidity/app/package.json index 0f7c7809d6..7b60b0b614 100644 --- a/solidity/app/package.json +++ b/solidity/app/package.json @@ -1,10 +1,10 @@ { - "name": "@abacus-network/app", - "description": "Solidity contracts for Abacus apps", - "version": "0.4.1", + "name": "@hyperlane-xyz/app", + "description": "Solidity contracts for Hyperlane apps", + "version": "0.5.0-beta0", "dependencies": { - "@abacus-network/core": "0.4.1", - "@abacus-network/utils": "0.4.1", + "@hyperlane-xyz/core": "0.5.0-beta0", + "@hyperlane-xyz/utils": "0.5.0-beta0", "@openzeppelin/contracts-upgradeable": "^4.5.0" }, "devDependencies": { @@ -35,14 +35,14 @@ "/contracts", "/interfaces" ], - "homepage": "https://www.useabacus.network", + "homepage": "https://www.hyperlane.xyz", "keywords": [ - "Abacus", + "Hyperlane", "Solidity" ], "license": "Apache-2.0", "main": "dist/index.js", - "repository": "https://github.com/abacus-network/abacus-monorepo", + "repository": "https://github.com/hyperlane-xyz/hyperlane-monorepo", "scripts": { "build": "hardhat compile && tsc", "clean": "hardhat clean && rm -rf ./dist ./cache", diff --git a/solidity/app/test/abacusConnectionClient.test.ts b/solidity/app/test/abacusConnectionClient.test.ts index 2a22966279..48dc145523 100644 --- a/solidity/app/test/abacusConnectionClient.test.ts +++ b/solidity/app/test/abacusConnectionClient.test.ts @@ -10,7 +10,7 @@ import { Outbox__factory, TestInbox__factory, TestMultisigValidatorManager__factory, -} from '@abacus-network/core'; +} from '@hyperlane-xyz/core'; import { TestAbacusConnectionClient, diff --git a/solidity/app/test/router.test.ts b/solidity/app/test/router.test.ts index e97982c58d..4fe20b961d 100644 --- a/solidity/app/test/router.test.ts +++ b/solidity/app/test/router.test.ts @@ -14,8 +14,8 @@ import { TestInbox, TestInbox__factory, TestMultisigValidatorManager__factory, -} from '@abacus-network/core'; -import { utils } from '@abacus-network/utils'; +} from '@hyperlane-xyz/core'; +import { utils } from '@hyperlane-xyz/utils'; import { TestRouter, TestRouter__factory } from '../types'; diff --git a/solidity/core/README.md b/solidity/core/README.md index 21be2042fa..f5428eb5f3 100644 --- a/solidity/core/README.md +++ b/solidity/core/README.md @@ -1,6 +1,6 @@ -## Abacus Solidity +## Hyperlane Solidity -On-chain implementations of Abacus in Solidity. +On-chain implementations of Hyperlane in Solidity. ### Setup diff --git a/solidity/core/package.json b/solidity/core/package.json index 9e42f03d4c..a348b1d5d2 100644 --- a/solidity/core/package.json +++ b/solidity/core/package.json @@ -1,9 +1,9 @@ { - "name": "@abacus-network/core", - "description": "Core solidity contracts for Abacus", - "version": "0.4.1", + "name": "@hyperlane-xyz/core", + "description": "Core solidity contracts for Hyperlane", + "version": "0.5.0-beta0", "dependencies": { - "@abacus-network/utils": "0.4.1", + "@hyperlane-xyz/utils": "0.5.0-beta0", "@openzeppelin/contracts": "^4.6.0", "@openzeppelin/contracts-upgradeable": "^4.6.0", "@summa-tx/memview-sol": "^2.0.0" @@ -35,14 +35,14 @@ "/contracts", "/interfaces" ], - "homepage": "https://www.useabacus.network", + "homepage": "https://www.hyperlane.xyz", "keywords": [ - "Abacus", + "Hyperlane", "Solidity" ], "license": "Apache-2.0", "main": "dist/index.js", - "repository": "https://github.com/abacus-network/abacus-monorepo", + "repository": "https://github.com/hyperlane-xyz/hyperlane-monorepo", "scripts": { "build": "hardhat compile && tsc", "clean": "hardhat clean && rm -rf ./dist ./cache", diff --git a/solidity/core/test/inbox.test.ts b/solidity/core/test/inbox.test.ts index 1dc76a2426..56cc9b78f9 100644 --- a/solidity/core/test/inbox.test.ts +++ b/solidity/core/test/inbox.test.ts @@ -3,7 +3,7 @@ import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers'; import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { types, utils } from '@abacus-network/utils'; +import { types, utils } from '@hyperlane-xyz/utils'; import { BadRecipient1__factory, diff --git a/solidity/core/test/lib/mailboxes.ts b/solidity/core/test/lib/mailboxes.ts index 52d02b2821..13873df96f 100644 --- a/solidity/core/test/lib/mailboxes.ts +++ b/solidity/core/test/lib/mailboxes.ts @@ -1,7 +1,7 @@ import { expect } from 'chai'; import { ethers } from 'ethers'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { TestOutbox } from '../../types'; import { DispatchEvent } from '../../types/contracts/Outbox'; diff --git a/solidity/core/test/message.test.ts b/solidity/core/test/message.test.ts index 05bdc6b41d..582ffc0156 100644 --- a/solidity/core/test/message.test.ts +++ b/solidity/core/test/message.test.ts @@ -1,7 +1,7 @@ import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { TestMessage, TestMessage__factory } from '../types'; diff --git a/solidity/core/test/mockMailbox.test.ts b/solidity/core/test/mockMailbox.test.ts index a0015f1f23..1a1ad16cc9 100644 --- a/solidity/core/test/mockMailbox.test.ts +++ b/solidity/core/test/mockMailbox.test.ts @@ -1,7 +1,7 @@ import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { TestRecipient__factory } from '../dist'; import { MockInbox__factory, MockOutbox__factory } from '../types'; diff --git a/solidity/core/test/outbox.test.ts b/solidity/core/test/outbox.test.ts index 9a1cbeec40..ffe1d9c693 100644 --- a/solidity/core/test/outbox.test.ts +++ b/solidity/core/test/outbox.test.ts @@ -2,7 +2,7 @@ import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers'; import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { types, utils } from '@abacus-network/utils'; +import { types, utils } from '@hyperlane-xyz/utils'; import { TestOutbox, TestOutbox__factory } from '../types'; diff --git a/solidity/core/test/testSendReceiver.test.ts b/solidity/core/test/testSendReceiver.test.ts index 499154ce4a..2b62788fc5 100644 --- a/solidity/core/test/testSendReceiver.test.ts +++ b/solidity/core/test/testSendReceiver.test.ts @@ -1,7 +1,7 @@ import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { TestSendReceiver__factory } from '../types'; diff --git a/solidity/core/test/validator-manager/inboxValidatorManager.test.ts b/solidity/core/test/validator-manager/inboxValidatorManager.test.ts index e0127a63bd..35dafe76c3 100644 --- a/solidity/core/test/validator-manager/inboxValidatorManager.test.ts +++ b/solidity/core/test/validator-manager/inboxValidatorManager.test.ts @@ -2,7 +2,7 @@ import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers'; import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { Validator, types, utils } from '@abacus-network/utils'; +import { Validator, types, utils } from '@hyperlane-xyz/utils'; import { Inbox, diff --git a/solidity/core/test/validator-manager/multisigValidatorManager.test.ts b/solidity/core/test/validator-manager/multisigValidatorManager.test.ts index 19f417fbd1..cf1ebb5679 100644 --- a/solidity/core/test/validator-manager/multisigValidatorManager.test.ts +++ b/solidity/core/test/validator-manager/multisigValidatorManager.test.ts @@ -3,7 +3,7 @@ import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers'; import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { Validator } from '@abacus-network/utils'; +import { Validator } from '@hyperlane-xyz/utils'; import { TestMultisigValidatorManager, diff --git a/solidity/core/test/validator-manager/outboxValidatorManager.test.ts b/solidity/core/test/validator-manager/outboxValidatorManager.test.ts index 77c7409a72..63993075b7 100644 --- a/solidity/core/test/validator-manager/outboxValidatorManager.test.ts +++ b/solidity/core/test/validator-manager/outboxValidatorManager.test.ts @@ -2,7 +2,7 @@ import { SignerWithAddress } from '@nomiclabs/hardhat-ethers/signers'; import { expect } from 'chai'; import { ethers } from 'hardhat'; -import { Validator, types, utils } from '@abacus-network/utils'; +import { Validator, types, utils } from '@hyperlane-xyz/utils'; import { OutboxValidatorManager, diff --git a/solidity/core/test/validator-manager/utils.ts b/solidity/core/test/validator-manager/utils.ts index 072974b632..de4760aabf 100644 --- a/solidity/core/test/validator-manager/utils.ts +++ b/solidity/core/test/validator-manager/utils.ts @@ -1,4 +1,4 @@ -import { Validator, types } from '@abacus-network/utils'; +import { Validator, types } from '@hyperlane-xyz/utils'; // Signs a checkpoint with the provided validators and returns // the signatures sorted by validator addresses in ascending order diff --git a/typescript/helloworld/README.md b/typescript/helloworld/README.md index 26a4d2a6a1..05f943dd93 100644 --- a/typescript/helloworld/README.md +++ b/typescript/helloworld/README.md @@ -1,6 +1,6 @@ -# Abacus 'Hello World' App Template +# Hyperlane 'Hello World' App Template -A basic Abacus application with a router contract that can dispatch messages. +A basic Hyperlane application with a router contract that can dispatch messages. ## Setup @@ -24,4 +24,4 @@ yarn lint ## Learn more -For more information, see the [Abacus documentation](https://docs.useabacus.network/abacus-docs/developers/getting-started). +For more information, see the [Hyperlane documentation](https://docs.hyperlane.xyz/hyperlane-docs/developers/getting-started). diff --git a/typescript/helloworld/contracts/HelloWorld.sol b/typescript/helloworld/contracts/HelloWorld.sol index fa43f81ec2..6467a91737 100644 --- a/typescript/helloworld/contracts/HelloWorld.sol +++ b/typescript/helloworld/contracts/HelloWorld.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.13; // ============ External Imports ============ -import {Router} from "@abacus-network/app/contracts/Router.sol"; +import {Router} from "@hyperlane-xyz/app/contracts/Router.sol"; /* * @title The Hello World App diff --git a/typescript/helloworld/package.json b/typescript/helloworld/package.json index 258adfe242..75a47323a9 100644 --- a/typescript/helloworld/package.json +++ b/typescript/helloworld/package.json @@ -1,10 +1,10 @@ { - "name": "@abacus-network/helloworld", - "description": "A basic skeleton of an Abacus app", - "version": "0.5.0", + "name": "@hyperlane-xyz/helloworld", + "description": "A basic skeleton of an Hyperlane app", + "version": "0.5.0-beta0", "dependencies": { - "@abacus-network/sdk": "^0.4.1", - "@abacus-network/utils": "^0.4.1", + "@hyperlane-xyz/sdk": "^0.5.0-beta0", + "@hyperlane-xyz/utils": "^0.5.0-beta0", "@openzeppelin/contracts-upgradeable": "^4.6.0", "ethers": "^5.6.8" }, @@ -36,9 +36,9 @@ "/dist", "/contracts" ], - "homepage": "https://www.useabacus.network", + "homepage": "https://www.hyperlane.xyz", "keywords": [ - "Abacus", + "Hyperlane", "HelloWorld", "Solidity", "Typescript" @@ -48,7 +48,7 @@ "packageManager": "yarn@3.2.0", "repository": { "type": "git", - "url": "https://github.com/abacus-network/abacus-app-template" + "url": "https://github.com/hyperlane-xyz/hyperlane-app-template" }, "scripts": { "build": "hardhat compile && tsc", diff --git a/typescript/helloworld/scripts/sync-with-template-repo.ts b/typescript/helloworld/scripts/sync-with-template-repo.ts index f86133ba2b..f9cefe89a5 100644 --- a/typescript/helloworld/scripts/sync-with-template-repo.ts +++ b/typescript/helloworld/scripts/sync-with-template-repo.ts @@ -17,7 +17,7 @@ import { existsSync } from 'fs'; const SKIP_GIT_FLAG = '--no-commit'; -const PATH_TO_TEMPLATE_REPO = '../../../abacus-app-template'; +const PATH_TO_TEMPLATE_REPO = '../../../hyperlane-app-template'; const SYNC_WHITELIST = [ 'contracts', diff --git a/typescript/helloworld/src/app/app.ts b/typescript/helloworld/src/app/app.ts index 44cc7e1d3f..028b1ea19e 100644 --- a/typescript/helloworld/src/app/app.ts +++ b/typescript/helloworld/src/app/app.ts @@ -1,15 +1,15 @@ import { BigNumber, ethers } from 'ethers'; import { - AbacusApp, - AbacusCore, ChainMap, ChainName, ChainNameToDomainId, + HyperlaneApp, + HyperlaneCore, MultiProvider, Remotes, -} from '@abacus-network/sdk'; -import { debug } from '@abacus-network/utils'; +} from '@hyperlane-xyz/sdk'; +import { debug } from '@hyperlane-xyz/utils'; import { HelloWorldContracts } from './contracts'; @@ -20,9 +20,9 @@ type Counts = { export class HelloWorldApp< Chain extends ChainName = ChainName, -> extends AbacusApp { +> extends HyperlaneApp { constructor( - public readonly core: AbacusCore, + public readonly core: HyperlaneCore, contractsMap: ChainMap, multiProvider: MultiProvider, ) { @@ -39,7 +39,7 @@ export class HelloWorldApp< const toDomain = ChainNameToDomainId[to]; const chainConnection = this.multiProvider.getChainConnection(from); - // apply gas buffer due to https://github.com/abacus-network/abacus-monorepo/issues/634 + // apply gas buffer due to https://github.com/hyperlane-xyz/hyperlane-monorepo/issues/634 const estimated = await sender.estimateGas.sendHelloWorld( toDomain, message, diff --git a/typescript/helloworld/src/app/contracts.ts b/typescript/helloworld/src/app/contracts.ts index 363b51a028..82ca845d51 100644 --- a/typescript/helloworld/src/app/contracts.ts +++ b/typescript/helloworld/src/app/contracts.ts @@ -1,4 +1,4 @@ -import { RouterContracts, RouterFactories } from '@abacus-network/sdk'; +import { RouterContracts, RouterFactories } from '@hyperlane-xyz/sdk'; import { HelloWorld, HelloWorld__factory } from '../types'; diff --git a/typescript/helloworld/src/deploy/check.ts b/typescript/helloworld/src/deploy/check.ts index fb87a9818e..ad0c0eb60f 100644 --- a/typescript/helloworld/src/deploy/check.ts +++ b/typescript/helloworld/src/deploy/check.ts @@ -1,4 +1,4 @@ -import { AbacusRouterChecker, ChainName } from '@abacus-network/sdk'; +import { ChainName, HyperlaneRouterChecker } from '@hyperlane-xyz/sdk'; import { HelloWorldApp } from '../app/app'; import { HelloWorldContracts } from '../app/contracts'; @@ -7,7 +7,7 @@ import { HelloWorldConfig } from './config'; export class HelloWorldChecker< Chain extends ChainName, -> extends AbacusRouterChecker< +> extends HyperlaneRouterChecker< Chain, HelloWorldApp, HelloWorldConfig, diff --git a/typescript/helloworld/src/deploy/config.ts b/typescript/helloworld/src/deploy/config.ts index c2c84432f1..d52df55bbd 100644 --- a/typescript/helloworld/src/deploy/config.ts +++ b/typescript/helloworld/src/deploy/config.ts @@ -1,4 +1,4 @@ -import { RouterConfig, chainConnectionConfigs } from '@abacus-network/sdk'; +import { RouterConfig, chainConnectionConfigs } from '@hyperlane-xyz/sdk'; export type HelloWorldConfig = RouterConfig; diff --git a/typescript/helloworld/src/deploy/deploy.ts b/typescript/helloworld/src/deploy/deploy.ts index 6245aeb6c1..b69c579307 100644 --- a/typescript/helloworld/src/deploy/deploy.ts +++ b/typescript/helloworld/src/deploy/deploy.ts @@ -1,10 +1,10 @@ import { - AbacusCore, - AbacusRouterDeployer, ChainMap, ChainName, + HyperlaneCore, + HyperlaneRouterDeployer, MultiProvider, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { HelloWorldContracts, @@ -16,7 +16,7 @@ import { HelloWorldConfig } from './config'; export class HelloWorldDeployer< Chain extends ChainName, -> extends AbacusRouterDeployer< +> extends HyperlaneRouterDeployer< Chain, HelloWorldConfig, HelloWorldContracts, @@ -25,7 +25,7 @@ export class HelloWorldDeployer< constructor( multiProvider: MultiProvider, configMap: ChainMap, - protected core: AbacusCore, + protected core: HyperlaneCore, ) { super(multiProvider, configMap, helloWorldFactories, {}); } @@ -34,7 +34,7 @@ export class HelloWorldDeployer< // If no custom logic is needed, call deployContract for the router async deployContracts(chain: Chain, config: HelloWorldConfig) { const router = await this.deployContract(chain, 'router', [ - config.abacusConnectionManager, + config.connectionManager, config.interchainGasPaymaster, ]); return { diff --git a/typescript/helloworld/src/scripts/check.ts b/typescript/helloworld/src/scripts/check.ts index 8cd259f687..de7798eabd 100644 --- a/typescript/helloworld/src/scripts/check.ts +++ b/typescript/helloworld/src/scripts/check.ts @@ -1,12 +1,12 @@ import { - AbacusCore, ChainMap, ChainName, + HyperlaneCore, MultiProvider, buildContracts, getChainToOwnerMap, objMap, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { HelloWorldApp } from '../app/app'; import { HelloWorldContracts, helloWorldFactories } from '../app/contracts'; @@ -33,7 +33,7 @@ async function check() { helloWorldFactories, ) as ChainMap; - const core = AbacusCore.fromEnvironment('testnet2', multiProvider); + const core = HyperlaneCore.fromEnvironment('testnet2', multiProvider); const app = new HelloWorldApp(core, contractsMap, multiProvider); const config = core.extendWithConnectionClientConfig( getChainToOwnerMap(prodConfigs, ownerAddress), diff --git a/typescript/helloworld/src/scripts/deploy.ts b/typescript/helloworld/src/scripts/deploy.ts index 5348a99421..587cec82aa 100644 --- a/typescript/helloworld/src/scripts/deploy.ts +++ b/typescript/helloworld/src/scripts/deploy.ts @@ -1,12 +1,12 @@ import { Wallet } from 'ethers'; import { - AbacusCore, + HyperlaneCore, MultiProvider, getChainToOwnerMap, objMap, serializeContracts, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { prodConfigs } from '../deploy/config'; import { HelloWorldDeployer } from '../deploy/deploy'; @@ -23,7 +23,7 @@ async function main() { })); const multiProvider = new MultiProvider(chainProviders); - const core = AbacusCore.fromEnvironment('testnet2', multiProvider); + const core = HyperlaneCore.fromEnvironment('testnet2', multiProvider); const config = core.extendWithConnectionClientConfig( getChainToOwnerMap(prodConfigs, signer.address), ); diff --git a/typescript/helloworld/src/test/deploy.test.ts b/typescript/helloworld/src/test/deploy.test.ts index bfd3d81ca5..77c503606d 100644 --- a/typescript/helloworld/src/test/deploy.test.ts +++ b/typescript/helloworld/src/test/deploy.test.ts @@ -10,7 +10,7 @@ import { getChainToOwnerMap, getTestMultiProvider, testChainConnectionConfigs, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { HelloWorldApp } from '../app/app'; import { HelloWorldContracts } from '../app/contracts'; diff --git a/typescript/helloworld/src/test/helloworld.test.ts b/typescript/helloworld/src/test/helloworld.test.ts index c3b9246f58..6b8bec2714 100644 --- a/typescript/helloworld/src/test/helloworld.test.ts +++ b/typescript/helloworld/src/test/helloworld.test.ts @@ -12,7 +12,7 @@ import { getChainToOwnerMap, getTestMultiProvider, testChainConnectionConfigs, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { HelloWorldConfig } from '../deploy/config'; import { HelloWorldDeployer } from '../deploy/deploy'; @@ -72,7 +72,7 @@ describe('HelloWorld', async () => { it('handles a message', async () => { await local.sendHelloWorld(remoteDomain, 'World'); - // Mock processing of the message by Abacus + // Mock processing of the message by Hyperlane await coreApp.processOutboundMessages(localChain); // The initial message has been dispatched. expect(await local.sent()).to.equal(1); diff --git a/typescript/ica/README.md b/typescript/ica/README.md index b51749cfa3..2b1e3b2e3a 100644 --- a/typescript/ica/README.md +++ b/typescript/ica/README.md @@ -1,6 +1,9 @@ -This package provides smart contracts with "sovereignty" on remote Abacus chains via operating interchain accounts. +# Interchain Accounts + +This package provides smart contracts with "sovereignty" on remote Hyperlane chains via operating interchain accounts. + An interchain account is a smart contract that is deployed on a remote chain and is controlled exclusively by the deploying local account. Interchain accounts provide developers with a [transparent multicall API](./contracts/OwnableMulticall.sol) to remote smart contracts. -This avoids the need to deploy application specific smart contracts on remote chains while simultaneously enabling crosschain composability. +This avoids the need to deploy application specific smart contracts on remote chains while simultaneously enabling cross-chain composability. See [IBC Interchain Accounts](https://github.com/cosmos/ibc/blob/main/spec/app/ics-027-interchain-accounts/README.md) for the Cosmos ecosystem equivalent. diff --git a/typescript/ica/contracts/InterchainAccountRouter.sol b/typescript/ica/contracts/InterchainAccountRouter.sol index 1839aab3ae..1136085a2d 100644 --- a/typescript/ica/contracts/InterchainAccountRouter.sol +++ b/typescript/ica/contracts/InterchainAccountRouter.sol @@ -4,8 +4,8 @@ pragma solidity ^0.8.13; import {OwnableMulticall, Call} from "./OwnableMulticall.sol"; // ============ External Imports ============ -import {Router} from "@abacus-network/app/contracts/Router.sol"; -import {TypeCasts} from "@abacus-network/core/contracts/libs/TypeCasts.sol"; +import {Router} from "@hyperlane-xyz/app/contracts/Router.sol"; +import {TypeCasts} from "@hyperlane-xyz/core/contracts/libs/TypeCasts.sol"; import {Create2} from "@openzeppelin/contracts/utils/Create2.sol"; import {Address} from "@openzeppelin/contracts/utils/Address.sol"; diff --git a/typescript/ica/package.json b/typescript/ica/package.json index 642ecfe4fb..cbb71010d3 100644 --- a/typescript/ica/package.json +++ b/typescript/ica/package.json @@ -1,11 +1,11 @@ { - "name": "@abacus-network/interchain-accounts", + "name": "@hyperlane-xyz/interchain-accounts", "description": "A router middleware for interchain accounts", - "version": "0.1.0", + "version": "0.5.0-beta0", "dependencies": { - "@abacus-network/app": "^0.4.1", - "@abacus-network/sdk": "^0.4.1", - "@abacus-network/utils": "^0.4.1", + "@hyperlane-xyz/app": "0.5.0-beta0", + "@hyperlane-xyz/sdk": "0.5.0-beta0", + "@hyperlane-xyz/utils": "0.5.0-beta0", "@openzeppelin/contracts-upgradeable": "^4.6.0", "ethers": "^5.6.8" }, @@ -39,9 +39,9 @@ "/dist", "/contracts" ], - "homepage": "https://www.useabacus.network", + "homepage": "https://www.hyperlane-xyz", "keywords": [ - "Abacus", + "Hyperlane", "Interchain Accounts", "Solidity", "Typescript" @@ -51,7 +51,7 @@ "packageManager": "yarn@3.2.0", "repository": { "type": "git", - "url": "https://github.com/abacus-network/abacus-app-template" + "url": "https://github.com/hyperlane-xyz/hyperlane-monorepo" }, "scripts": { "build": "hardhat compile && tsc", @@ -59,8 +59,7 @@ "coverage": "hardhat coverage", "lint": "eslint . --ext .ts", "prettier": "prettier --write ./contracts ./src", - "test": "hardhat test ./test/*.test.ts", - "sync": "ts-node scripts/sync-with-template-repo.ts" + "test": "hardhat test ./test/*.test.ts" }, "types": "dist/src/index.d.ts" } diff --git a/typescript/ica/src/contracts.ts b/typescript/ica/src/contracts.ts index 75040124f8..495e21e1cb 100644 --- a/typescript/ica/src/contracts.ts +++ b/typescript/ica/src/contracts.ts @@ -1,4 +1,4 @@ -import { RouterContracts, RouterFactories } from '@abacus-network/sdk'; +import { RouterContracts, RouterFactories } from '@hyperlane-xyz/sdk'; import { InterchainAccountRouter, diff --git a/typescript/ica/src/deploy.ts b/typescript/ica/src/deploy.ts index 471cc7efe6..3a66f6d37e 100644 --- a/typescript/ica/src/deploy.ts +++ b/typescript/ica/src/deploy.ts @@ -1,11 +1,11 @@ import { - AbacusCore, - AbacusRouterDeployer, ChainMap, ChainName, + HyperlaneCore, + HyperlaneRouterDeployer, MultiProvider, RouterConfig, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { InterchainAccountContracts, @@ -16,7 +16,7 @@ export type InterchainAccountConfig = RouterConfig; export class InterchainAccountDeployer< Chain extends ChainName, -> extends AbacusRouterDeployer< +> extends HyperlaneRouterDeployer< Chain, InterchainAccountConfig, InterchainAccountContracts, @@ -25,7 +25,7 @@ export class InterchainAccountDeployer< constructor( multiProvider: MultiProvider, configMap: ChainMap, - protected core: AbacusCore, + protected core: HyperlaneCore, ) { super(multiProvider, configMap, InterchainAccountFactories, {}); } @@ -34,7 +34,7 @@ export class InterchainAccountDeployer< // If no custom logic is needed, call deployContract for the router async deployContracts(chain: Chain, config: InterchainAccountConfig) { const router = await this.deployContract(chain, 'router', [ - config.abacusConnectionManager, + config.connectionManager, config.interchainGasPaymaster, ]); return { diff --git a/typescript/ica/test/accounts.test.ts b/typescript/ica/test/accounts.test.ts index d499b52562..a0147627b1 100644 --- a/typescript/ica/test/accounts.test.ts +++ b/typescript/ica/test/accounts.test.ts @@ -13,7 +13,7 @@ import { getChainToOwnerMap, getTestMultiProvider, testChainConnectionConfigs, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { InterchainAccountDeployer } from '../src/deploy'; import { InterchainAccountRouter, TestRecipient__factory } from '../types'; diff --git a/typescript/infra/config/contexts.ts b/typescript/infra/config/contexts.ts index d4e0485ec5..0b6a232fe4 100644 --- a/typescript/infra/config/contexts.ts +++ b/typescript/infra/config/contexts.ts @@ -1,6 +1,6 @@ // All valid deployment contexts. Environments may use just a subset of these contexts. export enum Contexts { - Abacus = 'abacus', + Abacus = 'abacus', // TODO rename when infra changes Flowcarbon = 'flowcarbon', ReleaseCandidate = 'rc', } diff --git a/typescript/infra/config/environments/mainnet/chains.ts b/typescript/infra/config/environments/mainnet/chains.ts index bb32277b6b..69905b55e7 100644 --- a/typescript/infra/config/environments/mainnet/chains.ts +++ b/typescript/infra/config/environments/mainnet/chains.ts @@ -2,7 +2,7 @@ import { ChainMap, IChainConnection, chainConnectionConfigs, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; export const mainnetConfigs: ChainMap = { bsc: { diff --git a/typescript/infra/config/environments/mainnet/core.ts b/typescript/infra/config/environments/mainnet/core.ts index 523e4aaf7d..8914cb1a17 100644 --- a/typescript/infra/config/environments/mainnet/core.ts +++ b/typescript/infra/config/environments/mainnet/core.ts @@ -1,4 +1,4 @@ -import { ChainMap, CoreConfig } from '@abacus-network/sdk'; +import { ChainMap, CoreConfig } from '@hyperlane-xyz/sdk'; import { MainnetChains } from './chains'; diff --git a/typescript/infra/config/environments/mainnet/core/verification/verification.json b/typescript/infra/config/environments/mainnet/core/verification/verification.json index aeeb29b688..0606327ab6 100644 --- a/typescript/infra/config/environments/mainnet/core/verification/verification.json +++ b/typescript/infra/config/environments/mainnet/core/verification/verification.json @@ -23,7 +23,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0x12582c7B0f43c6A667CBaA7fA8b112F7fb1E69F0", "isProxy": false }, @@ -178,7 +178,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", "isProxy": false }, @@ -333,7 +333,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", "isProxy": false }, @@ -488,7 +488,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0x1Ab68dC4f7b6cfcd00218D4b761b7F3b5a724555", "isProxy": false }, @@ -643,7 +643,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0x19dc38aeae620380430C200a6E990D5Af5480117", "isProxy": false }, @@ -798,7 +798,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", "isProxy": false }, @@ -953,7 +953,7 @@ "isProxy": true }, { - "name": "AbacusConnectionManager", + "name": "connectionManager", "address": "0xd83A4F747fE80Ed98839e05079B1B7Fe037b1638", "isProxy": false }, diff --git a/typescript/infra/config/environments/mainnet/funding.ts b/typescript/infra/config/environments/mainnet/funding.ts index 6598662b25..8246806940 100644 --- a/typescript/infra/config/environments/mainnet/funding.ts +++ b/typescript/infra/config/environments/mainnet/funding.ts @@ -6,7 +6,7 @@ import { environment } from './chains'; export const keyFunderConfig: KeyFunderConfig = { docker: { - repo: 'gcr.io/abacus-labs-dev/abacus-monorepo', + repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', tag: 'sha-f3509ac', }, cronSchedule: '45 * * * *', // Every hour at the 45 minute mark diff --git a/typescript/infra/config/environments/mainnet/helloworld.ts b/typescript/infra/config/environments/mainnet/helloworld.ts index 69d088f68e..d1c1160629 100644 --- a/typescript/infra/config/environments/mainnet/helloworld.ts +++ b/typescript/infra/config/environments/mainnet/helloworld.ts @@ -10,7 +10,7 @@ export const abacus: HelloWorldConfig = { addresses: abacusAddresses, kathy: { docker: { - repo: 'gcr.io/abacus-labs-dev/abacus-monorepo', + repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', tag: 'sha-8b8fdde', }, chainsToSkip: [], @@ -29,7 +29,7 @@ export const releaseCandidate: HelloWorldConfig = { addresses: rcAddresses, kathy: { docker: { - repo: 'gcr.io/abacus-labs-dev/abacus-monorepo', + repo: 'gcr.io/abacus-labs-dev/hyperlane-monorepo', tag: 'sha-8b8fdde', }, chainsToSkip: [], diff --git a/typescript/infra/config/environments/mainnet/validators.ts b/typescript/infra/config/environments/mainnet/validators.ts index 3eb74b2eda..8fc675c72b 100644 --- a/typescript/infra/config/environments/mainnet/validators.ts +++ b/typescript/infra/config/environments/mainnet/validators.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { ChainValidatorSets, diff --git a/typescript/infra/config/environments/test/chains.ts b/typescript/infra/config/environments/test/chains.ts index eded2448fe..ca235955e3 100644 --- a/typescript/infra/config/environments/test/chains.ts +++ b/typescript/infra/config/environments/test/chains.ts @@ -1,4 +1,4 @@ -import { chainConnectionConfigs } from '@abacus-network/sdk'; +import { chainConnectionConfigs } from '@hyperlane-xyz/sdk'; export const testConfigs = { test1: chainConnectionConfigs.test1, diff --git a/typescript/infra/config/environments/test/core.ts b/typescript/infra/config/environments/test/core.ts index 931cd4749d..ae29852662 100644 --- a/typescript/infra/config/environments/test/core.ts +++ b/typescript/infra/config/environments/test/core.ts @@ -1,4 +1,4 @@ -import { ChainMap, CoreConfig } from '@abacus-network/sdk'; +import { ChainMap, CoreConfig } from '@hyperlane-xyz/sdk'; import { TestChains } from './chains'; diff --git a/typescript/infra/config/environments/test/index.ts b/typescript/infra/config/environments/test/index.ts index 2d2cf5eeae..e8e1d747a8 100644 --- a/typescript/infra/config/environments/test/index.ts +++ b/typescript/infra/config/environments/test/index.ts @@ -1,6 +1,6 @@ import { JsonRpcProvider } from '@ethersproject/providers'; -import { getTestMultiProvider } from '@abacus-network/sdk'; +import { getTestMultiProvider } from '@hyperlane-xyz/sdk'; import { CoreEnvironmentConfig } from '../../../src/config'; diff --git a/typescript/infra/config/environments/test/validators.ts b/typescript/infra/config/environments/test/validators.ts index 7a95fac1a0..b954b5e520 100644 --- a/typescript/infra/config/environments/test/validators.ts +++ b/typescript/infra/config/environments/test/validators.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { ChainValidatorSets, diff --git a/typescript/infra/config/environments/testnet2/chains.ts b/typescript/infra/config/environments/testnet2/chains.ts index f08c5154b9..756bd14968 100644 --- a/typescript/infra/config/environments/testnet2/chains.ts +++ b/typescript/infra/config/environments/testnet2/chains.ts @@ -1,4 +1,4 @@ -import { chainConnectionConfigs } from '@abacus-network/sdk'; +import { chainConnectionConfigs } from '@hyperlane-xyz/sdk'; export const testnetConfigs = { alfajores: chainConnectionConfigs.alfajores, diff --git a/typescript/infra/config/environments/testnet2/core.ts b/typescript/infra/config/environments/testnet2/core.ts index 419a459dec..554376465b 100644 --- a/typescript/infra/config/environments/testnet2/core.ts +++ b/typescript/infra/config/environments/testnet2/core.ts @@ -1,4 +1,4 @@ -import { ChainMap, CoreConfig } from '@abacus-network/sdk'; +import { ChainMap, CoreConfig } from '@hyperlane-xyz/sdk'; import { TestnetChains } from './chains'; diff --git a/typescript/infra/config/environments/testnet2/core/verification/verification.json b/typescript/infra/config/environments/testnet2/core/verification/verification.json index 0f02f334c3..98ac769425 100644 --- a/typescript/infra/config/environments/testnet2/core/verification/verification.json +++ b/typescript/infra/config/environments/testnet2/core/verification/verification.json @@ -7,7 +7,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0xc41169650335Ad274157Ea5116Cdf227430A68a3", "constructorArguments": [], "isProxy": false @@ -179,7 +179,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0xfA1fBF362144ae1bEf2E33409948dA1FB812bb41", "constructorArguments": [], "isProxy": false @@ -351,7 +351,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0x33AbaF6708be03Bdf0595DA0745A7111b01dB8c7", "constructorArguments": [], "isProxy": false @@ -523,7 +523,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0xb636B2c65A75d41F0dBe98fB33eb563d245a241a", "constructorArguments": [], "isProxy": false @@ -695,7 +695,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0xe403E16db1f5997bC62Dc611A8d42836364A7f01", "constructorArguments": [], "isProxy": false @@ -867,7 +867,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0xFb55597F07417b08195Ba674f4dd58aeC9B89FBB", "constructorArguments": [], "isProxy": false @@ -1039,7 +1039,7 @@ "isProxy": false }, { - "name": "abacusConnectionManager", + "name": "connectionManager", "address": "0x740bEd6E4eEc7c57a2818177Fba3f9E896D5DE1c", "constructorArguments": [], "isProxy": false diff --git a/typescript/infra/config/environments/testnet2/validators.ts b/typescript/infra/config/environments/testnet2/validators.ts index 60ea924a99..8bd739351d 100644 --- a/typescript/infra/config/environments/testnet2/validators.ts +++ b/typescript/infra/config/environments/testnet2/validators.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { ChainValidatorSets, diff --git a/typescript/infra/config/utils.ts b/typescript/infra/config/utils.ts index cfe2738465..bae60a078f 100644 --- a/typescript/infra/config/utils.ts +++ b/typescript/infra/config/utils.ts @@ -1,4 +1,4 @@ -import { ChainMap, ChainName, chainMetadata } from '@abacus-network/sdk'; +import { ChainMap, ChainName, chainMetadata } from '@hyperlane-xyz/sdk'; import { HelloWorldConfig } from '../src/config'; import { MatchingList } from '../src/config/agent'; diff --git a/typescript/infra/hardhat.config.ts b/typescript/infra/hardhat.config.ts index cc1eca5478..1b98e02484 100644 --- a/typescript/infra/hardhat.config.ts +++ b/typescript/infra/hardhat.config.ts @@ -3,19 +3,19 @@ import '@nomiclabs/hardhat-waffle'; import { task } from 'hardhat/config'; import { HardhatRuntimeEnvironment } from 'hardhat/types'; -import { TestSendReceiver__factory } from '@abacus-network/core'; +import { TestSendReceiver__factory } from '@hyperlane-xyz/core'; import { - AbacusCore, ChainName, ChainNameToDomainId, + HyperlaneCore, getTestMultiProvider, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { getCoreEnvironmentConfig } from './scripts/utils'; import { sleep } from './src/utils/utils'; const chainSummary = async ( - core: AbacusCore, + core: HyperlaneCore, chain: Chain, ) => { const coreContracts = core.getContracts(chain); @@ -46,7 +46,7 @@ const chainSummary = async ( return summary; }; -task('kathy', 'Dispatches random abacus messages') +task('kathy', 'Dispatches random hyperlane messages') .addParam( 'rounds', 'Number of message sending rounds to perform; defaults to having no limit', @@ -67,7 +67,7 @@ task('kathy', 'Dispatches random abacus messages') signer, config.transactionConfigs, ); - const core = AbacusCore.fromEnvironment(environment, multiProvider); + const core = HyperlaneCore.fromEnvironment(environment, multiProvider); const randomElement = (list: T[]) => list[Math.floor(Math.random() * list.length)]; diff --git a/typescript/infra/helm/helloworld-kathy/values.yaml b/typescript/infra/helm/helloworld-kathy/values.yaml index d4671b9746..38aed5db1a 100644 --- a/typescript/infra/helm/helloworld-kathy/values.yaml +++ b/typescript/infra/helm/helloworld-kathy/values.yaml @@ -1,5 +1,5 @@ image: - repository: gcr.io/abacus-labs-dev/abacus-monorepo + repository: gcr.io/abacus-labs-dev/hyperlane-monorepo tag: abacus: runEnv: testnet2 diff --git a/typescript/infra/helm/key-funder/values.yaml b/typescript/infra/helm/key-funder/values.yaml index 49e099ae35..a6c0a3a51b 100644 --- a/typescript/infra/helm/key-funder/values.yaml +++ b/typescript/infra/helm/key-funder/values.yaml @@ -1,5 +1,5 @@ image: - repository: gcr.io/abacus-labs-dev/abacus-monorepo + repository: gcr.io/abacus-labs-dev/hyperlane-monorepo tag: abacus: runEnv: testnet2 diff --git a/typescript/infra/package.json b/typescript/infra/package.json index f0e417220d..1f95761751 100644 --- a/typescript/infra/package.json +++ b/typescript/infra/package.json @@ -1,12 +1,8 @@ { - "name": "@abacus-network/infra", - "description": "Infrastructure utilities for the Abacus Network", - "version": "0.4.1", + "name": "@hyperlane-xyz/infra", + "description": "Infrastructure utilities for the Hyperlane Network", + "version": "0.5.0", "dependencies": { - "@abacus-network/celo-ethers-provider": "^0.1.0", - "@abacus-network/helloworld": "0.5.0", - "@abacus-network/sdk": "0.4.1", - "@abacus-network/utils": "0.4.1", "@aws-sdk/client-iam": "^3.74.0", "@aws-sdk/client-kms": "3.48.0", "@aws-sdk/client-s3": "^3.74.0", @@ -15,6 +11,10 @@ "@gnosis.pm/safe-core-sdk": "^2.3.2", "@gnosis.pm/safe-ethers-lib": "^1.4.0", "@gnosis.pm/safe-service-client": "^1.2.0", + "@hyperlane-xyz/celo-ethers-provider": "^0.1.1", + "@hyperlane-xyz/helloworld": "0.5.0-beta0", + "@hyperlane-xyz/sdk": "0.5.0-beta0", + "@hyperlane-xyz/utils": "0.5.0-beta0", "@nomiclabs/hardhat-etherscan": "^3.0.3", "asn1.js": "5.4.1", "aws-kms-ethers-signer": "^0.1.3", @@ -39,18 +39,20 @@ "ts-node": "^10.8.0", "typescript": "^4.7.2" }, - "homepage": "https://www.useabacus.network", + "private": true, + "homepage": "https://www.hyperlane.xyz", "keywords": [ - "Abacus", + "Hyperlane", "Typescript", "Infrastructure" ], "license": "Apache-2.0", "main": "dist/index.js", "prepublish": "yarn build", - "repository": "https://github.com/abacus-network/abacus-monorepo", + "repository": "https://github.com/hyperlane-xyz/hyperlane-monorepo", "scripts": { "abacus": "ts-node scripts/core.ts -e test", + "hyperlane": "ts-node scripts/core.ts -e test", "build": "tsc", "clean": "rm -rf ./dist ./cache", "check": "tsc --noEmit", diff --git a/typescript/infra/scripts/check-deploy.ts b/typescript/infra/scripts/check-deploy.ts index 8c276f663c..b83132e51e 100644 --- a/typescript/infra/scripts/check-deploy.ts +++ b/typescript/infra/scripts/check-deploy.ts @@ -1,4 +1,4 @@ -import { AbacusCore, AbacusCoreChecker } from '@abacus-network/sdk'; +import { HyperlaneCore, HyperlaneCoreChecker } from '@hyperlane-xyz/sdk'; import { getCoreEnvironmentConfig, getEnvironment } from './utils'; @@ -8,8 +8,8 @@ async function check() { const multiProvider = await config.getMultiProvider(); // environments union doesn't work well with typescript - const core = AbacusCore.fromEnvironment(environment, multiProvider as any); - const coreChecker = new AbacusCoreChecker( + const core = HyperlaneCore.fromEnvironment(environment, multiProvider as any); + const coreChecker = new HyperlaneCoreChecker( multiProvider, core, config.core, diff --git a/typescript/infra/scripts/core.ts b/typescript/infra/scripts/core.ts index 410a29956c..a1fe5cc436 100644 --- a/typescript/infra/scripts/core.ts +++ b/typescript/infra/scripts/core.ts @@ -2,9 +2,9 @@ import { buildContracts, coreFactories, serializeContracts, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; -import { AbacusCoreInfraDeployer } from '../src/core/deploy'; +import { HyperlaneCoreInfraDeployer } from '../src/core/deploy'; import { readJSON, writeJSON } from '../src/utils/utils'; import { @@ -19,7 +19,7 @@ async function main() { const environment = await getEnvironment(); const config = getCoreEnvironmentConfig(environment) as any; const multiProvider = await config.getMultiProvider(); - const deployer = new AbacusCoreInfraDeployer(multiProvider, config.core); + const deployer = new HyperlaneCoreInfraDeployer(multiProvider, config.core); let previousContracts = {}; previousAddressParsing: try { diff --git a/typescript/infra/scripts/debug-message.ts b/typescript/infra/scripts/debug-message.ts index 61855b3e3e..103dbc6f41 100644 --- a/typescript/infra/scripts/debug-message.ts +++ b/typescript/infra/scripts/debug-message.ts @@ -1,13 +1,13 @@ -import { IMessageRecipient__factory } from '@abacus-network/helloworld/dist/src/types'; +import { IMessageRecipient__factory } from '@hyperlane-xyz/helloworld/dist/src/types'; import { - AbacusCore, ChainName, DispatchedMessage, DomainIdToChainName, + HyperlaneCore, MultiProvider, chainConnectionConfigs, -} from '@abacus-network/sdk'; -import { utils } from '@abacus-network/utils'; +} from '@hyperlane-xyz/sdk'; +import { utils } from '@hyperlane-xyz/utils'; import { assertChain } from '../src/utils/utils'; @@ -42,7 +42,7 @@ async function main() { // to run this script const multiProvider = new MultiProvider(chainConnectionConfigs); - const core = AbacusCore.fromEnvironment(environment, multiProvider); + const core = HyperlaneCore.fromEnvironment(environment, multiProvider); const originProvider = multiProvider.getChainProvider(argv.originChain); const dispatchReceipt = await originProvider.getTransactionReceipt( @@ -62,7 +62,7 @@ async function main() { } async function checkMessage( - core: AbacusCore, + core: HyperlaneCore, multiProvider: MultiProvider, message: DispatchedMessage, ) { diff --git a/typescript/infra/scripts/funding/fund-keys-from-deployer.ts b/typescript/infra/scripts/funding/fund-keys-from-deployer.ts index 3a88c90dd2..a6eb6eded5 100644 --- a/typescript/infra/scripts/funding/fund-keys-from-deployer.ts +++ b/typescript/infra/scripts/funding/fund-keys-from-deployer.ts @@ -8,8 +8,8 @@ import { ChainName, CompleteChainMap, MultiProvider, -} from '@abacus-network/sdk'; -import { error, log } from '@abacus-network/utils'; +} from '@hyperlane-xyz/sdk'; +import { error, log } from '@hyperlane-xyz/utils'; import { Contexts } from '../../config/contexts'; import { parseKeyIdentifier } from '../../src/agents/agent'; diff --git a/typescript/infra/scripts/funding/reclaim-from-igp.ts b/typescript/infra/scripts/funding/reclaim-from-igp.ts index 8460a2ab58..8678e32389 100644 --- a/typescript/infra/scripts/funding/reclaim-from-igp.ts +++ b/typescript/infra/scripts/funding/reclaim-from-igp.ts @@ -1,6 +1,6 @@ import { BigNumber } from 'ethers'; -import { AbacusCore, objMap, promiseObjAll } from '@abacus-network/sdk'; +import { HyperlaneCore, objMap, promiseObjAll } from '@hyperlane-xyz/sdk'; import { getEnvironment, getEnvironmentConfig } from '../utils'; @@ -11,7 +11,7 @@ async function main() { const environment = await getEnvironment(); const coreConfig = await getEnvironmentConfig(); const multiProvider = await coreConfig.getMultiProvider(); - const core: AbacusCore = AbacusCore.fromEnvironment( + const core: HyperlaneCore = HyperlaneCore.fromEnvironment( environment, multiProvider, ); diff --git a/typescript/infra/scripts/govern.ts b/typescript/infra/scripts/govern.ts index 551bfdc23a..7702593ec6 100644 --- a/typescript/infra/scripts/govern.ts +++ b/typescript/infra/scripts/govern.ts @@ -1,10 +1,10 @@ import { - AbacusCore, - AbacusCoreChecker, CoreViolationType, -} from '@abacus-network/sdk'; + HyperlaneCore, + HyperlaneCoreChecker, +} from '@hyperlane-xyz/sdk'; -import { AbacusCoreGovernor } from '../src/core/govern'; +import { HyperlaneCoreGovernor } from '../src/core/govern'; import { getCoreEnvironmentConfig, getEnvironment } from './utils'; @@ -15,9 +15,9 @@ async function check() { const multiProvider = await config.getMultiProvider(); // environments union doesn't work well with typescript - const core = AbacusCore.fromEnvironment(environment, multiProvider as any); + const core = HyperlaneCore.fromEnvironment(environment, multiProvider as any); - const coreChecker = new AbacusCoreChecker( + const coreChecker = new HyperlaneCoreChecker( multiProvider, core, config.core, @@ -26,7 +26,7 @@ async function check() { // One validator violation per chain (test add validator) coreChecker.expectViolations([CoreViolationType.ValidatorManager], [1 * 7]); - const governor = new AbacusCoreGovernor(coreChecker); + const governor = new HyperlaneCoreGovernor(coreChecker); await governor.govern(); } diff --git a/typescript/infra/scripts/helloworld/check.ts b/typescript/infra/scripts/helloworld/check.ts index 8d9efd0e17..1c4180f611 100644 --- a/typescript/infra/scripts/helloworld/check.ts +++ b/typescript/infra/scripts/helloworld/check.ts @@ -1,4 +1,4 @@ -import { HelloWorldChecker } from '@abacus-network/helloworld'; +import { HelloWorldChecker } from '@hyperlane-xyz/helloworld'; import { Contexts } from '../../config/contexts'; import { KEY_ROLE_ENUM } from '../../src/agents/roles'; @@ -15,7 +15,7 @@ async function main() { coreConfig, context, KEY_ROLE_ENUM.Deployer, - Contexts.Abacus, // Owner should always be from the abacus context + Contexts.Abacus, // Owner should always be from the hyperlane context ); const configMap = await getConfiguration(environment, multiProvider); const checker = new HelloWorldChecker(multiProvider, app, configMap); diff --git a/typescript/infra/scripts/helloworld/deploy.ts b/typescript/infra/scripts/helloworld/deploy.ts index 74fcb520ff..0d2f658a2c 100644 --- a/typescript/infra/scripts/helloworld/deploy.ts +++ b/typescript/infra/scripts/helloworld/deploy.ts @@ -4,13 +4,13 @@ import { HelloWorldContracts, HelloWorldDeployer, helloWorldFactories, -} from '@abacus-network/helloworld'; +} from '@hyperlane-xyz/helloworld'; import { - AbacusCore, ChainMap, + HyperlaneCore, buildContracts, serializeContracts, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { KEY_ROLE_ENUM } from '../../src/agents/roles'; @@ -28,13 +28,13 @@ async function main() { const environment = await getEnvironment(); const context = await getContext(); const coreConfig = getCoreEnvironmentConfig(environment); - // Always deploy from the abacus deployer + // Always deploy from the hyperlane deployer const multiProvider = await coreConfig.getMultiProvider( Contexts.Abacus, KEY_ROLE_ENUM.Deployer, ); const configMap = await getConfiguration(environment, multiProvider); - const core = AbacusCore.fromEnvironment(environment, multiProvider as any); + const core = HyperlaneCore.fromEnvironment(environment, multiProvider as any); const deployer = new HelloWorldDeployer(multiProvider, configMap, core); const dir = path.join( getEnvironmentDirectory(environment), diff --git a/typescript/infra/scripts/helloworld/kathy.ts b/typescript/infra/scripts/helloworld/kathy.ts index 1e43b2d4f2..d894465cba 100644 --- a/typescript/infra/scripts/helloworld/kathy.ts +++ b/typescript/infra/scripts/helloworld/kathy.ts @@ -2,14 +2,14 @@ import { BigNumber, ethers } from 'ethers'; import { Counter, Gauge, Registry } from 'prom-client'; import { format } from 'util'; -import { HelloWorldApp } from '@abacus-network/helloworld'; +import { HelloWorldApp } from '@hyperlane-xyz/helloworld'; import { - AbacusCore, ChainName, DispatchedMessage, + HyperlaneCore, InterchainGasCalculator, -} from '@abacus-network/sdk'; -import { debug, error, log, utils, warn } from '@abacus-network/utils'; +} from '@hyperlane-xyz/sdk'; +import { debug, error, log, utils, warn } from '@hyperlane-xyz/utils'; import { KEY_ROLE_ENUM } from '../../src/agents/roles'; import { startMetricsServer } from '../../src/utils/metrics'; @@ -24,6 +24,7 @@ import { assertEnvironment, getArgs, getCoreEnvironmentConfig } from '../utils'; import { getApp } from './utils'; const metricsRegister = new Registry(); +// TODO rename counter names const messagesSendCount = new Counter({ name: 'abacus_kathy_messages', help: 'Count of messages sent; records successes and failures by status label', @@ -390,7 +391,7 @@ async function sendMessage( } async function messageIsProcessed( - core: AbacusCore, + core: HyperlaneCore, origin: ChainName, destination: ChainName, message: DispatchedMessage, diff --git a/typescript/infra/scripts/helloworld/utils.ts b/typescript/infra/scripts/helloworld/utils.ts index 36c2442b38..01c03ac024 100644 --- a/typescript/infra/scripts/helloworld/utils.ts +++ b/typescript/infra/scripts/helloworld/utils.ts @@ -2,17 +2,17 @@ import { HelloWorldApp, HelloWorldContracts, helloWorldFactories, -} from '@abacus-network/helloworld'; +} from '@hyperlane-xyz/helloworld'; import { - AbacusCore, ChainMap, ChainName, + HyperlaneCore, MultiProvider, RouterConfig, buildContracts, objMap, promiseObjAll, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { KEY_ROLE_ENUM } from '../../src/agents/roles'; @@ -34,9 +34,9 @@ export async function getConfiguration( }), ); - // Currently can't be typed as per https://github.com/abacus-network/abacus-monorepo/pull/594/files#diff-40a12589668de942078f498e0ab0fda512e1eb7397189d6d286b590ae87c45d1R31 + // Currently can't be typed as per https://github.com/hyperlane-xyz/hyperlane-monorepo/pull/594/files#diff-40a12589668de942078f498e0ab0fda512e1eb7397189d6d286b590ae87c45d1R31 // @ts-ignore - const core: AbacusCore = AbacusCore.fromEnvironment( + const core: HyperlaneCore = HyperlaneCore.fromEnvironment( environment, multiProvider as any, ); @@ -59,10 +59,10 @@ export async function getApp( keyContext, keyRole, ); - const core = AbacusCore.fromEnvironment( + const core = HyperlaneCore.fromEnvironment( coreConfig.environment, multiProvider as any, - ) as AbacusCore; + ) as HyperlaneCore; return new HelloWorldApp(core, contracts, multiProvider); } diff --git a/typescript/infra/scripts/safe-delegate.ts b/typescript/infra/scripts/safe-delegate.ts index 17d460971f..9c33fd6463 100644 --- a/typescript/infra/scripts/safe-delegate.ts +++ b/typescript/infra/scripts/safe-delegate.ts @@ -5,7 +5,7 @@ import '@ethersproject/hardware-wallets/thirdparty'; import { SafeDelegateConfig } from '@gnosis.pm/safe-service-client'; import yargs from 'yargs'; -import { AllChains } from '@abacus-network/sdk'; +import { AllChains } from '@hyperlane-xyz/sdk'; import { getSafeDelegates, getSafeService } from '../src/utils/safe'; diff --git a/typescript/infra/scripts/utils.ts b/typescript/infra/scripts/utils.ts index 12bc92153b..07417eb53b 100644 --- a/typescript/infra/scripts/utils.ts +++ b/typescript/infra/scripts/utils.ts @@ -9,7 +9,7 @@ import { MultiProvider, objMap, promiseObjAll, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { Contexts } from '../config/contexts'; import { environments } from '../config/environments'; diff --git a/typescript/infra/scripts/verify-core.ts b/typescript/infra/scripts/verify-core.ts index 9a10071f75..505bba80b1 100644 --- a/typescript/infra/scripts/verify-core.ts +++ b/typescript/infra/scripts/verify-core.ts @@ -5,7 +5,7 @@ import { CompilerOptions, CompleteChainMap, ContractVerifier, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { fetchGCPSecret } from '../src/utils/gcloud'; import { execCmd, readJSON } from '../src/utils/utils'; diff --git a/typescript/infra/scripts/verify-validator.ts b/typescript/infra/scripts/verify-validator.ts index fb48a562bc..0880409e97 100644 --- a/typescript/infra/scripts/verify-validator.ts +++ b/typescript/infra/scripts/verify-validator.ts @@ -1,9 +1,9 @@ import { ethers } from 'ethers'; import yargs from 'yargs'; -import { AllChains, ChainNameToDomainId } from '@abacus-network/sdk'; +import { AllChains, ChainNameToDomainId } from '@hyperlane-xyz/sdk'; -// import { utils } from '@abacus-network/utils'; +// import { utils } from '@hyperlane-xyz/utils'; import { S3Validator } from '../src/agents/aws/validator'; function getArgs() { diff --git a/typescript/infra/src/agents/agent.ts b/typescript/infra/src/agents/agent.ts index 9308921d07..48b0d99a2e 100644 --- a/typescript/infra/src/agents/agent.ts +++ b/typescript/infra/src/agents/agent.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; diff --git a/typescript/infra/src/agents/aws/key.ts b/typescript/infra/src/agents/aws/key.ts index 39d00355c7..1a7e7e5047 100644 --- a/typescript/infra/src/agents/aws/key.ts +++ b/typescript/infra/src/agents/aws/key.ts @@ -18,7 +18,7 @@ import { import { KmsEthersSigner } from 'aws-kms-ethers-signer'; import { ethers } from 'ethers'; -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { AgentConfig, AwsKeyConfig, KeyType } from '../../config/agent'; import { getEthereumAddress, sleep } from '../../utils/utils'; diff --git a/typescript/infra/src/agents/aws/s3.ts b/typescript/infra/src/agents/aws/s3.ts index 42d0ed2293..f4c5756dad 100644 --- a/typescript/infra/src/agents/aws/s3.ts +++ b/typescript/infra/src/agents/aws/s3.ts @@ -1,7 +1,7 @@ import { GetObjectCommand, S3Client } from '@aws-sdk/client-s3'; import { Readable } from 'stream'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; export const S3_BUCKET_REGEX = /^(?:https?:\/\/)?(.*)\.s3\.(.*)\.amazonaws.com\/?$/; diff --git a/typescript/infra/src/agents/aws/user.ts b/typescript/infra/src/agents/aws/user.ts index 3ed9e3d20c..479b5038fd 100644 --- a/typescript/infra/src/agents/aws/user.ts +++ b/typescript/infra/src/agents/aws/user.ts @@ -7,7 +7,7 @@ import { User, } from '@aws-sdk/client-iam'; -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../../config/contexts'; import { AgentConfig } from '../../config'; diff --git a/typescript/infra/src/agents/aws/validator-user.ts b/typescript/infra/src/agents/aws/validator-user.ts index 27a885c1f0..3b3d9fb76b 100644 --- a/typescript/infra/src/agents/aws/validator-user.ts +++ b/typescript/infra/src/agents/aws/validator-user.ts @@ -5,7 +5,7 @@ import { S3Client, } from '@aws-sdk/client-s3'; -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../../config/contexts'; import { AgentConfig } from '../../config'; diff --git a/typescript/infra/src/agents/aws/validator.ts b/typescript/infra/src/agents/aws/validator.ts index cb6690753a..4497757e5a 100644 --- a/typescript/infra/src/agents/aws/validator.ts +++ b/typescript/infra/src/agents/aws/validator.ts @@ -1,4 +1,4 @@ -import { BaseValidator, types, utils } from '@abacus-network/utils'; +import { BaseValidator, types, utils } from '@hyperlane-xyz/utils'; import { S3Receipt, S3Wrapper } from './s3'; diff --git a/typescript/infra/src/agents/gcp.ts b/typescript/infra/src/agents/gcp.ts index 23b8486fec..c5774960e6 100644 --- a/typescript/infra/src/agents/gcp.ts +++ b/typescript/infra/src/agents/gcp.ts @@ -1,6 +1,6 @@ import { Wallet, ethers } from 'ethers'; -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { fetchGCPSecret, setGCPSecret } from '../utils/gcloud'; diff --git a/typescript/infra/src/agents/index.ts b/typescript/infra/src/agents/index.ts index 4ef0bfc530..fadf0d783b 100644 --- a/typescript/infra/src/agents/index.ts +++ b/typescript/infra/src/agents/index.ts @@ -1,5 +1,5 @@ -import { ChainName } from '@abacus-network/sdk'; -import { utils } from '@abacus-network/utils'; +import { ChainName } from '@hyperlane-xyz/sdk'; +import { utils } from '@hyperlane-xyz/utils'; import { Contexts } from '../../config/contexts'; import { AgentConfig, DeployEnvironment } from '../config'; diff --git a/typescript/infra/src/agents/key-utils.ts b/typescript/infra/src/agents/key-utils.ts index fb99d056f4..6144b1e4ab 100644 --- a/typescript/infra/src/agents/key-utils.ts +++ b/typescript/infra/src/agents/key-utils.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { AgentConfig } from '../config'; diff --git a/typescript/infra/src/agents/keys.ts b/typescript/infra/src/agents/keys.ts index 5e3f0046d2..c8ee59e0f5 100644 --- a/typescript/infra/src/agents/keys.ts +++ b/typescript/infra/src/agents/keys.ts @@ -1,6 +1,6 @@ import { ethers } from 'ethers'; -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { assertChain, assertContext, assertRole } from '../utils/utils'; @@ -8,7 +8,7 @@ import { assertChain, assertContext, assertRole } from '../utils/utils'; import { parseKeyIdentifier } from './agent'; import { KEY_ROLE_ENUM } from './roles'; -// Base class to represent keys used to run Abacus agents. +// Base class to represent keys used to run Hyperlane agents. export abstract class BaseAgentKey { constructor( public readonly environment: string, @@ -32,7 +32,7 @@ export class ReadOnlyAgentKey extends BaseAgentKey { } } -// Base class to represent cloud-hosted keys used to run Abacus agents. +// Base class to represent cloud-hosted keys used to run Hyperlane agents. export abstract class BaseCloudAgentKey extends BaseAgentKey { abstract get context(): Contexts; abstract get identifier(): string; diff --git a/typescript/infra/src/config/agent.ts b/typescript/infra/src/config/agent.ts index cec811959d..e16783eb19 100644 --- a/typescript/infra/src/config/agent.ts +++ b/typescript/infra/src/config/agent.ts @@ -1,5 +1,5 @@ -import { ChainMap, ChainName, RemoteChainMap } from '@abacus-network/sdk'; -import { types } from '@abacus-network/utils'; +import { ChainMap, ChainName, RemoteChainMap } from '@hyperlane-xyz/sdk'; +import { types } from '@hyperlane-xyz/utils'; import { Contexts } from '../../config/contexts'; import { diff --git a/typescript/infra/src/config/chain.ts b/typescript/infra/src/config/chain.ts index 3d08465dc2..9341f4bc96 100644 --- a/typescript/infra/src/config/chain.ts +++ b/typescript/infra/src/config/chain.ts @@ -1,7 +1,7 @@ import { ethers } from 'ethers'; -import { StaticCeloJsonRpcProvider } from '@abacus-network/celo-ethers-provider'; -import { ChainName, RetryJsonRpcProvider } from '@abacus-network/sdk'; +import { StaticCeloJsonRpcProvider } from '@hyperlane-xyz/celo-ethers-provider'; +import { ChainName, RetryJsonRpcProvider } from '@hyperlane-xyz/sdk'; import { getSecretRpcEndpoint } from '../agents'; diff --git a/typescript/infra/src/config/environment.ts b/typescript/infra/src/config/environment.ts index 0fb666d0d7..a829ef11ea 100644 --- a/typescript/infra/src/config/environment.ts +++ b/typescript/infra/src/config/environment.ts @@ -4,7 +4,7 @@ import { CoreConfig, EnvironmentConfig, MultiProvider, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { environments } from '../../config/environments'; diff --git a/typescript/infra/src/config/helloworld.ts b/typescript/infra/src/config/helloworld.ts index 404c1a0af4..8c742aebb0 100644 --- a/typescript/infra/src/config/helloworld.ts +++ b/typescript/infra/src/config/helloworld.ts @@ -1,4 +1,4 @@ -import { ChainMap, ChainName } from '@abacus-network/sdk'; +import { ChainMap, ChainName } from '@hyperlane-xyz/sdk'; import { DockerConfig } from './agent'; diff --git a/typescript/infra/src/core/deploy.ts b/typescript/infra/src/core/deploy.ts index 1d8ceda82e..940dc53060 100644 --- a/typescript/infra/src/core/deploy.ts +++ b/typescript/infra/src/core/deploy.ts @@ -1,17 +1,17 @@ import { - AbacusCoreDeployer, ChainName, + HyperlaneCoreDeployer, chainMetadata, objMap, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { DeployEnvironment, RustConfig } from '../config'; import { ConnectionType } from '../config/agent'; import { writeJSON } from '../utils/utils'; -export class AbacusCoreInfraDeployer< +export class HyperlaneCoreInfraDeployer< Chain extends ChainName, -> extends AbacusCoreDeployer { +> extends HyperlaneCoreDeployer { writeRustConfigs(environment: DeployEnvironment, directory: string) { const configChains = Object.keys(this.configMap); objMap(this.configMap, (chain) => { diff --git a/typescript/infra/src/core/govern.ts b/typescript/infra/src/core/govern.ts index 1974152b94..5b74fdf08c 100644 --- a/typescript/infra/src/core/govern.ts +++ b/typescript/infra/src/core/govern.ts @@ -1,22 +1,22 @@ import { prompts } from 'prompts'; import { - AbacusConnectionManagerViolation, - AbacusConnectionManagerViolationType, - AbacusCoreChecker, ChainMap, ChainName, ChainNameToDomainId, + ConnectionManagerViolation, + ConnectionManagerViolationType, CoreViolationType, EnrolledInboxesViolation, EnrolledValidatorsViolation, + HyperlaneCoreChecker, OwnerViolation, ValidatorManagerViolation, ValidatorManagerViolationType, ViolationType, objMap, -} from '@abacus-network/sdk'; -import { types, utils } from '@abacus-network/utils'; +} from '@hyperlane-xyz/sdk'; +import { types, utils } from '@hyperlane-xyz/utils'; import { canProposeSafeTransactions } from '../utils/safe'; @@ -38,11 +38,11 @@ type AnnotatedCallData = types.CallData & { description: string; }; -export class AbacusCoreGovernor { - readonly checker: AbacusCoreChecker; +export class HyperlaneCoreGovernor { + readonly checker: HyperlaneCoreChecker; private calls: ChainMap; - constructor(checker: AbacusCoreChecker) { + constructor(checker: HyperlaneCoreChecker) { this.checker = checker; this.calls = objMap(this.checker.app.contractsMap, () => []); } @@ -137,9 +137,9 @@ export class AbacusCoreGovernor { this.handleOwnerViolation(violation as OwnerViolation); break; } - case CoreViolationType.AbacusConnectionManager: { - this.handleAbacusConnectionManagerViolation( - violation as AbacusConnectionManagerViolation, + case CoreViolationType.ConnectionManager: { + this.handleHyperlaneConnectionManagerViolation( + violation as ConnectionManagerViolation, ); break; } @@ -222,28 +222,28 @@ export class AbacusCoreGovernor { ); } - handleAbacusConnectionManagerViolation( - violation: AbacusConnectionManagerViolation, + handleHyperlaneConnectionManagerViolation( + violation: ConnectionManagerViolation, ) { - const abacusConnectionManager = violation.contract; - switch (violation.abacusConnectionManagerType) { - case AbacusConnectionManagerViolationType.EnrolledInboxes: { + const connectionManager = violation.contract; + switch (violation.connectionManagerType) { + case ConnectionManagerViolationType.EnrolledInboxes: { const typedViolation = violation as EnrolledInboxesViolation; const remoteId = ChainNameToDomainId[typedViolation.remote]; const baseDescription = `as ${typedViolation.remote} Inbox on ${typedViolation.chain}`; this.pushSetReconcilationCalls({ ...typedViolation, add: (inbox) => ({ - to: abacusConnectionManager.address, - data: abacusConnectionManager.interface.encodeFunctionData( + to: connectionManager.address, + data: connectionManager.interface.encodeFunctionData( 'enrollInbox', [remoteId, inbox], ), description: `Enroll ${inbox} ${baseDescription}`, }), remove: (inbox) => ({ - to: abacusConnectionManager.address, - data: abacusConnectionManager.interface.encodeFunctionData( + to: connectionManager.address, + data: connectionManager.interface.encodeFunctionData( 'unenrollInbox', [inbox], ), @@ -254,7 +254,7 @@ export class AbacusCoreGovernor { } default: throw new Error( - `Unsupported abacus connection manager violation type ${violation.abacusConnectionManagerType}`, + `Unsupported connection manager violation type ${violation.connectionManagerType}`, ); } } diff --git a/typescript/infra/src/core/multisend.ts b/typescript/infra/src/core/multisend.ts index fae540aa35..439146d5c7 100644 --- a/typescript/infra/src/core/multisend.ts +++ b/typescript/infra/src/core/multisend.ts @@ -1,5 +1,5 @@ -import { ChainConnection, ChainName } from '@abacus-network/sdk'; -import { types } from '@abacus-network/utils'; +import { ChainConnection, ChainName } from '@hyperlane-xyz/sdk'; +import { types } from '@hyperlane-xyz/utils'; import { getSafe, getSafeService } from '../utils/safe'; diff --git a/typescript/infra/src/funding/deploy-key-funder.ts b/typescript/infra/src/funding/deploy-key-funder.ts index 513efcbf2a..ffa04b46df 100644 --- a/typescript/infra/src/funding/deploy-key-funder.ts +++ b/typescript/infra/src/funding/deploy-key-funder.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { AgentConfig, CoreEnvironmentConfig } from '../config'; import { KeyFunderConfig } from '../config/funding'; diff --git a/typescript/infra/src/helloworld/kathy.ts b/typescript/infra/src/helloworld/kathy.ts index 18b30ffd37..52e5ac13e7 100644 --- a/typescript/infra/src/helloworld/kathy.ts +++ b/typescript/infra/src/helloworld/kathy.ts @@ -1,4 +1,4 @@ -import { ChainName } from '@abacus-network/sdk'; +import { ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { AgentAwsUser } from '../agents/aws'; diff --git a/typescript/infra/src/utils/safe.ts b/typescript/infra/src/utils/safe.ts index 52e56923e5..3eca1c2a4b 100644 --- a/typescript/infra/src/utils/safe.ts +++ b/typescript/infra/src/utils/safe.ts @@ -3,7 +3,7 @@ import EthersAdapter from '@gnosis.pm/safe-ethers-lib'; import SafeServiceClient from '@gnosis.pm/safe-service-client'; import { ethers } from 'ethers'; -import { ChainConnection, ChainName, chainMetadata } from '@abacus-network/sdk'; +import { ChainConnection, ChainName, chainMetadata } from '@hyperlane-xyz/sdk'; export function getSafeService( chain: ChainName, diff --git a/typescript/infra/src/utils/utils.ts b/typescript/infra/src/utils/utils.ts index e9d6af8f41..9b195f26da 100644 --- a/typescript/infra/src/utils/utils.ts +++ b/typescript/infra/src/utils/utils.ts @@ -5,7 +5,7 @@ import { ethers } from 'ethers'; import fs from 'fs'; import path from 'path'; -import { AllChains, ChainName } from '@abacus-network/sdk'; +import { AllChains, ChainName } from '@hyperlane-xyz/sdk'; import { Contexts } from '../../config/contexts'; import { ALL_KEY_ROLES, KEY_ROLE_ENUM } from '../agents/roles'; diff --git a/typescript/infra/test/core.test.ts b/typescript/infra/test/core.test.ts index 15ff3d2ebe..c89d6a1ba4 100644 --- a/typescript/infra/test/core.test.ts +++ b/typescript/infra/test/core.test.ts @@ -5,29 +5,29 @@ import path from 'path'; import sinon from 'sinon'; import { - AbacusCore, - AbacusCoreChecker, - AbacusCoreDeployer, ChainMap, CoreConfig, CoreContractsMap, + HyperlaneCore, + HyperlaneCoreChecker, + HyperlaneCoreDeployer, MultiProvider, getTestMultiProvider, objMap, serializeContracts, -} from '@abacus-network/sdk'; +} from '@hyperlane-xyz/sdk'; import { environment as testConfig } from '../config/environments/test'; import { TestChains } from '../config/environments/test/chains'; -import { AbacusCoreInfraDeployer } from '../src/core/deploy'; +import { HyperlaneCoreInfraDeployer } from '../src/core/deploy'; import { writeJSON } from '../src/utils/utils'; describe('core', async () => { const environment = 'test'; let multiProvider: MultiProvider; - let deployer: AbacusCoreInfraDeployer; - let core: AbacusCore; + let deployer: HyperlaneCoreInfraDeployer; + let core: HyperlaneCore; let contracts: CoreContractsMap; let coreConfig: ChainMap; @@ -37,7 +37,7 @@ describe('core', async () => { // This is kind of awkward and really these tests shouldn't live here multiProvider = getTestMultiProvider(signer, testConfig.transactionConfigs); coreConfig = testConfig.core; - deployer = new AbacusCoreInfraDeployer(multiProvider, coreConfig); + deployer = new HyperlaneCoreInfraDeployer(multiProvider, coreConfig); owners = objMap(testConfig.transactionConfigs, () => owner.address); }); @@ -53,8 +53,8 @@ describe('core', async () => { }); it('transfers ownership', async () => { - core = new AbacusCore(contracts, multiProvider); - await AbacusCoreDeployer.transferOwnership(core, owners, multiProvider); + core = new HyperlaneCore(contracts, multiProvider); + await HyperlaneCoreDeployer.transferOwnership(core, owners, multiProvider); }); describe('failure modes', async () => { @@ -88,7 +88,7 @@ describe('core', async () => { it('can be resumed from partial contracts', async () => { sinon.restore(); // restore normal deployer behavior - delete deployer.deployedContracts.test2!.abacusConnectionManager; + delete deployer.deployedContracts.test2!.connectionManager; delete deployer.deployedContracts.test2!.outbox; const result = await deployer.deploy(); @@ -102,7 +102,7 @@ describe('core', async () => { ...config, owner: owners[chain], })); - const checker = new AbacusCoreChecker(multiProvider, core, joinedConfig); + const checker = new HyperlaneCoreChecker(multiProvider, core, joinedConfig); await checker.check(); }); }); diff --git a/typescript/interchain/scripts/deploy.ts b/typescript/interchain/scripts/deploy.ts deleted file mode 100644 index f861a4e319..0000000000 --- a/typescript/interchain/scripts/deploy.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { Wallet } from 'ethers'; - -import { - AbacusCore, - MultiProvider, - chainConnectionConfigs, - getChainToOwnerMap, - objMap, - serializeContracts, -} from '@abacus-network/sdk'; - -import { InterchainAccountDeployer } from '../src/deploy'; - -export const prodConfigs = { - alfajores: chainConnectionConfigs.alfajores, - fuji: chainConnectionConfigs.fuji, - bsctestnet: chainConnectionConfigs.bsctestnet, -}; - -/* eslint-disable no-console */ -async function main() { - console.info('Getting signer'); - const signer = new Wallet('pkey'); - - console.info('Preparing utilities'); - const chainProviders = objMap(prodConfigs, (_, config) => ({ - provider: config.provider, - confirmations: config.confirmations, - overrides: config.overrides, - signer: new Wallet('pkey', config.provider), - })); - const multiProvider = new MultiProvider(chainProviders); - - const core = AbacusCore.fromEnvironment('testnet2', multiProvider); - const config = core.extendWithConnectionClientConfig( - getChainToOwnerMap(prodConfigs, signer.address), - ); - - const deployer = new InterchainAccountDeployer(multiProvider, config, core); - const chainToContracts = await deployer.deploy(); - const addresses = serializeContracts(chainToContracts); - console.info('===Contract Addresses==='); - console.info(JSON.stringify(addresses)); -} - -main() - .then(() => console.info('Deploy complete')) - .catch(console.error); diff --git a/typescript/sdk/CHANGELOG.md b/typescript/sdk/CHANGELOG.md deleted file mode 100644 index 4a0d03a14d..0000000000 --- a/typescript/sdk/CHANGELOG.md +++ /dev/null @@ -1,21 +0,0 @@ -# Changelog - -## 0.2.0 - -- Unify deploy and app abstractions by @yorhodes in https://github.com/abacus-network/abacus-monorepo/pull/507 -- Remove AbacusCore as an argument to RouterDeployer https://github.com/abacus-network/abacus-monorepo/pull/469 -- Dedupe hardhat and core deploy https://github.com/abacus-network/abacus-monorepo/pull/449 -- Remove Controller from SDK package https://github.com/abacus-network/abacus-monorepo/pull/497 -- Add `debug` logging library https://github.com/abacus-network/abacus-monorepo/pull/457 -- Consistent naming of chain and domain https://github.com/abacus-network/abacus-monorepo/pull/446 -- Strongly type GasCalculator https://github.com/abacus-network/abacus-monorepo/pull/433 -- Add default ChainConnection configs https://github.com/abacus-network/abacus-monorepo/pull/434 - -Minor - -- Bump typechain version to fix bug by @yorhodes in https://github.com/abacus-network/abacus-monorepo/pull/517 -- Remove `TransactionConfig` https://github.com/abacus-network/abacus-monorepo/pull/465/files - -## 0.1.1 - -- Initial Alpha Release of the SDK diff --git a/typescript/sdk/README.md b/typescript/sdk/README.md index d4c4284f69..d68e7756f6 100644 --- a/typescript/sdk/README.md +++ b/typescript/sdk/README.md @@ -1,5 +1,5 @@ -# Abacus Application SDK +# Hyperlane Application SDK -The Abacus Application SDK help developers manage multichain Abacus applications. This requires a higher level API than dApp developers are familiar with which is namespaced by target chain. +The Hyperlane Application SDK help developers manage multichain Hyperlane applications. This requires a higher level API than dApp developers are familiar with which is namespaced by target chain. -You can find the docs at https://docs.useabacus.network/abacus-docs/developers/application-sdk \ No newline at end of file +You can find the docs at https://docs.hyperlane.xyz/hyperlane-docs/developers/application-sdk diff --git a/typescript/sdk/package.json b/typescript/sdk/package.json index 8d056ec17c..6b7a8b6dc4 100644 --- a/typescript/sdk/package.json +++ b/typescript/sdk/package.json @@ -1,12 +1,12 @@ { - "name": "@abacus-network/sdk", - "description": "The official SDK for the Abacus Network", - "version": "0.4.1", + "name": "@hyperlane-xyz/sdk", + "description": "The official SDK for the Hyperlane Network", + "version": "0.5.0-beta0", "dependencies": { - "@abacus-network/app": "0.4.1", - "@abacus-network/celo-ethers-provider": "^0.1.0", - "@abacus-network/core": "0.4.1", - "@abacus-network/utils": "0.4.1", + "@hyperlane-xyz/app": "0.5.0-beta0", + "@hyperlane-xyz/celo-ethers-provider": "^0.1.1", + "@hyperlane-xyz/core": "0.5.0-beta0", + "@hyperlane-xyz/utils": "0.5.0-beta0", "@types/debug": "^4.1.7", "coingecko-api": "^1.0.10", "cross-fetch": "^3.1.5", @@ -32,15 +32,15 @@ "files": [ "/dist" ], - "homepage": "https://www.useabacus.network", + "homepage": "https://www.hyperlane.xyz", "keywords": [ - "Abacus", + "Hyperlane", "SDK", "Typescript" ], "license": "Apache-2.0", "main": "dist/index.js", - "repository": "https://github.com/abacus-network/abacus-monorepo", + "repository": "https://github.com/hyperlane-xyz/hyperlane-monorepo", "scripts": { "build": "tsc", "check": "tsc --noEmit", diff --git a/typescript/sdk/src/AbacusApp.ts b/typescript/sdk/src/HyperlaneApp.ts similarity index 86% rename from typescript/sdk/src/AbacusApp.ts rename to typescript/sdk/src/HyperlaneApp.ts index e6dd84acfe..e97aef591e 100644 --- a/typescript/sdk/src/AbacusApp.ts +++ b/typescript/sdk/src/HyperlaneApp.ts @@ -1,6 +1,6 @@ import { - AbacusAddresses, - AbacusContracts, + HyperlaneAddresses, + HyperlaneContracts, connectContracts, serializeContracts, } from './contracts'; @@ -9,8 +9,8 @@ import { ChainMap, ChainName, Connection } from './types'; import { MultiGeneric } from './utils/MultiGeneric'; import { objMap } from './utils/objects'; -export class AbacusApp< - Contracts extends AbacusContracts, +export class HyperlaneApp< + Contracts extends HyperlaneContracts, Chain extends ChainName = ChainName, > extends MultiGeneric { constructor( @@ -30,7 +30,7 @@ export class AbacusApp< return this.get(chain); } - getAddresses(chain: Chain): AbacusAddresses { + getAddresses(chain: Chain): HyperlaneAddresses { return serializeContracts(this.get(chain)); } diff --git a/typescript/sdk/src/consts/chainConnectionConfigs.ts b/typescript/sdk/src/consts/chainConnectionConfigs.ts index 445168e3d8..71b3fdf6cd 100644 --- a/typescript/sdk/src/consts/chainConnectionConfigs.ts +++ b/typescript/sdk/src/consts/chainConnectionConfigs.ts @@ -1,6 +1,6 @@ import { ethers } from 'ethers'; -import { StaticCeloJsonRpcProvider } from '@abacus-network/celo-ethers-provider'; +import { StaticCeloJsonRpcProvider } from '@hyperlane-xyz/celo-ethers-provider'; import { ChainMap, ChainName, IChainConnection } from '../types'; diff --git a/typescript/sdk/src/consts/chains.ts b/typescript/sdk/src/consts/chains.ts index a655d7c025..bf5ee62a07 100644 --- a/typescript/sdk/src/consts/chains.ts +++ b/typescript/sdk/src/consts/chains.ts @@ -1,7 +1,7 @@ import { ChainName } from '../types'; /** - * Enumeration of Abacus supported chains + * Enumeration of Hyperlane supported chains */ export enum Chains { // must be string type to be used with Object.keys arbitrum = 'arbitrum', diff --git a/typescript/sdk/src/consts/environments/mainnet.json b/typescript/sdk/src/consts/environments/mainnet.json index 5bf8fa30f1..e9019f2f6f 100644 --- a/typescript/sdk/src/consts/environments/mainnet.json +++ b/typescript/sdk/src/consts/environments/mainnet.json @@ -1,7 +1,7 @@ { "avalanche": { "upgradeBeaconController": "0x2C1FAbEcd7bFBdEBF27CcdB67baADB38b6Df90fC", - "abacusConnectionManager": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", + "connectionManager": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0xed9a722c543883FB7e07E78F3879762DE09eA7D5", @@ -74,7 +74,7 @@ }, "bsc": { "upgradeBeaconController": "0x149db7afD694722747035d5AEC7007ccb6F8f112", - "abacusConnectionManager": "0x19dc38aeae620380430C200a6E990D5Af5480117", + "connectionManager": "0x19dc38aeae620380430C200a6E990D5Af5480117", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x47bf94790241B1764fC41A35a8329A15569E121C", @@ -147,7 +147,7 @@ }, "polygon": { "upgradeBeaconController": "0x12582c7B0f43c6A667CBaA7fA8b112F7fb1E69F0", - "abacusConnectionManager": "0x1Ab68dC4f7b6cfcd00218D4b761b7F3b5a724555", + "connectionManager": "0x1Ab68dC4f7b6cfcd00218D4b761b7F3b5a724555", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x60B8d195f1b2EcaC26d54b95C69E6399cFD64b53", @@ -220,7 +220,7 @@ }, "celo": { "upgradeBeaconController": "0x48083C69f5a42c6B69ABbAd48AE195BD36770ee2", - "abacusConnectionManager": "0x12582c7B0f43c6A667CBaA7fA8b112F7fb1E69F0", + "connectionManager": "0x12582c7B0f43c6A667CBaA7fA8b112F7fb1E69F0", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0xCDeb368Db32ecCefaf7018e152DA9120565cb572", @@ -293,7 +293,7 @@ }, "arbitrum": { "upgradeBeaconController": "0x2C1FAbEcd7bFBdEBF27CcdB67baADB38b6Df90fC", - "abacusConnectionManager": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", + "connectionManager": "0x8b83fefd896fAa52057798f6426E9f0B080FCCcE", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x376aD181E8cd45eAd5403F78d5A871D08c3c4D77", @@ -366,7 +366,7 @@ }, "optimism": { "upgradeBeaconController": "0x15ab173bDB6832f9b64276bA128659b0eD77730B", - "abacusConnectionManager": "0xd83A4F747fE80Ed98839e05079B1B7Fe037b1638", + "connectionManager": "0xd83A4F747fE80Ed98839e05079B1B7Fe037b1638", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0xc5D6aCaafBCcEC6D7fD7d92F4509befce641c563", @@ -439,7 +439,7 @@ }, "ethereum": { "upgradeBeaconController": "0x2f2aFaE1139Ce54feFC03593FeE8AB2aDF4a85A7", - "abacusConnectionManager": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", + "connectionManager": "0xeA87ae93Fa0019a82A727bfd3eBd1cFCa8f64f1D", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x17E216fBb22dF4ef8A6640ae9Cb147C92710ac84", diff --git a/typescript/sdk/src/consts/environments/test.json b/typescript/sdk/src/consts/environments/test.json index c7104bc659..db1bfcb98c 100644 --- a/typescript/sdk/src/consts/environments/test.json +++ b/typescript/sdk/src/consts/environments/test.json @@ -1,7 +1,7 @@ { "test1": { "upgradeBeaconController": "0x5FbDB2315678afecb367f032d93F642f64180aa3", - "abacusConnectionManager": "0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9", + "connectionManager": "0xDc64a140Aa3E981100a9becA4E685f962f0cF6C9", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9", @@ -38,7 +38,7 @@ }, "test2": { "upgradeBeaconController": "0x68B1D87F95878fE05B998F19b66F4baba5De1aed", - "abacusConnectionManager": "0x4ed7c70F96B99c776995fB64377f0d4aB3B0e1C1", + "connectionManager": "0x4ed7c70F96B99c776995fB64377f0d4aB3B0e1C1", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x59b670e9fA9D0A427751Af201D676719a970857b", @@ -75,7 +75,7 @@ }, "test3": { "upgradeBeaconController": "0x851356ae760d987E095750cCeb3bC6014560891C", - "abacusConnectionManager": "0x70e0bA845a1A0F2DA3359C97E0285013525FFC49", + "connectionManager": "0x70e0bA845a1A0F2DA3359C97E0285013525FFC49", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x998abeb3E57409262aE5b751f60747921B33613E", diff --git a/typescript/sdk/src/consts/environments/testnet2.json b/typescript/sdk/src/consts/environments/testnet2.json index a7d110b6ca..b639bf86b6 100644 --- a/typescript/sdk/src/consts/environments/testnet2.json +++ b/typescript/sdk/src/consts/environments/testnet2.json @@ -1,7 +1,7 @@ { "alfajores": { "upgradeBeaconController": "0x15e07BD101dfB4e8C2D0B368AbFeE3524e541277", - "abacusConnectionManager": "0xc41169650335Ad274157Ea5116Cdf227430A68a3", + "connectionManager": "0xc41169650335Ad274157Ea5116Cdf227430A68a3", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x1Fb165396FB26AC4178ca4240b3724039F75EED7", @@ -92,7 +92,7 @@ }, "kovan": { "upgradeBeaconController": "0x38030040C09B213ec47F121c9B8a396D7FC2636b", - "abacusConnectionManager": "0xfA1fBF362144ae1bEf2E33409948dA1FB812bb41", + "connectionManager": "0xfA1fBF362144ae1bEf2E33409948dA1FB812bb41", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x74234D5EEb6229fD75fF5370fab7D9819295F0D5", @@ -183,7 +183,7 @@ }, "fuji": { "upgradeBeaconController": "0x97Bbc6bBaFa5Ce3b2FA966c121Af63bD09e940f8", - "abacusConnectionManager": "0x33AbaF6708be03Bdf0595DA0745A7111b01dB8c7", + "connectionManager": "0x33AbaF6708be03Bdf0595DA0745A7111b01dB8c7", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x4834a491f78BBF48e983F9Ce0E20D1E4DbE013D8", @@ -274,7 +274,7 @@ }, "mumbai": { "upgradeBeaconController": "0xC81e6D1070aFA48DA4e4f35E744CC1aE43532a10", - "abacusConnectionManager": "0xb636B2c65A75d41F0dBe98fB33eb563d245a241a", + "connectionManager": "0xb636B2c65A75d41F0dBe98fB33eb563d245a241a", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x9A27744C249A11f68B3B56f09D280599585DFBb8", @@ -365,7 +365,7 @@ }, "bsctestnet": { "upgradeBeaconController": "0x638A831b4d11Be6a72AcB97d1aE79DA05Ae9B1D3", - "abacusConnectionManager": "0xe403E16db1f5997bC62Dc611A8d42836364A7f01", + "connectionManager": "0xe403E16db1f5997bC62Dc611A8d42836364A7f01", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x155b1F1801030Ea4dF038107d3cc1b4bA496916e", @@ -456,7 +456,7 @@ }, "arbitrumrinkeby": { "upgradeBeaconController": "0xA6cb9B457d1670bb5cDa4AAADA56a2d010E49bb9", - "abacusConnectionManager": "0xFb55597F07417b08195Ba674f4dd58aeC9B89FBB", + "connectionManager": "0xFb55597F07417b08195Ba674f4dd58aeC9B89FBB", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x76D20943b68985dF999C5bb13d6E7AdF3CFc276F", @@ -547,7 +547,7 @@ }, "optimismkovan": { "upgradeBeaconController": "0xc0Ce04851bF6Ea149fA06bf7a4808c9db81af189", - "abacusConnectionManager": "0x740bEd6E4eEc7c57a2818177Fba3f9E896D5DE1c", + "connectionManager": "0x740bEd6E4eEc7c57a2818177Fba3f9E896D5DE1c", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0xD7D2B0f61B834D98772e938Fa64425587C0f3481", @@ -638,7 +638,7 @@ }, "goerli": { "upgradeBeaconController": "0x275aCcCa81cAD931dC6fB6E49ED233Bc99Bed4A7", - "abacusConnectionManager": "0xC2E36cd6e32e194EE11f15D9273B64461A4D49A2", + "connectionManager": "0xC2E36cd6e32e194EE11f15D9273B64461A4D49A2", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0x44b764045BfDC68517e10e783E69B376cef196B2", @@ -729,7 +729,7 @@ }, "moonbasealpha": { "upgradeBeaconController": "0x6E7b29CB2A7617405B4d30C6f84bBD51b4Bb4be8", - "abacusConnectionManager": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37", + "connectionManager": "0x16B710b86CAd07E6F1C531861a16F5feC29dba37", "interchainGasPaymaster": { "kind": "UpgradeBeacon", "proxy": "0xeb6f11189197223c656807a83B0DD374f9A6dF44", diff --git a/typescript/sdk/src/contracts.ts b/typescript/sdk/src/contracts.ts index 7871002b48..a1fcf9a660 100644 --- a/typescript/sdk/src/contracts.ts +++ b/typescript/sdk/src/contracts.ts @@ -1,36 +1,36 @@ import { ethers } from 'ethers'; -import type { types } from '@abacus-network/utils'; +import type { types } from '@hyperlane-xyz/utils'; import { ProxiedContract, ProxyAddresses, isProxyAddresses } from './proxy'; import { Connection } from './types'; import { objMap } from './utils/objects'; -export type AbacusFactories = { +export type HyperlaneFactories = { [key: string]: ethers.ContractFactory; }; -export type AbacusContracts = { +export type HyperlaneContracts = { [key: Exclude]: | ethers.Contract | ProxiedContract - | AbacusContracts; + | HyperlaneContracts; }; -export type AbacusAddresses = { - [key: string]: types.Address | ProxyAddresses | AbacusAddresses; +export type HyperlaneAddresses = { + [key: string]: types.Address | ProxyAddresses | HyperlaneAddresses; }; export function serializeContracts( - contractOrObject: AbacusContracts, + contractOrObject: HyperlaneContracts, max_depth = 5, -): AbacusAddresses { +): HyperlaneAddresses { if (max_depth === 0) { throw new Error('serializeContracts tried to go too deep'); } return objMap( contractOrObject, - (_, contract: any): string | ProxyAddresses | AbacusAddresses => { + (_, contract: any): string | ProxyAddresses | HyperlaneAddresses => { if (contract instanceof ProxiedContract) { return contract.addresses; } else if (contract.address) { @@ -44,7 +44,7 @@ export function serializeContracts( function getFactory( key: string, - factories: AbacusFactories, + factories: HyperlaneFactories, ): ethers.ContractFactory { if (!(key in factories)) { throw new Error(`Factories entry missing for ${key}`); @@ -53,10 +53,10 @@ function getFactory( } export function buildContracts( - addressOrObject: AbacusAddresses, - factories: AbacusFactories, + addressOrObject: HyperlaneAddresses, + factories: HyperlaneFactories, max_depth = 5, -): AbacusContracts { +): HyperlaneContracts { if (max_depth === 0) { throw new Error('buildContracts tried to go too deep'); } @@ -68,7 +68,7 @@ export function buildContracts( return getFactory(key, factories).attach(address); } else { return buildContracts( - address as AbacusAddresses, + address as HyperlaneAddresses, factories, max_depth - 1, ); @@ -76,7 +76,7 @@ export function buildContracts( }); } -export function connectContracts( +export function connectContracts( contractOrObject: Contracts, connection: Connection, max_depth = 5, diff --git a/typescript/sdk/src/core/AbacusCore.ts b/typescript/sdk/src/core/HyperlaneCore.ts similarity index 90% rename from typescript/sdk/src/core/AbacusCore.ts rename to typescript/sdk/src/core/HyperlaneCore.ts index 0e75eff940..cfa66e6f98 100644 --- a/typescript/sdk/src/core/AbacusCore.ts +++ b/typescript/sdk/src/core/HyperlaneCore.ts @@ -1,9 +1,9 @@ import { ethers } from 'ethers'; -import { Inbox, Outbox, Outbox__factory } from '@abacus-network/core'; -import { types, utils } from '@abacus-network/utils'; +import { Inbox, Outbox, Outbox__factory } from '@hyperlane-xyz/core'; +import { types, utils } from '@hyperlane-xyz/utils'; -import { AbacusApp } from '../AbacusApp'; +import { HyperlaneApp } from '../HyperlaneApp'; import { environments } from '../consts/environments'; import { buildContracts } from '../contracts'; import { DomainIdToChainName } from '../domains'; @@ -31,10 +31,9 @@ export type DispatchedMessage = { parsed: types.ParsedMessage; }; -export class AbacusCore extends AbacusApp< - CoreContracts, - Chain -> { +export class HyperlaneCore< + Chain extends ChainName = ChainName, +> extends HyperlaneApp, Chain> { constructor( contractsMap: CoreContractsMap, multiProvider: MultiProvider, @@ -68,7 +67,7 @@ export class AbacusCore extends AbacusApp< coreFactories, ) as CoreContractsMap; - return new AbacusCore(contractsMap, intersectionProvider); + return new HyperlaneCore(contractsMap, intersectionProvider); } // override type to be derived from chain key @@ -79,7 +78,7 @@ export class AbacusCore extends AbacusApp< getConnectionClientConfig(chain: Chain): ConnectionClientConfig { const contracts = this.getContracts(chain); return { - abacusConnectionManager: contracts.abacusConnectionManager.address, + connectionManager: contracts.connectionManager.address, interchainGasPaymaster: contracts.interchainGasPaymaster.address, }; } @@ -105,11 +104,10 @@ export class AbacusCore extends AbacusApp< // TODO: deprecate extendWithConnectionManagers( config: ChainMap, - ): ChainMap { + ): ChainMap { return objMap(config, (chain, config) => ({ ...config, - abacusConnectionManager: - this.getContracts(chain).abacusConnectionManager.address, + connectionManager: this.getContracts(chain).connectionManager.address, })); } diff --git a/typescript/sdk/src/core/TestCoreApp.ts b/typescript/sdk/src/core/TestCoreApp.ts index 8392779984..33779a7fd5 100644 --- a/typescript/sdk/src/core/TestCoreApp.ts +++ b/typescript/sdk/src/core/TestCoreApp.ts @@ -1,14 +1,14 @@ import { ethers } from 'ethers'; -import { TestInbox, TestOutbox } from '@abacus-network/core'; -import { types, utils } from '@abacus-network/utils'; +import { TestInbox, TestOutbox } from '@hyperlane-xyz/core'; +import { types, utils } from '@hyperlane-xyz/utils'; import { chainMetadata } from '../consts/chainMetadata'; import { DomainIdToChainName } from '../domains'; import { ProxiedContract } from '../proxy'; import { ChainMap, ChainName, Remotes, TestChainNames } from '../types'; -import { AbacusCore } from './AbacusCore'; +import { HyperlaneCore } from './HyperlaneCore'; import { CoreContracts, InboxContracts, OutboxContracts } from './contracts'; type MockProxyAddresses = { @@ -34,7 +34,7 @@ export type TestCoreContracts = CoreContracts< export class TestCoreApp< TestChain extends TestChainNames = TestChainNames, -> extends AbacusCore { +> extends HyperlaneCore { getContracts( chain: Local, ): TestCoreContracts { diff --git a/typescript/sdk/src/core/TestCoreDeployer.ts b/typescript/sdk/src/core/TestCoreDeployer.ts index 94f2c9789d..5fe4cbe427 100644 --- a/typescript/sdk/src/core/TestCoreDeployer.ts +++ b/typescript/sdk/src/core/TestCoreDeployer.ts @@ -1,9 +1,9 @@ import { ethers } from 'ethers'; -import { TestInbox__factory, TestOutbox__factory } from '@abacus-network/core'; +import { TestInbox__factory, TestOutbox__factory } from '@hyperlane-xyz/core'; import { chainMetadata } from '../consts/chainMetadata'; -import { AbacusCoreDeployer } from '../deploy/core/AbacusCoreDeployer'; +import { HyperlaneCoreDeployer } from '../deploy/core/HyperlaneCoreDeployer'; import { CoreConfig, ValidatorManagerConfig } from '../deploy/core/types'; import { MultiProvider } from '../providers/MultiProvider'; import { ProxiedContract } from '../proxy'; @@ -42,7 +42,7 @@ function mockProxy(contract: ethers.Contract) { export class TestCoreDeployer< TestChain extends TestChainNames = TestChainNames, -> extends AbacusCoreDeployer { +> extends HyperlaneCoreDeployer { constructor( public readonly multiProvider: MultiProvider, configMap?: ChainMap, diff --git a/typescript/sdk/src/core/contracts.ts b/typescript/sdk/src/core/contracts.ts index 0f3a59c8f2..15fb17ebd2 100644 --- a/typescript/sdk/src/core/contracts.ts +++ b/typescript/sdk/src/core/contracts.ts @@ -13,7 +13,7 @@ import { Outbox__factory, UpgradeBeaconController, UpgradeBeaconController__factory, -} from '@abacus-network/core'; +} from '@hyperlane-xyz/core'; import { BeaconProxyAddresses, ProxiedContract } from '../proxy'; import { ChainName, RemoteChainMap } from '../types'; @@ -33,7 +33,7 @@ type ConnectionClientContracts = { InterchainGasPaymaster, BeaconProxyAddresses >; - abacusConnectionManager: AbacusConnectionManager; + connectionManager: AbacusConnectionManager; }; export type CoreContracts< @@ -56,7 +56,7 @@ const outboxFactories = { }; export const coreFactories = { - abacusConnectionManager: new AbacusConnectionManager__factory(), + connectionManager: new AbacusConnectionManager__factory(), upgradeBeaconController: new UpgradeBeaconController__factory(), interchainGasPaymaster: new InterchainGasPaymaster__factory(), ...inboxFactories, diff --git a/typescript/sdk/src/core/events.ts b/typescript/sdk/src/core/events.ts index 5a0ef25ca6..a5a893fcd7 100644 --- a/typescript/sdk/src/core/events.ts +++ b/typescript/sdk/src/core/events.ts @@ -1,11 +1,11 @@ -import type { ProcessEvent } from '@abacus-network/core/dist/contracts/Inbox'; -import type { DispatchEvent } from '@abacus-network/core/dist/contracts/Outbox'; +import type { ProcessEvent } from '@hyperlane-xyz/core/dist/contracts/Inbox'; +import type { DispatchEvent } from '@hyperlane-xyz/core/dist/contracts/Outbox'; import { Annotated } from '../events'; export { DispatchEvent, ProcessEvent }; -export type AbacusLifecyleEvent = ProcessEvent | DispatchEvent; +export type HyperlaneLifecyleEvent = ProcessEvent | DispatchEvent; export type AnnotatedDispatch = Annotated; export type AnnotatedProcess = Annotated; diff --git a/typescript/sdk/src/core/message.ts b/typescript/sdk/src/core/message.ts index b7871598f6..4c689937ee 100644 --- a/typescript/sdk/src/core/message.ts +++ b/typescript/sdk/src/core/message.ts @@ -1,7 +1,7 @@ import { BigNumber, utils as ethersUtils, providers } from 'ethers'; -import { Inbox, Outbox, Outbox__factory } from '@abacus-network/core'; -import { types, utils } from '@abacus-network/utils'; +import { Inbox, Outbox, Outbox__factory } from '@hyperlane-xyz/core'; +import { types, utils } from '@hyperlane-xyz/utils'; import { ChainNameToDomainId, DomainIdToChainName } from '../domains'; import { Annotated, findAnnotatedSingleEvent } from '../events'; @@ -9,7 +9,7 @@ import { MultiProvider } from '../providers/MultiProvider'; import { ChainName, NameOrDomain } from '../types'; import { delay } from '../utils/time'; -import { AbacusCore } from './AbacusCore'; +import { HyperlaneCore } from './HyperlaneCore'; import { AnnotatedDispatch, AnnotatedLifecycleEvent, @@ -37,7 +37,7 @@ export const resolveNetworks = ( }; }; -export type AbacusStatus = { +export type HyperlaneStatus = { status: MessageStatus; events: AnnotatedLifecycleEvent[]; }; @@ -59,24 +59,24 @@ export type EventCache = { process?: AnnotatedProcess; }; -// TODO: move AbacusMessage into AbacusCore app +// TODO: move HyperlaneMessage into HyperlaneCore app /** - * A deserialized Abacus message. + * A deserialized Hyperlane message. */ -export class AbacusMessage { +export class HyperlaneMessage { readonly dispatch: AnnotatedDispatch; readonly message: types.ParsedMessage; readonly outbox: Outbox; readonly inbox: Inbox; readonly multiProvider: MultiProvider; - readonly core: AbacusCore; + readonly core: HyperlaneCore; protected cache: EventCache; constructor( multiProvider: MultiProvider, - core: AbacusCore, + core: HyperlaneCore, dispatch: AnnotatedDispatch, ) { this.multiProvider = multiProvider; @@ -105,18 +105,18 @@ export class AbacusMessage { /** * Instantiate one or more messages from a receipt. * - * @param core the {@link AbacusCore} object to use + * @param core the {@link HyperlaneCore} object to use * @param nameOrDomain the domain on which the receipt was logged * @param receipt the receipt - * @returns an array of {@link AbacusMessage} objects + * @returns an array of {@link HyperlaneMessage} objects */ static fromReceipt( multiProvider: MultiProvider, - core: AbacusCore, + core: HyperlaneCore, nameOrDomain: NameOrDomain, receipt: providers.TransactionReceipt, - ): AbacusMessage[] { - const messages: AbacusMessage[] = []; + ): HyperlaneMessage[] { + const messages: HyperlaneMessage[] = []; const outbox = new Outbox__factory().interface; const chain = resolveDomain(nameOrDomain); const provider = multiProvider.getChainConnection(chain).provider!; @@ -140,7 +140,7 @@ export class AbacusMessage { true, ); annotated.event.blockNumber = annotated.receipt.blockNumber; - const message = new AbacusMessage(multiProvider, core, annotated); + const message = new HyperlaneMessage(multiProvider, core, annotated); messages.push(message); } } catch (e) { @@ -153,19 +153,19 @@ export class AbacusMessage { /** * Instantiate EXACTLY one message from a receipt. * - * @param core the {@link AbacusCore} object to use + * @param core the {@link HyperlaneCore} object to use * @param nameOrDomain the domain on which the receipt was logged * @param receipt the receipt - * @returns an array of {@link AbacusMessage} objects + * @returns an array of {@link HyperlaneMessage} objects * @throws if there is not EXACTLY 1 dispatch in the receipt */ static singleFromReceipt( multiProvider: MultiProvider, - core: AbacusCore, + core: HyperlaneCore, nameOrDomain: NameOrDomain, receipt: providers.TransactionReceipt, - ): AbacusMessage { - const messages: AbacusMessage[] = AbacusMessage.fromReceipt( + ): HyperlaneMessage { + const messages: HyperlaneMessage[] = HyperlaneMessage.fromReceipt( multiProvider, core, nameOrDomain, @@ -180,18 +180,18 @@ export class AbacusMessage { /** * Instantiate one or more messages from a tx hash. * - * @param core the {@link AbacusCore} object to use + * @param core the {@link HyperlaneCore} object to use * @param nameOrDomain the domain on which the receipt was logged * @param receipt the receipt - * @returns an array of {@link AbacusMessage} objects + * @returns an array of {@link HyperlaneMessage} objects * @throws if there is no receipt for the TX */ static async fromTransactionHash( multiProvider: MultiProvider, - core: AbacusCore, + core: HyperlaneCore, nameOrDomain: NameOrDomain, transactionHash: string, - ): Promise { + ): Promise { const provider = multiProvider.getChainConnection( resolveDomain(nameOrDomain), ).provider!; @@ -199,7 +199,7 @@ export class AbacusMessage { if (!receipt) { throw new Error(`No receipt for ${transactionHash} on ${nameOrDomain}`); } - return AbacusMessage.fromReceipt( + return HyperlaneMessage.fromReceipt( multiProvider, core, nameOrDomain, @@ -210,19 +210,19 @@ export class AbacusMessage { /** * Instantiate EXACTLY one message from a transaction has. * - * @param core the {@link AbacusCore} object to use + * @param core the {@link HyperlaneCore} object to use * @param nameOrDomain the domain on which the receipt was logged * @param receipt the receipt - * @returns an array of {@link AbacusMessage} objects + * @returns an array of {@link HyperlaneMessage} objects * @throws if there is no receipt for the TX, or if not EXACTLY 1 dispatch in * the receipt */ static async singleFromTransactionHash( multiProvider: MultiProvider, - core: AbacusCore, + core: HyperlaneCore, nameOrDomain: NameOrDomain, transactionHash: string, - ): Promise { + ): Promise { const provider = multiProvider.getChainConnection( resolveDomain(nameOrDomain), ).provider!; @@ -230,7 +230,7 @@ export class AbacusMessage { if (!receipt) { throw new Error(`No receipt for ${transactionHash} on ${nameOrDomain}`); } - return AbacusMessage.singleFromReceipt( + return HyperlaneMessage.singleFromReceipt( multiProvider, core, nameOrDomain, @@ -272,7 +272,7 @@ export class AbacusMessage { * * @returns An array of {@link AnnotatedLifecycleEvent} objects */ - async events(): Promise { + async events(): Promise { const events: AnnotatedLifecycleEvent[] = [this.dispatch]; // attempt to get Inbox process const process = await this.getProcess(); diff --git a/typescript/sdk/src/core/testAbacusDeploy.hardhat-test.ts b/typescript/sdk/src/core/testHyperlaneDeploy.hardhat-test.ts similarity index 72% rename from typescript/sdk/src/core/testAbacusDeploy.hardhat-test.ts rename to typescript/sdk/src/core/testHyperlaneDeploy.hardhat-test.ts index 85e1969813..930cebef33 100644 --- a/typescript/sdk/src/core/testAbacusDeploy.hardhat-test.ts +++ b/typescript/sdk/src/core/testHyperlaneDeploy.hardhat-test.ts @@ -4,8 +4,8 @@ import { expect } from 'chai'; import { ContractReceipt } from 'ethers'; import { ethers } from 'hardhat'; -import { TestOutbox, TestRecipient__factory } from '@abacus-network/core'; -import { utils } from '@abacus-network/utils'; +import { TestOutbox, TestRecipient__factory } from '@hyperlane-xyz/core'; +import { utils } from '@hyperlane-xyz/utils'; import { chainMetadata } from '../consts/chainMetadata'; import { getTestMultiProvider } from '../deploy/utils'; @@ -20,7 +20,7 @@ const remoteDomain = chainMetadata[remoteChain].id; const message = '0xdeadbeef'; describe('TestCoreDeployer', async () => { - let abacus: TestCoreApp, + let testCoreApp: TestCoreApp, localOutbox: TestOutbox, remoteOutbox: TestOutbox, dispatchReceipt: ContractReceipt; @@ -30,10 +30,10 @@ describe('TestCoreDeployer', async () => { const multiProvider = getTestMultiProvider(signer); const deployer = new TestCoreDeployer(multiProvider); - abacus = await deployer.deployApp(); + testCoreApp = await deployer.deployApp(); const recipient = await new TestRecipient__factory(signer).deploy(); - localOutbox = abacus.getContracts(localChain).outbox.contract; + localOutbox = testCoreApp.getContracts(localChain).outbox.contract; const dispatchResponse = localOutbox.dispatch( remoteDomain, @@ -41,10 +41,10 @@ describe('TestCoreDeployer', async () => { message, ); await expect(dispatchResponse).to.emit(localOutbox, 'Dispatch'); - dispatchReceipt = await abacus.multiProvider + dispatchReceipt = await testCoreApp.multiProvider .getChainConnection(localChain) .handleTx(dispatchResponse); - remoteOutbox = abacus.getContracts(remoteChain).outbox.contract; + remoteOutbox = testCoreApp.getContracts(remoteChain).outbox.contract; await expect( remoteOutbox.dispatch( localDomain, @@ -55,27 +55,31 @@ describe('TestCoreDeployer', async () => { }); it('processes outbound messages for a single domain', async () => { - const responses = await abacus.processOutboundMessages(localChain); + const responses = await testCoreApp.processOutboundMessages(localChain); expect(responses.get(remoteChain)!.length).to.equal(1); }); it('processes outbound messages for two domains', async () => { - const localResponses = await abacus.processOutboundMessages(localChain); + const localResponses = await testCoreApp.processOutboundMessages( + localChain, + ); expect(localResponses.get(remoteChain)!.length).to.equal(1); - const remoteResponses = await abacus.processOutboundMessages(remoteChain); + const remoteResponses = await testCoreApp.processOutboundMessages( + remoteChain, + ); expect(remoteResponses.get(localChain)!.length).to.equal(1); }); it('processes all messages', async () => { - const responses = await abacus.processMessages(); + const responses = await testCoreApp.processMessages(); expect(responses.get(localChain)!.get(remoteChain)!.length).to.equal(1); expect(responses.get(remoteChain)!.get(localChain)!.length).to.equal(1); }); it('waits on message processing receipts', async () => { const [receipts] = await Promise.all([ - abacus.waitForMessageProcessing(dispatchReceipt), - abacus.processOutboundMessages(localChain), + testCoreApp.waitForMessageProcessing(dispatchReceipt), + testCoreApp.processOutboundMessages(localChain), ]); expect(receipts).to.have.length(1); }); diff --git a/typescript/sdk/src/deploy/AbacusAppChecker.ts b/typescript/sdk/src/deploy/HyperlaneAppChecker.ts similarity index 91% rename from typescript/sdk/src/deploy/AbacusAppChecker.ts rename to typescript/sdk/src/deploy/HyperlaneAppChecker.ts index 39e7bddc69..b17c6b5530 100644 --- a/typescript/sdk/src/deploy/AbacusAppChecker.ts +++ b/typescript/sdk/src/deploy/HyperlaneAppChecker.ts @@ -1,8 +1,8 @@ -import { Ownable } from '@abacus-network/core'; -import { utils } from '@abacus-network/utils'; -import type { types } from '@abacus-network/utils'; +import { Ownable } from '@hyperlane-xyz/core'; +import { utils } from '@hyperlane-xyz/utils'; +import type { types } from '@hyperlane-xyz/utils'; -import { AbacusApp } from '../AbacusApp'; +import { HyperlaneApp } from '../HyperlaneApp'; import { MultiProvider } from '../providers/MultiProvider'; import { BeaconProxyAddresses } from '../proxy'; import { ChainMap, ChainName } from '../types'; @@ -10,9 +10,9 @@ import { ChainMap, ChainName } from '../types'; import { upgradeBeaconImplementation, upgradeBeaconViolation } from './proxy'; import { CheckerViolation, OwnerViolation, ViolationType } from './types'; -export abstract class AbacusAppChecker< +export abstract class HyperlaneAppChecker< Chain extends ChainName, - App extends AbacusApp, + App extends HyperlaneApp, Config, > { readonly multiProvider: MultiProvider; diff --git a/typescript/sdk/src/deploy/AbacusDeployer.ts b/typescript/sdk/src/deploy/HyperlaneDeployer.ts similarity index 96% rename from typescript/sdk/src/deploy/AbacusDeployer.ts rename to typescript/sdk/src/deploy/HyperlaneDeployer.ts index 0e19f669bb..175bf47f5e 100644 --- a/typescript/sdk/src/deploy/AbacusDeployer.ts +++ b/typescript/sdk/src/deploy/HyperlaneDeployer.ts @@ -5,12 +5,12 @@ import { Ownable, UpgradeBeaconProxy__factory, UpgradeBeacon__factory, -} from '@abacus-network/core'; -import type { types } from '@abacus-network/utils'; +} from '@hyperlane-xyz/core'; +import type { types } from '@hyperlane-xyz/utils'; import { - AbacusContracts, - AbacusFactories, + HyperlaneContracts, + HyperlaneFactories, connectContracts, serializeContracts, } from '../contracts'; @@ -26,11 +26,11 @@ export interface DeployerOptions { logger?: Debugger; } -export abstract class AbacusDeployer< +export abstract class HyperlaneDeployer< Chain extends ChainName, Config, - Contracts extends AbacusContracts, - Factories extends AbacusFactories, + Contracts extends HyperlaneContracts, + Factories extends HyperlaneFactories, > { public deployedContracts: Partial>> = {}; @@ -44,7 +44,7 @@ export abstract class AbacusDeployer< protected readonly options?: DeployerOptions, ) { this.verificationInputs = objMap(configMap, () => []); - this.logger = options?.logger || debug('abacus:AppDeployer'); + this.logger = options?.logger || debug('hyperlane:AppDeployer'); } abstract deployContracts(chain: Chain, config: Config): Promise; diff --git a/typescript/sdk/src/deploy/core/AbacusCoreChecker.ts b/typescript/sdk/src/deploy/core/HyperlaneCoreChecker.ts similarity index 89% rename from typescript/sdk/src/deploy/core/AbacusCoreChecker.ts rename to typescript/sdk/src/deploy/core/HyperlaneCoreChecker.ts index a79b539b70..f6d63042e3 100644 --- a/typescript/sdk/src/deploy/core/AbacusCoreChecker.ts +++ b/typescript/sdk/src/deploy/core/HyperlaneCoreChecker.ts @@ -1,16 +1,16 @@ -import { MultisigValidatorManager } from '@abacus-network/core'; -import { utils } from '@abacus-network/utils'; +import { MultisigValidatorManager } from '@hyperlane-xyz/core'; +import { utils } from '@hyperlane-xyz/utils'; import { chainMetadata } from '../../consts/chainMetadata'; -import { AbacusCore } from '../../core/AbacusCore'; +import { HyperlaneCore } from '../../core/HyperlaneCore'; import { ChainNameToDomainId } from '../../domains'; import { BeaconProxyAddresses } from '../../proxy'; import { ChainName } from '../../types'; import { objMap, promiseObjAll } from '../../utils/objects'; -import { AbacusAppChecker } from '../AbacusAppChecker'; +import { HyperlaneAppChecker } from '../HyperlaneAppChecker'; import { - AbacusConnectionManagerViolationType, + ConnectionManagerViolationType, CoreConfig, CoreViolationType, EnrolledInboxesViolation, @@ -22,9 +22,9 @@ import { ValidatorManagerViolationType, } from './types'; -export class AbacusCoreChecker< +export class HyperlaneCoreChecker< Chain extends ChainName, -> extends AbacusAppChecker, CoreConfig> { +> extends HyperlaneAppChecker, CoreConfig> { async checkChain(chain: Chain): Promise { const config = this.configMap[chain]; // skip chains that are configured to be removed @@ -36,7 +36,7 @@ export class AbacusCoreChecker< await this.checkProxiedContracts(chain); await this.checkOutbox(chain); await this.checkInboxes(chain); - await this.checkAbacusConnectionManager(chain); + await this.checkConnectionManager(chain); await this.checkValidatorManagers(chain); await this.checkInterchainGasPaymaster(chain); } @@ -46,7 +46,7 @@ export class AbacusCoreChecker< if (config.owner) { const contracts = this.app.getContracts(chain); const ownables = [ - contracts.abacusConnectionManager, + contracts.connectionManager, contracts.upgradeBeaconController, contracts.outbox.contract, contracts.outboxValidatorManager, @@ -206,7 +206,7 @@ export class AbacusCoreChecker< ); } - async checkAbacusConnectionManager(chain: Chain): Promise { + async checkConnectionManager(chain: Chain): Promise { const coreContracts = this.app.getContracts(chain); await promiseObjAll( objMap(coreContracts.inboxes, async (remote, inbox) => { @@ -219,16 +219,16 @@ export class AbacusCoreChecker< // actual configured inboxes for remote on chain const remoteDomain = chainMetadata[remote].id; const enrolledInboxes = new Set( - await coreContracts.abacusConnectionManager.getInboxes(remoteDomain), + await coreContracts.connectionManager.getInboxes(remoteDomain), ); if (!utils.setEquality(enrolledInboxes, expectedInboxes)) { const violation: EnrolledInboxesViolation = { - type: CoreViolationType.AbacusConnectionManager, - abacusConnectionManagerType: - AbacusConnectionManagerViolationType.EnrolledInboxes, + type: CoreViolationType.ConnectionManager, + connectionManagerType: + ConnectionManagerViolationType.EnrolledInboxes, remote, - contract: coreContracts.abacusConnectionManager, + contract: coreContracts.connectionManager, chain: chain, actual: enrolledInboxes, expected: expectedInboxes, @@ -238,8 +238,8 @@ export class AbacusCoreChecker< }), ); - // Outbox is set on abacusConnectionManager - const outbox = await coreContracts.abacusConnectionManager.outbox(); + // Outbox is set on connectionManager + const outbox = await coreContracts.connectionManager.outbox(); utils.assert(outbox === coreContracts.outbox.address); } diff --git a/typescript/sdk/src/deploy/core/AbacusCoreDeployer.ts b/typescript/sdk/src/deploy/core/HyperlaneCoreDeployer.ts similarity index 86% rename from typescript/sdk/src/deploy/core/AbacusCoreDeployer.ts rename to typescript/sdk/src/deploy/core/HyperlaneCoreDeployer.ts index 41859b9c09..e843561db9 100644 --- a/typescript/sdk/src/deploy/core/AbacusCoreDeployer.ts +++ b/typescript/sdk/src/deploy/core/HyperlaneCoreDeployer.ts @@ -1,11 +1,11 @@ import debug from 'debug'; import { ethers } from 'ethers'; -import { Inbox, Ownable } from '@abacus-network/core'; -import type { types } from '@abacus-network/utils'; +import { Inbox, Ownable } from '@hyperlane-xyz/core'; +import type { types } from '@hyperlane-xyz/utils'; import { chainMetadata } from '../../consts/chainMetadata'; -import { AbacusCore, CoreContractsMap } from '../../core/AbacusCore'; +import { CoreContractsMap, HyperlaneCore } from '../../core/HyperlaneCore'; import { CoreContracts, InboxContracts, @@ -17,11 +17,13 @@ import { MultiProvider } from '../../providers/MultiProvider'; import { BeaconProxyAddresses, ProxiedContract } from '../../proxy'; import { ChainMap, ChainName, RemoteChainMap, Remotes } from '../../types'; import { objMap, promiseObjAll } from '../../utils/objects'; -import { AbacusDeployer } from '../AbacusDeployer'; +import { HyperlaneDeployer } from '../HyperlaneDeployer'; import { CoreConfig, ValidatorManagerConfig } from './types'; -export class AbacusCoreDeployer extends AbacusDeployer< +export class HyperlaneCoreDeployer< + Chain extends ChainName, +> extends HyperlaneDeployer< Chain, CoreConfig, CoreContracts, @@ -35,7 +37,7 @@ export class AbacusCoreDeployer extends AbacusDeployer< factoriesOverride = coreFactories, ) { super(multiProvider, configMap, factoriesOverride, { - logger: debug('abacus:CoreDeployer'), + logger: debug('hyperlane:CoreDeployer'), }); this.startingBlockNumbers = objMap(configMap, () => undefined); } @@ -135,9 +137,9 @@ export class AbacusCoreDeployer extends AbacusDeployer< [], ); - const abacusConnectionManager = await this.deployContract( + const connectionManager = await this.deployContract( chain, - 'abacusConnectionManager', + 'connectionManager', [], ); @@ -146,10 +148,10 @@ export class AbacusCoreDeployer extends AbacusDeployer< config.validatorManager, upgradeBeaconController.address, ); - await super.runIfOwner(chain, abacusConnectionManager, async () => { - const current = await abacusConnectionManager.outbox(); + await super.runIfOwner(chain, connectionManager, async () => { + const current = await connectionManager.outbox(); if (current !== outbox.outbox.address) { - const outboxTx = await abacusConnectionManager.setOutbox( + const outboxTx = await connectionManager.setOutbox( outbox.outbox.address, dc.overrides, ); @@ -178,12 +180,12 @@ export class AbacusCoreDeployer extends AbacusDeployer< ); } - await super.runIfOwner(chain, abacusConnectionManager, async () => { - const isEnrolled = await abacusConnectionManager.isInbox( + await super.runIfOwner(chain, connectionManager, async () => { + const isEnrolled = await connectionManager.isInbox( inboxes[remote]!.inbox.address, ); if (!isEnrolled) { - const enrollTx = await abacusConnectionManager.enrollInbox( + const enrollTx = await connectionManager.enrollInbox( chainMetadata[remote].id, inboxes[remote]!.inbox.address, dc.overrides, @@ -196,7 +198,7 @@ export class AbacusCoreDeployer extends AbacusDeployer< return { upgradeBeaconController, - abacusConnectionManager, + connectionManager, interchainGasPaymaster, inboxes: inboxes as RemoteChainMap, ...outbox, @@ -204,13 +206,13 @@ export class AbacusCoreDeployer extends AbacusDeployer< } static async transferOwnership( - core: AbacusCore, + core: HyperlaneCore, owners: ChainMap, multiProvider: MultiProvider, ): Promise> { return promiseObjAll( objMap(core.contractsMap, async (chain, coreContracts) => - AbacusCoreDeployer.transferOwnershipOfChain( + HyperlaneCoreDeployer.transferOwnershipOfChain( coreContracts, owners[chain], multiProvider.getChainConnection(chain), @@ -230,7 +232,7 @@ export class AbacusCoreDeployer extends AbacusDeployer< const ownables: Ownable[] = [ coreContracts.outbox.contract, coreContracts.outboxValidatorManager, - coreContracts.abacusConnectionManager, + coreContracts.connectionManager, coreContracts.upgradeBeaconController, ...Object.values(coreContracts.inboxes).flatMap( (inbox) => [inbox.inbox.contract, inbox.inboxValidatorManager], diff --git a/typescript/sdk/src/deploy/core/types.ts b/typescript/sdk/src/deploy/core/types.ts index a5bca054e6..616a919e21 100644 --- a/typescript/sdk/src/deploy/core/types.ts +++ b/typescript/sdk/src/deploy/core/types.ts @@ -2,8 +2,8 @@ import { AbacusConnectionManager, Mailbox, MultisigValidatorManager, -} from '@abacus-network/core'; -import type { types } from '@abacus-network/utils'; +} from '@hyperlane-xyz/core'; +import type { types } from '@hyperlane-xyz/utils'; import { ChainName } from '../../types'; import type { CheckerViolation } from '../types'; @@ -22,7 +22,7 @@ export type CoreConfig = { export enum CoreViolationType { ValidatorManager = 'ValidatorManager', Mailbox = 'Mailbox', - AbacusConnectionManager = 'AbacusConnectionManager', + ConnectionManager = 'ConnectionManager', } export enum ValidatorManagerViolationType { @@ -30,7 +30,7 @@ export enum ValidatorManagerViolationType { Threshold = 'Threshold', } -export enum AbacusConnectionManagerViolationType { +export enum ConnectionManagerViolationType { EnrolledInboxes = 'EnrolledInboxes', } @@ -68,14 +68,13 @@ export interface ThresholdViolation extends ValidatorManagerViolation { expected: number; } -export interface AbacusConnectionManagerViolation extends CheckerViolation { - type: CoreViolationType.AbacusConnectionManager; +export interface ConnectionManagerViolation extends CheckerViolation { + type: CoreViolationType.ConnectionManager; contract: AbacusConnectionManager; - abacusConnectionManagerType: AbacusConnectionManagerViolationType; + connectionManagerType: ConnectionManagerViolationType; } -export interface EnrolledInboxesViolation - extends AbacusConnectionManagerViolation { +export interface EnrolledInboxesViolation extends ConnectionManagerViolation { remote: ChainName; actual: Set; expected: Set; diff --git a/typescript/sdk/src/deploy/proxy.ts b/typescript/sdk/src/deploy/proxy.ts index e9687e381d..3190bfbd23 100644 --- a/typescript/sdk/src/deploy/proxy.ts +++ b/typescript/sdk/src/deploy/proxy.ts @@ -1,6 +1,6 @@ import { ethers } from 'ethers'; -import type { types } from '@abacus-network/utils'; +import type { types } from '@hyperlane-xyz/utils'; import { BeaconProxyAddresses } from '../proxy'; import { ChainName } from '../types'; diff --git a/typescript/sdk/src/deploy/router/AbacusRouterChecker.ts b/typescript/sdk/src/deploy/router/HyperlaneRouterChecker.ts similarity index 78% rename from typescript/sdk/src/deploy/router/AbacusRouterChecker.ts rename to typescript/sdk/src/deploy/router/HyperlaneRouterChecker.ts index 2dc2e0be69..dfc776a6dc 100644 --- a/typescript/sdk/src/deploy/router/AbacusRouterChecker.ts +++ b/typescript/sdk/src/deploy/router/HyperlaneRouterChecker.ts @@ -1,20 +1,20 @@ -import { Ownable } from '@abacus-network/core'; -import { utils } from '@abacus-network/utils'; +import { Ownable } from '@hyperlane-xyz/core'; +import { utils } from '@hyperlane-xyz/utils'; -import { AbacusApp } from '../../AbacusApp'; +import { HyperlaneApp } from '../../HyperlaneApp'; import { chainMetadata } from '../../consts/chainMetadata'; import { RouterContracts } from '../../router'; import { ChainName } from '../../types'; -import { AbacusAppChecker } from '../AbacusAppChecker'; +import { HyperlaneAppChecker } from '../HyperlaneAppChecker'; import { RouterConfig } from './types'; -export class AbacusRouterChecker< +export class HyperlaneRouterChecker< Chain extends ChainName, - App extends AbacusApp, + App extends HyperlaneApp, Config extends RouterConfig, Contracts extends RouterContracts, -> extends AbacusAppChecker { +> extends HyperlaneAppChecker { checkOwnership(chain: Chain): Promise { const owner = this.configMap[chain].owner; const ownables = this.ownables(chain); diff --git a/typescript/sdk/src/deploy/router/AbacusRouterDeployer.ts b/typescript/sdk/src/deploy/router/HyperlaneRouterDeployer.ts similarity index 90% rename from typescript/sdk/src/deploy/router/AbacusRouterDeployer.ts rename to typescript/sdk/src/deploy/router/HyperlaneRouterDeployer.ts index 9e5ce32466..4f138a28db 100644 --- a/typescript/sdk/src/deploy/router/AbacusRouterDeployer.ts +++ b/typescript/sdk/src/deploy/router/HyperlaneRouterDeployer.ts @@ -1,23 +1,23 @@ import { debug } from 'debug'; import { ethers } from 'ethers'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { chainMetadata } from '../../consts/chainMetadata'; import { MultiProvider } from '../../providers/MultiProvider'; import { RouterContracts, RouterFactories } from '../../router'; import { ChainMap, ChainName } from '../../types'; import { objMap, promiseObjAll } from '../../utils/objects'; -import { AbacusDeployer, DeployerOptions } from '../AbacusDeployer'; +import { DeployerOptions, HyperlaneDeployer } from '../HyperlaneDeployer'; import { RouterConfig } from './types'; -export abstract class AbacusRouterDeployer< +export abstract class HyperlaneRouterDeployer< Chain extends ChainName, Config extends RouterConfig, Contracts extends RouterContracts, Factories extends RouterFactories, -> extends AbacusDeployer { +> extends HyperlaneDeployer { constructor( multiProvider: MultiProvider, configMap: ChainMap, @@ -25,7 +25,7 @@ export abstract class AbacusRouterDeployer< options?: DeployerOptions, ) { super(multiProvider, configMap, factories, { - logger: debug('abacus:RouterDeployer'), + logger: debug('hyperlane:RouterDeployer'), ...options, }); } @@ -37,15 +37,16 @@ export abstract class AbacusRouterDeployer< await promiseObjAll( objMap(contractsMap, async (local, contracts) => { const chainConnection = this.multiProvider.getChainConnection(local); - // set abacus connection manager if not already set + // set hyperlane connection manager if not already set if ( + // TODO rename ACM methods in router contract (await contracts.router.abacusConnectionManager()) === ethers.constants.AddressZero ) { this.logger(`Set abacus connection manager on ${local}`); await chainConnection.handleTx( contracts.router.setAbacusConnectionManager( - this.configMap[local].abacusConnectionManager, + this.configMap[local].connectionManager, ), ); } diff --git a/typescript/sdk/src/deploy/router/types.ts b/typescript/sdk/src/deploy/router/types.ts index 1c300325e3..39a3c1a570 100644 --- a/typescript/sdk/src/deploy/router/types.ts +++ b/typescript/sdk/src/deploy/router/types.ts @@ -1,4 +1,4 @@ -import type { types } from '@abacus-network/utils'; +import type { types } from '@hyperlane-xyz/utils'; import type { ConnectionClientConfig } from '../../router'; diff --git a/typescript/sdk/src/deploy/types.ts b/typescript/sdk/src/deploy/types.ts index 6960a68ace..bd89ebf2e9 100644 --- a/typescript/sdk/src/deploy/types.ts +++ b/typescript/sdk/src/deploy/types.ts @@ -1,6 +1,6 @@ import { Contract } from 'ethers'; -import { Ownable } from '@abacus-network/core'; +import { Ownable } from '@hyperlane-xyz/core'; import type { ChainMap, ChainName, IChainConnection } from '../types'; diff --git a/typescript/sdk/src/deploy/utils.ts b/typescript/sdk/src/deploy/utils.ts index 71bb9d606f..c409a73166 100644 --- a/typescript/sdk/src/deploy/utils.ts +++ b/typescript/sdk/src/deploy/utils.ts @@ -1,6 +1,6 @@ import { Signer, providers } from 'ethers'; -import { types } from '@abacus-network/utils'; +import { types } from '@hyperlane-xyz/utils'; import { testChainConnectionConfigs } from '../consts/chainConnectionConfigs'; import { MultiProvider } from '../providers/MultiProvider'; diff --git a/typescript/sdk/src/deploy/verify/ContractVerifier.ts b/typescript/sdk/src/deploy/verify/ContractVerifier.ts index f363859e4a..2cc1c9fd20 100644 --- a/typescript/sdk/src/deploy/verify/ContractVerifier.ts +++ b/typescript/sdk/src/deploy/verify/ContractVerifier.ts @@ -2,7 +2,7 @@ import fetch from 'cross-fetch'; import { Debugger, debug } from 'debug'; import { ethers } from 'ethers'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { MultiProvider } from '../../providers/MultiProvider'; import { ChainMap, ChainName } from '../../types'; @@ -41,7 +41,7 @@ export class ContractVerifier extends MultiGeneric< protected readonly compilerOptions: CompilerOptions, ) { super(verificationInputs); - this.logger = debug('abacus:ContractVerifier'); + this.logger = debug('hyperlane:ContractVerifier'); } verify(): Promise[]> { diff --git a/typescript/sdk/src/events.ts b/typescript/sdk/src/events.ts index 2e2c0029bb..5c49079626 100644 --- a/typescript/sdk/src/events.ts +++ b/typescript/sdk/src/events.ts @@ -3,7 +3,7 @@ import { providers } from 'ethers'; import type { TypedEvent, TypedEventFilter, -} from '@abacus-network/core/dist/common'; +} from '@hyperlane-xyz/core/dist/common'; import { chainMetadata } from './consts/chainMetadata'; import { MultiProvider } from './providers/MultiProvider'; diff --git a/typescript/sdk/src/gas/calculator.test.ts b/typescript/sdk/src/gas/calculator.test.ts index c119b43423..a2a25bf350 100644 --- a/typescript/sdk/src/gas/calculator.test.ts +++ b/typescript/sdk/src/gas/calculator.test.ts @@ -3,7 +3,7 @@ import { BigNumber } from 'ethers'; import sinon from 'sinon'; import { Chains } from '../consts/chains'; -import { AbacusCore } from '../core/AbacusCore'; +import { HyperlaneCore } from '../core/HyperlaneCore'; import { CoreContracts } from '../core/contracts'; import { MultiProvider } from '../providers/MultiProvider'; import { MockProvider, MockTokenPriceGetter } from '../test/testUtils'; @@ -57,7 +57,7 @@ describe('InterchainGasCalculator', () => { test2: { provider }, test3: { provider }, }); - const core: AbacusCore = AbacusCore.fromEnvironment( + const core: HyperlaneCore = HyperlaneCore.fromEnvironment( 'test', multiProvider, ); diff --git a/typescript/sdk/src/gas/calculator.ts b/typescript/sdk/src/gas/calculator.ts index 9f936b58d2..dc41de9eb8 100644 --- a/typescript/sdk/src/gas/calculator.ts +++ b/typescript/sdk/src/gas/calculator.ts @@ -1,14 +1,14 @@ import CoinGecko from 'coingecko-api'; import { BigNumber, FixedNumber, ethers } from 'ethers'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; import { chainMetadata } from '../consts/chainMetadata'; import { - AbacusCore, CoreEnvironment, CoreEnvironmentChain, -} from '../core/AbacusCore'; + HyperlaneCore, +} from '../core/HyperlaneCore'; import { MultiProvider } from '../providers/MultiProvider'; import { ChainName, Remotes } from '../types'; import { convertDecimalValue, mulBigAndFixed } from '../utils/number'; @@ -82,7 +82,7 @@ export type ParsedMessage< * Calculates interchain gas payments. */ export class InterchainGasCalculator { - private core: AbacusCore; + private core: HyperlaneCore; private multiProvider: MultiProvider; private tokenPriceGetter: TokenPriceGetter; @@ -95,13 +95,13 @@ export class InterchainGasCalculator { multiProvider: MultiProvider>, config?: InterchainGasCalculatorConfig, ): InterchainGasCalculator> { - const core = AbacusCore.fromEnvironment(env, multiProvider); + const core = HyperlaneCore.fromEnvironment(env, multiProvider); return new InterchainGasCalculator(multiProvider, core, config); } constructor( multiProvider: MultiProvider, - core: AbacusCore, + core: HyperlaneCore, config?: InterchainGasCalculatorConfig, ) { this.multiProvider = multiProvider; diff --git a/typescript/sdk/src/index.ts b/typescript/sdk/src/index.ts index 0897cd9983..7425f41117 100644 --- a/typescript/sdk/src/index.ts +++ b/typescript/sdk/src/index.ts @@ -20,12 +20,12 @@ export { export { ChainNameToDomainId, DomainIdToChainName } from './domains'; -export { AbacusApp } from './AbacusApp'; +export { HyperlaneApp } from './HyperlaneApp'; export { - AbacusAddresses, - AbacusContracts, - AbacusFactories, + HyperlaneAddresses, + HyperlaneContracts, + HyperlaneFactories, buildContracts, connectContracts, serializeContracts, @@ -47,10 +47,10 @@ export { MultiProvider } from './providers/MultiProvider'; export { RetryJsonRpcProvider, RetryProvider } from './providers/RetryProvider'; export { - AbacusCore, + HyperlaneCore, CoreContractsMap, DispatchedMessage, -} from './core/AbacusCore'; +} from './core/HyperlaneCore'; export { CoreContracts, coreFactories, @@ -58,13 +58,13 @@ export { OutboxContracts, } from './core/contracts'; export { - AbacusLifecyleEvent, + HyperlaneLifecyleEvent, AnnotatedDispatch, AnnotatedLifecycleEvent, } from './core/events'; export { - AbacusMessage, - AbacusStatus, + HyperlaneMessage, + HyperlaneStatus, MessageStatus, resolveDomain, resolveId, @@ -84,30 +84,30 @@ export { TokenPriceGetter, } from './gas/token-prices'; -export { AbacusAppChecker } from './deploy/AbacusAppChecker'; +export { HyperlaneAppChecker } from './deploy/HyperlaneAppChecker'; export { CheckerViolation, EnvironmentConfig, OwnerViolation, ViolationType, } from './deploy/types'; -export { AbacusCoreDeployer } from './deploy/core/AbacusCoreDeployer'; -export { AbacusCoreChecker } from './deploy/core/AbacusCoreChecker'; +export { HyperlaneCoreDeployer } from './deploy/core/HyperlaneCoreDeployer'; +export { HyperlaneCoreChecker } from './deploy/core/HyperlaneCoreChecker'; export { CoreConfig, CoreViolationType, ValidatorManagerConfig, ValidatorManagerViolation, EnrolledInboxesViolation, - AbacusConnectionManagerViolation, - AbacusConnectionManagerViolationType, + ConnectionManagerViolation, + ConnectionManagerViolationType, EnrolledValidatorsViolation, ValidatorManagerViolationType, } from './deploy/core/types'; -export { AbacusDeployer } from './deploy/AbacusDeployer'; +export { HyperlaneDeployer } from './deploy/HyperlaneDeployer'; export { UpgradeBeaconViolation } from './deploy/proxy'; -export { AbacusRouterDeployer } from './deploy/router/AbacusRouterDeployer'; -export { AbacusRouterChecker } from './deploy/router/AbacusRouterChecker'; +export { HyperlaneRouterDeployer } from './deploy/router/HyperlaneRouterDeployer'; +export { HyperlaneRouterChecker } from './deploy/router/HyperlaneRouterChecker'; export { RouterConfig } from './deploy/router/types'; export { getTestMultiProvider, getChainToOwnerMap } from './deploy/utils'; export { ContractVerifier } from './deploy/verify/ContractVerifier'; diff --git a/typescript/sdk/src/providers/ChainConnection.ts b/typescript/sdk/src/providers/ChainConnection.ts index e4ebf9c9b8..88596b4751 100644 --- a/typescript/sdk/src/providers/ChainConnection.ts +++ b/typescript/sdk/src/providers/ChainConnection.ts @@ -19,7 +19,7 @@ export class ChainConnection { this.confirmations = dc.confirmations ?? 0; this.blockExplorerUrl = dc.blockExplorerUrl ?? 'UNKNOWN_EXPLORER'; this.apiPrefix = dc.apiPrefix ?? 'api.'; - this.logger = debug('abacus:ChainConnection'); + this.logger = debug('hyperlane:ChainConnection'); } getConnection = (): ethers.providers.Provider | ethers.Signer => diff --git a/typescript/sdk/src/providers/RetryProvider.ts b/typescript/sdk/src/providers/RetryProvider.ts index 0b7eb29510..e184d3e739 100644 --- a/typescript/sdk/src/providers/RetryProvider.ts +++ b/typescript/sdk/src/providers/RetryProvider.ts @@ -4,7 +4,7 @@ // See: https://github.com/ethers-io/ethers.js/discussions/3006 import { ethers } from 'ethers'; -import { utils } from '@abacus-network/utils'; +import { utils } from '@hyperlane-xyz/utils'; export type RetryOptions = { // Maximum number of times to make the RPC diff --git a/typescript/sdk/src/proxy.ts b/typescript/sdk/src/proxy.ts index 248980cf94..da1fb27518 100644 --- a/typescript/sdk/src/proxy.ts +++ b/typescript/sdk/src/proxy.ts @@ -1,6 +1,6 @@ import { Contract } from 'ethers'; -import type { types } from '@abacus-network/utils'; +import type { types } from '@hyperlane-xyz/utils'; import { Connection } from './types'; diff --git a/typescript/sdk/src/router.ts b/typescript/sdk/src/router.ts index 6fed63f075..ee94f1316e 100644 --- a/typescript/sdk/src/router.ts +++ b/typescript/sdk/src/router.ts @@ -1,12 +1,12 @@ import type { ethers } from 'ethers'; -import { Router } from '@abacus-network/app'; -import type { types } from '@abacus-network/utils'; +import { Router } from '@hyperlane-xyz/app'; +import type { types } from '@hyperlane-xyz/utils'; -import { AbacusContracts, AbacusFactories } from './contracts'; +import { HyperlaneContracts, HyperlaneFactories } from './contracts'; export type RouterContracts = - AbacusContracts & { + HyperlaneContracts & { router: RouterContract; }; @@ -16,13 +16,13 @@ type RouterFactory = }; export type RouterFactories = - AbacusFactories & { + HyperlaneFactories & { router: RouterFactory; }; export type ConnectionClientConfig = { - abacusConnectionManager: types.Address; + connectionManager: types.Address; interchainGasPaymaster: types.Address; }; -export { Router } from '@abacus-network/app'; +export { Router } from '@hyperlane-xyz/app'; diff --git a/typescript/sdk/src/test/envSubsetDeployer/app.ts b/typescript/sdk/src/test/envSubsetDeployer/app.ts index 4a74da0bd7..d9e96acb40 100644 --- a/typescript/sdk/src/test/envSubsetDeployer/app.ts +++ b/typescript/sdk/src/test/envSubsetDeployer/app.ts @@ -1,11 +1,11 @@ -import { TestRouter__factory } from '@abacus-network/app'; +import { TestRouter__factory } from '@hyperlane-xyz/app'; -import { AbacusApp } from '../../AbacusApp'; +import { HyperlaneApp } from '../../HyperlaneApp'; import { chainConnectionConfigs } from '../../consts/chainConnectionConfigs'; -import { AbacusCore } from '../../core/AbacusCore'; -import { AbacusDeployer } from '../../deploy/AbacusDeployer'; -import { AbacusRouterChecker } from '../../deploy/router/AbacusRouterChecker'; -import { AbacusRouterDeployer } from '../../deploy/router/AbacusRouterDeployer'; +import { HyperlaneCore } from '../../core/HyperlaneCore'; +import { HyperlaneDeployer } from '../../deploy/HyperlaneDeployer'; +import { HyperlaneRouterChecker } from '../../deploy/router/HyperlaneRouterChecker'; +import { HyperlaneRouterDeployer } from '../../deploy/router/HyperlaneRouterDeployer'; import { RouterConfig } from '../../deploy/router/types'; import { MultiProvider } from '../../providers/MultiProvider'; import { RouterContracts, RouterFactories } from '../../router'; @@ -31,11 +31,11 @@ export const alfajoresChainConfig = { export class EnvSubsetApp< Chain extends ChainName = ChainName, -> extends AbacusApp {} +> extends HyperlaneApp {} export class EnvSubsetChecker< Chain extends ChainName, -> extends AbacusRouterChecker< +> extends HyperlaneRouterChecker< Chain, EnvSubsetApp, RouterConfig, @@ -48,7 +48,7 @@ export const envSubsetFactories: RouterFactories = { export class EnvSubsetDeployer< Chain extends ChainName, -> extends AbacusRouterDeployer< +> extends HyperlaneRouterDeployer< Chain, RouterConfig, RouterContracts, @@ -57,12 +57,12 @@ export class EnvSubsetDeployer< constructor( multiProvider: MultiProvider, configMap: ChainMap, - protected core: AbacusCore, + protected core: HyperlaneCore, ) { super(multiProvider, configMap, envSubsetFactories, {}); } - // Consider moving this up to AbacusRouterDeployer + // Consider moving this up to HyperlaneRouterDeployer async initRouter( contractsMap: ChainMap, ): Promise { @@ -70,7 +70,7 @@ export class EnvSubsetDeployer< await promiseObjAll( objMap(contractsMap, async (chain, contracts) => { const chainConnection = this.multiProvider.getChainConnection(chain); - const acm = this.configMap[chain].abacusConnectionManager; + const acm = this.configMap[chain].connectionManager; await chainConnection.handleTx( // @ts-ignore contracts.router.initialize(acm, chainConnection.overrides), @@ -80,7 +80,7 @@ export class EnvSubsetDeployer< } async deploy(): Promise> { - const contractsMap = (await AbacusDeployer.prototype.deploy.apply( + const contractsMap = (await HyperlaneDeployer.prototype.deploy.apply( this, )) as Record; await this.initRouter(contractsMap); diff --git a/typescript/sdk/src/test/envSubsetDeployer/check-single-chain.ts b/typescript/sdk/src/test/envSubsetDeployer/check-single-chain.ts index 5eebcceea2..c72b51dd4e 100644 --- a/typescript/sdk/src/test/envSubsetDeployer/check-single-chain.ts +++ b/typescript/sdk/src/test/envSubsetDeployer/check-single-chain.ts @@ -1,5 +1,5 @@ import { buildContracts } from '../../contracts'; -import { AbacusCore } from '../../core/AbacusCore'; +import { HyperlaneCore } from '../../core/HyperlaneCore'; import { getChainToOwnerMap } from '../../deploy/utils'; import { MultiProvider } from '../../providers/MultiProvider'; import { RouterContracts } from '../../router'; @@ -39,7 +39,7 @@ async function check() { envSubsetFactories, ) as ChainMap; const app = new EnvSubsetApp(contractsMap, multiProvider); - const core = AbacusCore.fromEnvironment('testnet2', multiProvider); + const core = HyperlaneCore.fromEnvironment('testnet2', multiProvider); const config = core.extendWithConnectionClientConfig( getChainToOwnerMap(alfajoresChainConfig, ownerAddress), ); diff --git a/typescript/sdk/src/test/envSubsetDeployer/deploy-single-chain.ts b/typescript/sdk/src/test/envSubsetDeployer/deploy-single-chain.ts index cb45f0d4ce..a75d4ba672 100644 --- a/typescript/sdk/src/test/envSubsetDeployer/deploy-single-chain.ts +++ b/typescript/sdk/src/test/envSubsetDeployer/deploy-single-chain.ts @@ -1,5 +1,5 @@ import { serializeContracts } from '../../contracts'; -import { AbacusCore } from '../../core/AbacusCore'; +import { HyperlaneCore } from '../../core/HyperlaneCore'; import { getChainToOwnerMap } from '../../deploy/utils'; import { MultiProvider } from '../../providers/MultiProvider'; @@ -18,7 +18,7 @@ async function main() { }, }); - const core = AbacusCore.fromEnvironment('testnet2', multiProvider); + const core = HyperlaneCore.fromEnvironment('testnet2', multiProvider); const config = core.extendWithConnectionClientConfig( getChainToOwnerMap(alfajoresChainConfig, signer.address), ); diff --git a/typescript/sdk/src/test/envSubsetDeployer/utils.ts b/typescript/sdk/src/test/envSubsetDeployer/utils.ts index 25a9681cd3..2b52fb22e9 100644 --- a/typescript/sdk/src/test/envSubsetDeployer/utils.ts +++ b/typescript/sdk/src/test/envSubsetDeployer/utils.ts @@ -1,7 +1,7 @@ import { Wallet } from 'ethers'; -import { StaticCeloJsonRpcProvider } from '@abacus-network/celo-ethers-provider'; -import { utils } from '@abacus-network/utils'; +import { StaticCeloJsonRpcProvider } from '@hyperlane-xyz/celo-ethers-provider'; +import { utils } from '@hyperlane-xyz/utils'; export const ALFAJORES_FORNO = 'https://alfajores-forno.celo-testnet.org'; export const CELO_DERIVATION_PATH = "m/44'/52752'/0'/0/0"; diff --git a/typescript/sdk/src/utils/ids.ts b/typescript/sdk/src/utils/ids.ts index caee320275..ef04105de7 100644 --- a/typescript/sdk/src/utils/ids.ts +++ b/typescript/sdk/src/utils/ids.ts @@ -20,7 +20,7 @@ export function canonizeId(data: BytesLike): Uint8Array { } /** - * Converts an Abacus ID of 20 or 32 bytes to the corresponding EVM Address. + * Converts an Hyperlane ID of 20 or 32 bytes to the corresponding EVM Address. * * For 32-byte IDs this enforces the EVM convention of using the LAST 20 bytes. * diff --git a/typescript/utils/package.json b/typescript/utils/package.json index c6191275a8..6d8140133e 100644 --- a/typescript/utils/package.json +++ b/typescript/utils/package.json @@ -1,7 +1,7 @@ { - "name": "@abacus-network/utils", - "description": "General utilities for the Abacus network", - "version": "0.4.1", + "name": "@hyperlane-xyz/utils", + "description": "General utilities for the Hyperlane network", + "version": "0.5.0-beta0", "dependencies": { "ethers": "^5.6.8" }, @@ -10,16 +10,16 @@ "prettier": "^2.4.1", "typescript": "^4.7.2" }, - "homepage": "https://www.useabacus.network", + "homepage": "https://www.hyperlane.xyz", "keywords": [ - "Abacus", + "Hyperlane", "SDK", "Typescript" ], "license": "Apache-2.0", "main": "dist/index.js", "prepublish": "yarn build", - "repository": "https://github.com/abacus-network/abacus-monorepo", + "repository": "https://github.com/hyperlane-xyz/hyperlane-monorepo", "scripts": { "build": "tsc", "clean": "rm -rf ./dist", diff --git a/typescript/utils/src/utils.ts b/typescript/utils/src/utils.ts index dc512575fb..c0b1c448ea 100644 --- a/typescript/utils/src/utils.ts +++ b/typescript/utils/src/utils.ts @@ -93,7 +93,7 @@ export function destinationAndNonce( export function domainHash(domain: number): string { return ethers.utils.solidityKeccak256( ['uint32', 'string'], - [domain, 'ABACUS'], + [domain, 'ABACUS'], // TODO rename ); } diff --git a/typescript/utils/src/validator.ts b/typescript/utils/src/validator.ts index feeeac13c8..42754ffd59 100644 --- a/typescript/utils/src/validator.ts +++ b/typescript/utils/src/validator.ts @@ -1,6 +1,6 @@ import { ethers } from 'ethers'; -import { types, utils } from '@abacus-network/utils'; +import { types, utils } from '@hyperlane-xyz/utils'; import { Checkpoint } from './types'; diff --git a/yarn.lock b/yarn.lock index 2602d6e607..8281aa478a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,236 +5,6 @@ __metadata: version: 6 cacheKey: 8 -"@abacus-network/app@0.4.1, @abacus-network/app@^0.4.1, @abacus-network/app@workspace:solidity/app": - version: 0.0.0-use.local - resolution: "@abacus-network/app@workspace:solidity/app" - dependencies: - "@abacus-network/core": 0.4.1 - "@abacus-network/utils": 0.4.1 - "@nomiclabs/hardhat-ethers": ^2.0.5 - "@nomiclabs/hardhat-waffle": ^2.0.2 - "@openzeppelin/contracts-upgradeable": ^4.5.0 - "@typechain/ethers-v5": 10.0.0 - "@typechain/hardhat": ^6.0.0 - "@types/mocha": ^9.1.0 - chai: ^4.3.0 - ethereum-waffle: ^3.4.4 - ethers: ^5.6.8 - hardhat: ^2.8.4 - hardhat-gas-reporter: ^1.0.7 - prettier: ^2.4.1 - prettier-plugin-solidity: ^1.0.0-beta.5 - solhint: ^3.3.2 - solhint-plugin-prettier: ^0.0.5 - solidity-coverage: ^0.7.14 - ts-node: ^10.8.0 - typechain: 8.0.0 - typescript: ^4.7.2 - languageName: unknown - linkType: soft - -"@abacus-network/celo-ethers-provider@npm:^0.1.0": - version: 0.1.0 - resolution: "@abacus-network/celo-ethers-provider@npm:0.1.0" - peerDependencies: - ethers: ^5 - checksum: 06f440366bbd9ddf9962aa46c471be1fb587909c4da71a0d816497a5c0c8597e9b315d70fe9ae728ed51fc936097da50da2cd18f750861f3d602660b8ea1ecfd - languageName: node - linkType: hard - -"@abacus-network/core@0.4.1, @abacus-network/core@workspace:solidity/core": - version: 0.0.0-use.local - resolution: "@abacus-network/core@workspace:solidity/core" - dependencies: - "@abacus-network/utils": 0.4.1 - "@nomiclabs/hardhat-ethers": ^2.0.5 - "@nomiclabs/hardhat-waffle": ^2.0.2 - "@openzeppelin/contracts": ^4.6.0 - "@openzeppelin/contracts-upgradeable": ^4.6.0 - "@summa-tx/memview-sol": ^2.0.0 - "@typechain/ethers-v5": 10.0.0 - "@typechain/hardhat": ^6.0.0 - chai: ^4.3.0 - ethereum-waffle: ^3.4.4 - ethers: ^5.6.8 - hardhat: ^2.8.4 - hardhat-gas-reporter: ^1.0.7 - prettier: ^2.4.1 - prettier-plugin-solidity: ^1.0.0-beta.5 - solhint: ^3.3.2 - solhint-plugin-prettier: ^0.0.5 - solidity-coverage: ^0.7.14 - ts-generator: ^0.1.1 - typechain: 8.0.0 - typescript: ^4.7.2 - languageName: unknown - linkType: soft - -"@abacus-network/helloworld@0.5.0, @abacus-network/helloworld@workspace:typescript/helloworld": - version: 0.0.0-use.local - resolution: "@abacus-network/helloworld@workspace:typescript/helloworld" - dependencies: - "@abacus-network/sdk": ^0.4.1 - "@abacus-network/utils": ^0.4.1 - "@nomiclabs/hardhat-ethers": ^2.0.5 - "@nomiclabs/hardhat-waffle": ^2.0.2 - "@openzeppelin/contracts-upgradeable": ^4.6.0 - "@trivago/prettier-plugin-sort-imports": ^3.2.0 - "@typechain/ethers-v5": 10.0.0 - "@typechain/hardhat": ^6.0.0 - "@types/mocha": ^9.1.0 - "@typescript-eslint/eslint-plugin": ^5.27.0 - "@typescript-eslint/parser": ^5.27.0 - chai: ^4.3.0 - eslint: ^8.16.0 - eslint-config-prettier: ^8.5.0 - ethereum-waffle: ^3.4.4 - ethers: ^5.6.8 - hardhat: ^2.8.4 - hardhat-gas-reporter: ^1.0.7 - prettier: ^2.4.1 - prettier-plugin-solidity: ^1.0.0-beta.5 - solhint: ^3.3.2 - solhint-plugin-prettier: ^0.0.5 - solidity-coverage: ^0.7.14 - ts-node: ^10.8.0 - typechain: 8.0.0 - typescript: ^4.7.2 - languageName: unknown - linkType: soft - -"@abacus-network/infra@workspace:typescript/infra": - version: 0.0.0-use.local - resolution: "@abacus-network/infra@workspace:typescript/infra" - dependencies: - "@abacus-network/celo-ethers-provider": ^0.1.0 - "@abacus-network/helloworld": 0.5.0 - "@abacus-network/sdk": 0.4.1 - "@abacus-network/utils": 0.4.1 - "@aws-sdk/client-iam": ^3.74.0 - "@aws-sdk/client-kms": 3.48.0 - "@aws-sdk/client-s3": ^3.74.0 - "@ethersproject/experimental": ^5.6.2 - "@ethersproject/hardware-wallets": ~5.6 - "@gnosis.pm/safe-core-sdk": ^2.3.2 - "@gnosis.pm/safe-ethers-lib": ^1.4.0 - "@gnosis.pm/safe-service-client": ^1.2.0 - "@nomiclabs/hardhat-ethers": ^2.0.5 - "@nomiclabs/hardhat-etherscan": ^3.0.3 - "@nomiclabs/hardhat-waffle": ^2.0.2 - "@types/chai": ^4.2.21 - "@types/mocha": ^9.1.0 - "@types/node": ^16.9.1 - "@types/prompts": ^2.0.14 - "@types/yargs": ^17.0.10 - asn1.js: 5.4.1 - aws-kms-ethers-signer: ^0.1.3 - chai: ^4.3.4 - dotenv: ^10.0.0 - ethereum-waffle: ^3.4.4 - ethers: ^5.6.8 - hardhat: ^2.8.4 - prettier: ^2.4.1 - prom-client: ^14.0.1 - prompts: ^2.4.2 - ts-node: ^10.8.0 - typescript: ^4.7.2 - yargs: ^17.4.1 - languageName: unknown - linkType: soft - -"@abacus-network/interchain-accounts@workspace:typescript/ica": - version: 0.0.0-use.local - resolution: "@abacus-network/interchain-accounts@workspace:typescript/ica" - dependencies: - "@abacus-network/app": ^0.4.1 - "@abacus-network/sdk": ^0.4.1 - "@abacus-network/utils": ^0.4.1 - "@nomicfoundation/hardhat-chai-matchers": ^1.0.3 - "@nomicfoundation/hardhat-toolbox": ^1.0.2 - "@nomiclabs/hardhat-ethers": ^2.0.5 - "@nomiclabs/hardhat-waffle": ^2.0.2 - "@openzeppelin/contracts-upgradeable": ^4.6.0 - "@trivago/prettier-plugin-sort-imports": ^3.2.0 - "@typechain/ethers-v5": 10.0.0 - "@typechain/hardhat": ^6.0.0 - "@types/mocha": ^9.1.0 - "@typescript-eslint/eslint-plugin": ^5.27.0 - "@typescript-eslint/parser": ^5.27.0 - chai: ^4.3.0 - eslint: ^8.16.0 - eslint-config-prettier: ^8.5.0 - ethereum-waffle: ^3.4.4 - ethers: ^5.6.8 - hardhat: ^2.8.4 - hardhat-gas-reporter: ^1.0.7 - prettier: ^2.4.1 - prettier-plugin-solidity: ^1.0.0-beta.5 - solhint: ^3.3.2 - solhint-plugin-prettier: ^0.0.5 - solidity-coverage: ^0.7.14 - ts-node: ^10.8.0 - typechain: 8.0.0 - typescript: ^4.7.2 - languageName: unknown - linkType: soft - -"@abacus-network/monorepo@workspace:.": - version: 0.0.0-use.local - resolution: "@abacus-network/monorepo@workspace:." - dependencies: - "@trivago/prettier-plugin-sort-imports": ^3.2.0 - "@typescript-eslint/eslint-plugin": ^5.27.0 - "@typescript-eslint/parser": ^5.27.0 - eslint: ^8.16.0 - eslint-config-prettier: ^8.5.0 - husky: ^8.0.0 - lint-staged: ^12.4.3 - prettier: ^2.4.1 - languageName: unknown - linkType: soft - -"@abacus-network/sdk@0.4.1, @abacus-network/sdk@^0.4.1, @abacus-network/sdk@workspace:typescript/sdk": - version: 0.0.0-use.local - resolution: "@abacus-network/sdk@workspace:typescript/sdk" - dependencies: - "@abacus-network/app": 0.4.1 - "@abacus-network/celo-ethers-provider": ^0.1.0 - "@abacus-network/core": 0.4.1 - "@abacus-network/utils": 0.4.1 - "@nomiclabs/hardhat-ethers": ^2.0.5 - "@nomiclabs/hardhat-waffle": ^2.0.2 - "@types/coingecko-api": ^1.0.10 - "@types/debug": ^4.1.7 - "@types/node": ^16.9.1 - chai: ^4.3.6 - coingecko-api: ^1.0.10 - cross-fetch: ^3.1.5 - debug: ^4.3.4 - dotenv: ^10.0.0 - ethereum-waffle: ^3.4.4 - ethers: ^5.6.8 - fs: 0.0.1-security - hardhat: ^2.8.4 - mocha: ^9.2.2 - prettier: ^2.4.1 - sinon: ^13.0.2 - ts-node: ^10.8.0 - typescript: ^4.7.2 - languageName: unknown - linkType: soft - -"@abacus-network/utils@0.4.1, @abacus-network/utils@^0.4.1, @abacus-network/utils@workspace:typescript/utils": - version: 0.0.0-use.local - resolution: "@abacus-network/utils@workspace:typescript/utils" - dependencies: - chai: ^4.3.0 - ethers: ^5.6.8 - prettier: ^2.4.1 - typescript: ^4.7.2 - languageName: unknown - linkType: soft - "@aws-crypto/crc32@npm:2.0.0": version: 2.0.0 resolution: "@aws-crypto/crc32@npm:2.0.0" @@ -3907,6 +3677,236 @@ __metadata: languageName: node linkType: hard +"@hyperlane-xyz/app@0.5.0-beta0, @hyperlane-xyz/app@workspace:solidity/app": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/app@workspace:solidity/app" + dependencies: + "@hyperlane-xyz/core": 0.5.0-beta0 + "@hyperlane-xyz/utils": 0.5.0-beta0 + "@nomiclabs/hardhat-ethers": ^2.0.5 + "@nomiclabs/hardhat-waffle": ^2.0.2 + "@openzeppelin/contracts-upgradeable": ^4.5.0 + "@typechain/ethers-v5": 10.0.0 + "@typechain/hardhat": ^6.0.0 + "@types/mocha": ^9.1.0 + chai: ^4.3.0 + ethereum-waffle: ^3.4.4 + ethers: ^5.6.8 + hardhat: ^2.8.4 + hardhat-gas-reporter: ^1.0.7 + prettier: ^2.4.1 + prettier-plugin-solidity: ^1.0.0-beta.5 + solhint: ^3.3.2 + solhint-plugin-prettier: ^0.0.5 + solidity-coverage: ^0.7.14 + ts-node: ^10.8.0 + typechain: 8.0.0 + typescript: ^4.7.2 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/celo-ethers-provider@npm:^0.1.1": + version: 0.1.1 + resolution: "@hyperlane-xyz/celo-ethers-provider@npm:0.1.1" + peerDependencies: + ethers: ^5 + checksum: 5ea495505b3e4338ec6c419f69b66af2d35b86e7cdab9bc7ee65ba4a233729b2143b0a72cc637f8e8795ecacc18eeda5ac803e8b3de9a63e7ceb5dc14014b3d4 + languageName: node + linkType: hard + +"@hyperlane-xyz/core@0.5.0-beta0, @hyperlane-xyz/core@workspace:solidity/core": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/core@workspace:solidity/core" + dependencies: + "@hyperlane-xyz/utils": 0.5.0-beta0 + "@nomiclabs/hardhat-ethers": ^2.0.5 + "@nomiclabs/hardhat-waffle": ^2.0.2 + "@openzeppelin/contracts": ^4.6.0 + "@openzeppelin/contracts-upgradeable": ^4.6.0 + "@summa-tx/memview-sol": ^2.0.0 + "@typechain/ethers-v5": 10.0.0 + "@typechain/hardhat": ^6.0.0 + chai: ^4.3.0 + ethereum-waffle: ^3.4.4 + ethers: ^5.6.8 + hardhat: ^2.8.4 + hardhat-gas-reporter: ^1.0.7 + prettier: ^2.4.1 + prettier-plugin-solidity: ^1.0.0-beta.5 + solhint: ^3.3.2 + solhint-plugin-prettier: ^0.0.5 + solidity-coverage: ^0.7.14 + ts-generator: ^0.1.1 + typechain: 8.0.0 + typescript: ^4.7.2 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/helloworld@0.5.0-beta0, @hyperlane-xyz/helloworld@workspace:typescript/helloworld": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/helloworld@workspace:typescript/helloworld" + dependencies: + "@hyperlane-xyz/sdk": ^0.5.0-beta0 + "@hyperlane-xyz/utils": ^0.5.0-beta0 + "@nomiclabs/hardhat-ethers": ^2.0.5 + "@nomiclabs/hardhat-waffle": ^2.0.2 + "@openzeppelin/contracts-upgradeable": ^4.6.0 + "@trivago/prettier-plugin-sort-imports": ^3.2.0 + "@typechain/ethers-v5": 10.0.0 + "@typechain/hardhat": ^6.0.0 + "@types/mocha": ^9.1.0 + "@typescript-eslint/eslint-plugin": ^5.27.0 + "@typescript-eslint/parser": ^5.27.0 + chai: ^4.3.0 + eslint: ^8.16.0 + eslint-config-prettier: ^8.5.0 + ethereum-waffle: ^3.4.4 + ethers: ^5.6.8 + hardhat: ^2.8.4 + hardhat-gas-reporter: ^1.0.7 + prettier: ^2.4.1 + prettier-plugin-solidity: ^1.0.0-beta.5 + solhint: ^3.3.2 + solhint-plugin-prettier: ^0.0.5 + solidity-coverage: ^0.7.14 + ts-node: ^10.8.0 + typechain: 8.0.0 + typescript: ^4.7.2 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/infra@workspace:typescript/infra": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/infra@workspace:typescript/infra" + dependencies: + "@aws-sdk/client-iam": ^3.74.0 + "@aws-sdk/client-kms": 3.48.0 + "@aws-sdk/client-s3": ^3.74.0 + "@ethersproject/experimental": ^5.6.2 + "@ethersproject/hardware-wallets": ~5.6 + "@gnosis.pm/safe-core-sdk": ^2.3.2 + "@gnosis.pm/safe-ethers-lib": ^1.4.0 + "@gnosis.pm/safe-service-client": ^1.2.0 + "@hyperlane-xyz/celo-ethers-provider": ^0.1.1 + "@hyperlane-xyz/helloworld": 0.5.0-beta0 + "@hyperlane-xyz/sdk": 0.5.0-beta0 + "@hyperlane-xyz/utils": 0.5.0-beta0 + "@nomiclabs/hardhat-ethers": ^2.0.5 + "@nomiclabs/hardhat-etherscan": ^3.0.3 + "@nomiclabs/hardhat-waffle": ^2.0.2 + "@types/chai": ^4.2.21 + "@types/mocha": ^9.1.0 + "@types/node": ^16.9.1 + "@types/prompts": ^2.0.14 + "@types/yargs": ^17.0.10 + asn1.js: 5.4.1 + aws-kms-ethers-signer: ^0.1.3 + chai: ^4.3.4 + dotenv: ^10.0.0 + ethereum-waffle: ^3.4.4 + ethers: ^5.6.8 + hardhat: ^2.8.4 + prettier: ^2.4.1 + prom-client: ^14.0.1 + prompts: ^2.4.2 + ts-node: ^10.8.0 + typescript: ^4.7.2 + yargs: ^17.4.1 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/interchain-accounts@workspace:typescript/ica": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/interchain-accounts@workspace:typescript/ica" + dependencies: + "@hyperlane-xyz/app": 0.5.0-beta0 + "@hyperlane-xyz/sdk": 0.5.0-beta0 + "@hyperlane-xyz/utils": 0.5.0-beta0 + "@nomicfoundation/hardhat-chai-matchers": ^1.0.3 + "@nomicfoundation/hardhat-toolbox": ^1.0.2 + "@nomiclabs/hardhat-ethers": ^2.0.5 + "@nomiclabs/hardhat-waffle": ^2.0.2 + "@openzeppelin/contracts-upgradeable": ^4.6.0 + "@trivago/prettier-plugin-sort-imports": ^3.2.0 + "@typechain/ethers-v5": 10.0.0 + "@typechain/hardhat": ^6.0.0 + "@types/mocha": ^9.1.0 + "@typescript-eslint/eslint-plugin": ^5.27.0 + "@typescript-eslint/parser": ^5.27.0 + chai: ^4.3.0 + eslint: ^8.16.0 + eslint-config-prettier: ^8.5.0 + ethereum-waffle: ^3.4.4 + ethers: ^5.6.8 + hardhat: ^2.8.4 + hardhat-gas-reporter: ^1.0.7 + prettier: ^2.4.1 + prettier-plugin-solidity: ^1.0.0-beta.5 + solhint: ^3.3.2 + solhint-plugin-prettier: ^0.0.5 + solidity-coverage: ^0.7.14 + ts-node: ^10.8.0 + typechain: 8.0.0 + typescript: ^4.7.2 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/monorepo@workspace:.": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/monorepo@workspace:." + dependencies: + "@trivago/prettier-plugin-sort-imports": ^3.2.0 + "@typescript-eslint/eslint-plugin": ^5.27.0 + "@typescript-eslint/parser": ^5.27.0 + eslint: ^8.16.0 + eslint-config-prettier: ^8.5.0 + husky: ^8.0.0 + lint-staged: ^12.4.3 + prettier: ^2.4.1 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/sdk@0.5.0-beta0, @hyperlane-xyz/sdk@^0.5.0-beta0, @hyperlane-xyz/sdk@workspace:typescript/sdk": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/sdk@workspace:typescript/sdk" + dependencies: + "@hyperlane-xyz/app": 0.5.0-beta0 + "@hyperlane-xyz/celo-ethers-provider": ^0.1.1 + "@hyperlane-xyz/core": 0.5.0-beta0 + "@hyperlane-xyz/utils": 0.5.0-beta0 + "@nomiclabs/hardhat-ethers": ^2.0.5 + "@nomiclabs/hardhat-waffle": ^2.0.2 + "@types/coingecko-api": ^1.0.10 + "@types/debug": ^4.1.7 + "@types/node": ^16.9.1 + chai: ^4.3.6 + coingecko-api: ^1.0.10 + cross-fetch: ^3.1.5 + debug: ^4.3.4 + dotenv: ^10.0.0 + ethereum-waffle: ^3.4.4 + ethers: ^5.6.8 + fs: 0.0.1-security + hardhat: ^2.8.4 + mocha: ^9.2.2 + prettier: ^2.4.1 + sinon: ^13.0.2 + ts-node: ^10.8.0 + typescript: ^4.7.2 + languageName: unknown + linkType: soft + +"@hyperlane-xyz/utils@0.5.0-beta0, @hyperlane-xyz/utils@^0.5.0-beta0, @hyperlane-xyz/utils@workspace:typescript/utils": + version: 0.0.0-use.local + resolution: "@hyperlane-xyz/utils@workspace:typescript/utils" + dependencies: + chai: ^4.3.0 + ethers: ^5.6.8 + prettier: ^2.4.1 + typescript: ^4.7.2 + languageName: unknown + linkType: soft + "@jridgewell/gen-mapping@npm:^0.3.0": version: 0.3.1 resolution: "@jridgewell/gen-mapping@npm:0.3.1"