Skip to content

Commit

Permalink
Merge pull request #928 from ethereum-optimism/notice-page
Browse files Browse the repository at this point in the history
Added banner and notice page for SDK deprecation
  • Loading branch information
krofax authored Oct 5, 2024
2 parents 5090547 + 924eceb commit 0be241d
Show file tree
Hide file tree
Showing 4 changed files with 112 additions and 1 deletion.
3 changes: 2 additions & 1 deletion pages/builders/notices/_meta.json
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"
}
101 changes: 101 additions & 0 deletions pages/builders/notices/sdk-deprecation.mdx
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
8 changes: 8 additions & 0 deletions theme.config.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,14 @@ const config: DocsThemeConfig = {
</>
),
darkMode: true,
banner: {
key: 'viem/op-stack',
text: (
<a href="/builders/notices/sdk-deprecation" target="_blank">
🎉 We are deprecating the Optimism SDK and migrating all tutorials to use viem/op-stack. Read more →
</a>
)
},
search: {
component: Search,
},
Expand Down
1 change: 1 addition & 0 deletions words.txt
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@ opcm
Openfort
oplabs
opnode's
opstack
Opti
pausable
pcscdpath
Expand Down

0 comments on commit 0be241d

Please sign in to comment.