-
Notifications
You must be signed in to change notification settings - Fork 223
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #928 from ethereum-optimism/notice-page
Added banner and notice page for SDK deprecation
- Loading branch information
Showing
4 changed files
with
112 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,5 @@ | ||
{ | ||
"granite-changes": "Preparing for Granite Breaking Changes", | ||
"fp-changes": "Preparing for Fault Proofs Breaking Changes" | ||
"fp-changes": "Preparing for Fault Proofs Breaking Changes", | ||
"sdk-deprecation": "Preparing for Optimism SDK deprecation" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
--- | ||
title: Deprecation of the Optimism SDK | ||
lang: en-US | ||
description: This page outlines the details of the Optimism SDK deprecation and guides developers to migrate to using `viem` library. | ||
--- | ||
|
||
## Preparing for Optimism SDK deprecation | ||
|
||
The Optimism SDK will officially be deprecated in Q1 2025. The project is shifting to the `viem` library for a more modern, efficient, and flexible development experience. This change affects all tutorials and resources that previously relied on the Optimism SDK, and relevant documentation has been updated accordingly. | ||
|
||
### Breaking changes to expect | ||
|
||
The migration from the Optimism SDK to `viem` library brings several breaking changes: | ||
|
||
* **Transaction estimation**: Methods for estimating gas fees will now leverage `viem` APIs. | ||
* **Bridging**: All token bridging actions must be updated to use the `viem` library bridging methods. | ||
* **Cross-chain communication**: `viem` library simplifies the cross-domain messaging functionality. | ||
* **SDK method removal**: All deprecated SDK methods will be unavailable after Q1 2025. | ||
|
||
Developers and users are strongly encouraged to transition to `viem` before the deprecation date to avoid disruptions. | ||
|
||
### Updated tutorials | ||
|
||
We are updating our tutorials to use the `viem` library. | ||
|
||
{/* Below, you'll find links to the updated versions of popular tutorials: | ||
* [Estimating Transaction Costs on OP Mainnet](../tutorials/transaction-cost-estimation)\ | ||
Estimation of transaction costs now uses the `viem` gas estimation utilities. | ||
* [Triggering OP Mainnet Transactions from Ethereum](../tutorials/trigger-op-transactions)\ | ||
Learn how to trigger transactions using `viem` to interact with the OP Mainnet. | ||
* [Tracing Deposits and Withdrawals](../tutorials/tracing-deposits-withdrawals)\ | ||
The tracing functionalities have been adapted to use `opstack` for efficient results. | ||
* [Viewing Deposits and Withdrawals by Address](../tutorials/view-deposits-withdrawals)\ | ||
This tutorial outlines updated methods in `viem` for querying deposits and withdrawals by address. | ||
* [Bridging Your Standard ERC-20 Token Using the Standard Bridge](../tutorials/bridge-standard-erc20)\ | ||
The standard bridge tutorial now uses `opstack` for token transfers between Ethereum and OP Mainnet. | ||
* [Bridging Your Custom ERC-20 Token Using the Standard Bridge](../tutorials/bridge-custom-erc20)\ | ||
Custom ERC-20 tokens can now be bridged via `opstack`, making the process more streamlined. | ||
* [Bridging ERC-20 Tokens to OP Mainnet With the Optimism SDK](../tutorials/bridge-sdk-erc20)\ | ||
**Deprecated** – please use [Bridging Your Custom ERC-20 Token Using the Standard Bridge](../tutorials/bridge-custom-erc20). | ||
* [Bridging ETH to OP Mainnet With the Optimism SDK](../tutorials/bridge-sdk-eth)\ | ||
**Deprecated** – please use [Estimating Transaction Costs on OP Mainnet](../tutorials/transaction-cost-estimation). | ||
* [Communicating Between OP Mainnet and Ethereum in Solidity](../tutorials/cross-chain-solidity)\ | ||
Cross-chain communication now leverages `opstack` for all messaging. */} | ||
|
||
### For app developers | ||
|
||
If your application currently depends on the Optimism SDK, you will need to migrate to using the `viem` library. | ||
The tutorials have been updated to reflect these changes, and it is critical to update your applications before the deprecation date to maintain compatibility. | ||
|
||
Here are some key points to consider: | ||
|
||
Install new dependencies: Replace the Optimism SDK with `viem` in your project. | ||
|
||
```bash | ||
pnpm remove @eth-optimism/sdk | ||
pnpm add viem | ||
``` | ||
|
||
* Update imports: Replace Optimism SDK imports with `viem` imports. | ||
* Migrate SDK methods: Refactor your code to use equivalent `viem` methods. Refer to the viem documentation and opstack documentation for guidance. | ||
* Test thoroughly: After migration, extensively test your application to ensure all functionality works as expected. | ||
|
||
### For chain operators | ||
|
||
Chain operators utilizing the SDK for cross-chain operations, bridging, or other functions should switch to the `viem` library. | ||
The `viem` library offers more efficient methods to handle these operations. | ||
|
||
Chain operators should be aware of the following: | ||
|
||
* SDK removal: Remove any dependencies on the Optimism SDK in your infrastructure. | ||
* Update tooling: Ensure all tools and scripts are updated to use `viem`. | ||
* Monitor performance: After migration, closely monitor your chain's performance to ensure smooth operation. | ||
|
||
### For node operators | ||
|
||
Node operators will need to ensure that any scripts or services relying on the Optimism SDK are updated to use `viem` library. | ||
These updates will help align with future improvements and scalability efforts across the OP Stack. | ||
|
||
Node operators should take the following steps: | ||
|
||
* Update node software: Ensure your node software is compatible with the latest `viem` libraries. | ||
* Review configuration: Check and update any configuration files that may reference the Optimism SDK. | ||
* Test thoroughly: Perform comprehensive testing in a staging environment before updating production nodes. | ||
|
||
### Need Help? | ||
|
||
For further assistance or questions about this migration, feel free to reach through the following channels: | ||
|
||
* Join our [community forum](https://community.optimism.io/) for discussions and support | ||
* Connect with us on [Discord](https://discord.gg/optimism) for community support | ||
* Open an [issue on our GitHub repository](https://github.com/ethereum-optimism/docs/issues) for documentation-related concerns |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -232,6 +232,7 @@ opcm | |
Openfort | ||
oplabs | ||
opnode's | ||
opstack | ||
Opti | ||
pausable | ||
pcscdpath | ||
|