mirror of
https://github.com/placeholder-soft/web.git
synced 2026-01-12 17:02:57 +08:00
docs(notices): Add notice WRT deprecation of Geth archive snapshots, drop broken API3 urls (#1350)
* docs(notices): Add notice WRT deprecation of Geth archive snapshots * fix(docs): Broken links upstream on API3
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
---
|
||||
title: Decommissioning Public Geth Archive Snapshots
|
||||
slug: /decomissioning-public-geth-archive-snapshots
|
||||
description: Public Geth archive snapshots will be decommissioned on December 15th, 2024.
|
||||
keywords:
|
||||
[
|
||||
Geth,
|
||||
Archive Node,
|
||||
Node Snapshots,
|
||||
Ethereum,
|
||||
Infrastructure,
|
||||
Reth,
|
||||
Snapshots,
|
||||
Base Node,
|
||||
Beacon Endpoint,
|
||||
OP Stack,
|
||||
]
|
||||
hide_table_of_contents: true
|
||||
---
|
||||
|
||||
# Decommissioning Public Geth Archive Snapshots
|
||||
|
||||
As part of our ongoing efforts to optimize our services, we will be deprecating the Public Geth Archive Snapshots on _December 15th, 2024_. We understand that this change may affect your operations if you rely on these snapshots for maintaining your Ethereum infrastructure. This notice aims to provide you with a potential path forward and offer solutions to ensure a smooth transition.
|
||||
|
||||
## Recommended Path Forward
|
||||
|
||||
We recommend switching to Reth going forward. We will continue to maintain the Reth archive snapshot.
|
||||
|
||||
If you need continued Geth support, we would advise that you maintain your own snapshot that is specific to your infrastructure e.g. EBS on AWS.
|
||||
|
||||
To sync a Geth Archive node to tip:
|
||||
|
||||
- Download the latest Geth Archive snapshot ~30 days old
|
||||
- Use a beacon endpoint with historical blob data
|
||||
- Alternatively you can run your own [blob archiver](https://github.com/base-org/blob-archiver) if you don't want to rely on a third party
|
||||
|
||||
If you have any questions or would like assistance, please reach out to us on [Discord](https://base.org/discord) or [GitHub](https://github.com/base-org/base-node).
|
||||
@@ -1,68 +0,0 @@
|
||||
---
|
||||
title: Preparing for fault proofs on Base
|
||||
slug: /preparing-for-fault-proofs-on-base
|
||||
description: Fault proofs are expected to go live on Base Mainnet in late October.
|
||||
keywords:
|
||||
[
|
||||
Fault proofs,
|
||||
Base,
|
||||
L2 decentralization,
|
||||
Permissionless output proposals,
|
||||
Permissionless challenges,
|
||||
Withdrawals,
|
||||
Base Mainnet,
|
||||
DisputeGameFactory,
|
||||
L2OutputOracle,
|
||||
Seven-day finalization,
|
||||
Dispute game,
|
||||
Bridge operators,
|
||||
UI updates,
|
||||
Contract upgrades,
|
||||
Node operators,
|
||||
Superbridge,
|
||||
Superchain bridges,
|
||||
L1 to L2 deposits,
|
||||
L2 to L1 withdrawals,
|
||||
Mid-July upgrade,
|
||||
Ethereum,
|
||||
Bridging logic,
|
||||
Bridge funds,
|
||||
Decentralized validation,
|
||||
Community participation,
|
||||
]
|
||||
hide_table_of_contents: true
|
||||
---
|
||||
|
||||
# Preparing for fault proofs on Base Mainnet
|
||||
|
||||
Fault proofs are a critical implementation in an L2’s path towards decentralization. They enable a more decentralized approach to validating L2 state and pave the way towards more community participation.
|
||||
|
||||
They improve decentralization with two important capabilities:
|
||||
|
||||
- **Permissionless output proposals:** In an L2 without fault proofs, only the centralized proposer can create and submit output roots about the state of the L2. Now with fault proofs, anyone can make claims about Base's current state instead of relying on a central party.
|
||||
- **Permissionless challenges to output proposals:** If someone makes a faulty or fraudulent claim, anyone can challenge it.
|
||||
|
||||
These changes allow anyone to withdraw funds from Base to L1 without having to rely on centralized actors.
|
||||
|
||||
## Preparing for fault proofs
|
||||
|
||||
Fault proofs are expected to go live for Base Mainnet in late October.
|
||||
|
||||
**What’s changing for withdrawals:**
|
||||
|
||||
- Withdrawals will involve proving and finalizing based on the fault proof system.
|
||||
- In addition, the 'DisputeGameFactory' will replace the 'L2OutputOracle' as the new contract for proposing output root statements. This change is part of the broader shift towards the fault proofing system, which is expected to enhance the security and reliability of the platform.
|
||||
|
||||
**If you are in the process of withdrawing your funds from L2 to L1:**
|
||||
|
||||
- **Withdrawals _before_ the upgrade** must wait the 7-day challenge period before finalization.
|
||||
- **Withdrawals _during_ or _after_ the fault proofs upgrade** for Base Mainnet will be proven by the Fault Proof system and generally take 7 days to finalize, but could see additional delays if challenged.
|
||||
|
||||
**If your team is operating a bridge on Base Mainnet:**
|
||||
|
||||
- Please provide your users with a notice on your UI to inform them that fault proofs will be enabled for Base Mainnet in late October.
|
||||
- Assess and update your bridging logic, and make sure the new L1 contracts are being used.
|
||||
|
||||
Fault proof contract upgrades will be completed atomically, meaning all affected L1 contracts will be upgraded in a single transaction. No action will be required from node operators.
|
||||
|
||||
Please note, bridge.base.org now redirects to [Superbridge](https://superbridge.app/base) and other bridges (collectively, "Superchain bridges"). Superchain bridges are available to initiate and complete deposits and withdrawals to and from Base. Please refer to our [docs](https://bridge.base.org/deposit) for more information on bridging.
|
||||
@@ -36,17 +36,11 @@ hide_table_of_contents: true
|
||||
|
||||
The API3 Market provides access to 200+ price feeds on [Base Mainnet](https://market.api3.org/base) and [Base Testnet](https://market.api3.org/base-sepolia-testnet). The price feeds operate as a native push oracle and can be activated instantly via the Market UI.
|
||||
|
||||
The price feeds are delivered by an aggregate of [first-party oracles](https://docs.api3.org/explore/airnode/why-first-party-oracles.html) using signed data and support [OEV recapture](https://docs.api3.org/explore/introduction/oracle-extractable-value.html).
|
||||
The price feeds are delivered by an aggregate of first-party oracles using signed data and support OEV recapture.
|
||||
|
||||
Unlike traditional data feeds, reading [API3 price feeds](https://docs.api3.org/guides/dapis/) enables dApps to auction off the right to update the price feeds to searcher bots which facilitates more efficient liquidation processes for users and LPs of DeFi money markets. The OEV recaptured is returned to the dApp.
|
||||
Unlike traditional data feeds, reading API3 price feeds enables dApps to auction off the right to update the price feeds to searcher bots which facilitates more efficient liquidation processes for users and LPs of DeFi money markets. The OEV recaptured is returned to the dApp.
|
||||
|
||||
Apart from data feeds, API3 also provides [Quantum Random Number Generation](https://docs.api3.org/explore/qrng/) on Base Mainnet and Testnet. QRNG is a free-to-use service that provides quantum randomness onchain. It is powered by [Airnode](https://docs.api3.org/reference/airnode/latest/understand/), the first-party oracle that is directly operated by the [QRNG API providers](https://docs.api3.org/reference/qrng/providers.html). Read more about QRNG [here](https://docs.api3.org/reference/qrng).
|
||||
|
||||
Check out these guides to learn more:
|
||||
|
||||
- [dAPIs](https://docs.api3.org/guides/dapis/subscribing-to-dapis/): First-party aggregated data feeds sourced directly from the data providers.
|
||||
- [Airnode](https://docs.api3.org/guides/airnode/calling-an-airnode/): The first-party serverless Oracle solution to bring any REST API onchain.
|
||||
- [QRNG](https://docs.api3.org/guides/qrng/): Quantum Random Number Generator for verifiable quantum RNG onchain.
|
||||
Apart from data feeds, API3 also provides Quantum Random Number Generation on Base Mainnet and Testnet. QRNG is a free-to-use service that provides quantum randomness onchain. It is powered by Airnode, the first-party oracle that is directly operated by the QRNG API providers.
|
||||
|
||||
#### Supported Networks
|
||||
|
||||
@@ -137,19 +131,20 @@ The [Pyth Network](https://pyth.network/) is one of the largest first-party Orac
|
||||
- [Available on all major chains](https://docs.pyth.network/price-feeds/contract-addresses)
|
||||
|
||||
#### Supported Networks for Base (Pyth Price Feeds):
|
||||
- Base Mainnet: [`0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a`](https://basescan.org/address/0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a)
|
||||
|
||||
- Base Mainnet: [`0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a`](https://basescan.org/address/0x8250f4aF4B972684F7b336503E2D6dFeDeB1487a)
|
||||
- Base Sepolia: [`0xA2aa501b19aff244D90cc15a4Cf739D2725B5729`](https://base-sepolia.blockscout.com/address/0xA2aa501b19aff244D90cc15a4Cf739D2725B5729)
|
||||
|
||||
|
||||
### Pyth Entropy
|
||||
|
||||
Pyth Entropy allows developers to quickly and easily generate secure **random numbers** onchain.
|
||||
|
||||
Check [how to generate random numbers in EVM contracts](https://docs.pyth.network/entropy/generate-random-numbers/evm) for a detailed walkthrough.
|
||||
|
||||
#### Supported Networks for Base (Pyth Entropy):
|
||||
- Base Mainnet: [`0x6E7D74FA7d5c90FEF9F0512987605a6d546181Bb`](https://basescan.org/address/0x6E7D74FA7d5c90FEF9F0512987605a6d546181Bb)
|
||||
- Base Sepolia: [`0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c`](https://base-sepolia.blockscout.com/address/0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c)
|
||||
|
||||
- Base Mainnet: [`0x6E7D74FA7d5c90FEF9F0512987605a6d546181Bb`](https://basescan.org/address/0x6E7D74FA7d5c90FEF9F0512987605a6d546181Bb)
|
||||
- Base Sepolia: [`0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c`](https://base-sepolia.blockscout.com/address/0x41c9e39574F40Ad34c79f1C99B66A45eFB830d4c)
|
||||
|
||||
Check out the following links to get started with Pyth.
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ module.exports = {
|
||||
label: 'Notices',
|
||||
collapsible: false,
|
||||
collapsed: false,
|
||||
items: ['notices/preparing-for-fault-proofs-on-base'],
|
||||
items: ['notices/decomissioning-public-geth-archive-snapshots'],
|
||||
},
|
||||
{
|
||||
type: 'category',
|
||||
|
||||
@@ -1,4 +1,27 @@
|
||||
{
|
||||
"01_basename_social_dropdown": {
|
||||
"title": "Create a Basename Profile Component",
|
||||
"slug": "/create-basename-profile-component",
|
||||
"description": "Learn how to create a component that displays social media and profile information for a given basename.",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"basename",
|
||||
"profile",
|
||||
"component",
|
||||
"onchain",
|
||||
"dapp"
|
||||
],
|
||||
"tags": [
|
||||
"frontend",
|
||||
"identity"
|
||||
],
|
||||
"difficulty": "medium",
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "9 min read",
|
||||
"checksum": "df2b47bc5f070da32258d9533d04c1840d5e1ebeb58de4196e57b272b9b1a6b7"
|
||||
},
|
||||
"0_deploy-with-foundry": {
|
||||
"title": "Deploying a smart contract using Foundry",
|
||||
"slug": "/deploy-with-foundry",
|
||||
@@ -24,9 +47,9 @@
|
||||
],
|
||||
"difficulty": "beginner",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Jul 24, 2024",
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "17 min read",
|
||||
"checksum": "01acc27579fdc15f4087491bb6a9bed9c4142d893c7eafd2aa2ae023fbefb8a3"
|
||||
"checksum": "ab181fab0003c30eb98f8b5f7621f8d5cc7bd3bbf4c8357d339b95b7a44d68f1"
|
||||
},
|
||||
"0_deploy-with-hardhat": {
|
||||
"title": "Deploying a smart contract using Hardhat",
|
||||
@@ -256,9 +279,9 @@
|
||||
],
|
||||
"difficulty": "beginner",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Sep 12, 2024",
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "7 min read",
|
||||
"checksum": "1b62db4c90fac97453acd2f9bc09b3d23e75baa6ba765caa647721c5ce20d95a"
|
||||
"checksum": "f54045db529b60ed18d47eea24b283da5620dc5e8e2fb39015daef16b5baa48a"
|
||||
},
|
||||
"1_10_farcaster-frames-hyperframes": {
|
||||
"title": "Farcaster Frames: Building HyperFrames",
|
||||
@@ -537,6 +560,32 @@
|
||||
"duration": "9 min read",
|
||||
"checksum": "296c34ff0988d0c72ec1a791bb3e48833bb0afa40f0111c3519354562e3350ed"
|
||||
},
|
||||
"1_ock-swap-theme": {
|
||||
"title": "Create a Custom Themed Swap Component with OnchainKit",
|
||||
"slug": "/create-custom-themed-swap-component",
|
||||
"description": "Learn how to implement a swap component with a custom theme using OnchainKit in your React application.",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"OnchainKit",
|
||||
"Swap Component",
|
||||
"Custom Theme",
|
||||
"React",
|
||||
"TypeScript",
|
||||
"ERC20 Tokens",
|
||||
"Base Chain"
|
||||
],
|
||||
"tags": [
|
||||
"frontend",
|
||||
"defi",
|
||||
"ethereum",
|
||||
"base"
|
||||
],
|
||||
"difficulty": "medium",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "6 min read",
|
||||
"checksum": "6f687231958dc79d5264bcfeadfdb5704b860a7653d788491bdf4c8c41a0e0d3"
|
||||
},
|
||||
"1_verify-contract-with-basescan": {
|
||||
"title": "Verify a Smart Contract using Basescan API",
|
||||
"slug": "/verify-smart-contract-using-basescan",
|
||||
@@ -800,6 +849,111 @@
|
||||
"duration": "18 min read",
|
||||
"checksum": "e20b430c2b1696b473625584d654f4a60e313c102127730553ab75f0bb54c568"
|
||||
},
|
||||
"2_ock-checkout-tutorial": {
|
||||
"title": "Build a eCommerce App using Coinbase Commerce and OnchainKit",
|
||||
"slug": "/coinbase-commerce-onchainkit-checkout",
|
||||
"description": "Learn how to integrate Coinbase Commerce payments into your application using OnchainKit.",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"Account Abstraction",
|
||||
"AA",
|
||||
"Smart account",
|
||||
"Smart Wallet",
|
||||
"Funding",
|
||||
"Onramps",
|
||||
"Onchainkit",
|
||||
"Onboarding Smart contract wallet",
|
||||
"Smart account"
|
||||
],
|
||||
"tags": [
|
||||
"account abstraction"
|
||||
],
|
||||
"difficulty": "intermediate",
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "10 min read",
|
||||
"checksum": "d6301d407efde110a3d11bb66aab5275c19fdf490a5c65e1ed76994a5e732181"
|
||||
},
|
||||
"2_ock-fund-tutorial": {
|
||||
"title": "Build a Smart Wallet Funding app with OnchainKit",
|
||||
"slug": "/build-smart-wallet-funding-app",
|
||||
"description": "Learn how to create a app that detects if a smart wallet has ETH and prompts users to add funds if needed.",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"Account Abstraction",
|
||||
"AA",
|
||||
"Smart account",
|
||||
"Smart Wallet",
|
||||
"Funding",
|
||||
"Onramps",
|
||||
"Onchainkit",
|
||||
"Onboarding Smart contract wallet",
|
||||
"Smart account"
|
||||
],
|
||||
"tags": [
|
||||
"frontend",
|
||||
"wallet",
|
||||
"ethereum"
|
||||
],
|
||||
"difficulty": "medium",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "8 min read",
|
||||
"checksum": "7c0f5e6d29bac8f14d6bc3f169994b35553e2076541a6be37d90d70f15d6406c"
|
||||
},
|
||||
"2_paymaster-erc20-gas-payments": {
|
||||
"title": "Enable ERC-20 Gas Payments with Coinbase Paymaster",
|
||||
"slug": "/enable-erc20-gas-payments",
|
||||
"description": "Learn how to enable ERC-20 tokens as gas payment options for smart wallets using Coinbase Paymaster, improving UX and onboarding for your onchain application.",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"Paymaster",
|
||||
"ERC20 Gas Payments",
|
||||
"Wagmi",
|
||||
"React",
|
||||
"TypeScript",
|
||||
"Base",
|
||||
"cbBTC",
|
||||
"Bitcoin",
|
||||
"Smart Wallets",
|
||||
"Paymaster Policy"
|
||||
],
|
||||
"tags": [
|
||||
"backend",
|
||||
"ethereum",
|
||||
"base",
|
||||
"erc20"
|
||||
],
|
||||
"difficulty": "medium",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "11 min read",
|
||||
"checksum": "fba9f07d79bc71831f303b9c85d3748571041e605987bb04a1044d7dcf1d9e28"
|
||||
},
|
||||
"2_paymaster-sponsor-using-wagi": {
|
||||
"title": "How to Implement Base Paymaster into a Wagmi Project",
|
||||
"slug": "/implement-base-paymaster-wagmi",
|
||||
"description": "A tutorial to create a Mint button for free NFT minting with Base Paymaster sponsorship",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"Base Paymaster",
|
||||
"NFT",
|
||||
"Wagmi",
|
||||
"WalletConnect",
|
||||
"Coinbase Wallet"
|
||||
],
|
||||
"tags": [
|
||||
"smart wallets",
|
||||
"NFT minting",
|
||||
"Wagmi integration"
|
||||
],
|
||||
"difficulty": "beginner",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "15 min read",
|
||||
"checksum": "c3637099bddcc48e1480b60b3bf560c1a6ee901b8ed7bf598e8bf8d26cb23200"
|
||||
},
|
||||
"4_account-abstraction-with-biconomy": {
|
||||
"title": "Account Abstraction on Base using Biconomy",
|
||||
"slug": "/account-abstraction-with-biconomy",
|
||||
@@ -1105,9 +1259,9 @@
|
||||
],
|
||||
"difficulty": "intermediate",
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Sep 26, 2024",
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "34 min read",
|
||||
"checksum": "0f984180e209b250b61c437f6cb53af4695e73e5c08297d09bd64f25a2b20122"
|
||||
"checksum": "af94b371cf5c3798b44ea74a21184bf81ca97ab2c12d6194c7ff6093e164ec6f"
|
||||
},
|
||||
"5_deploy-with-fleek": {
|
||||
"title": "Deploy an Onchain App with Fleek",
|
||||
@@ -1132,6 +1286,28 @@
|
||||
"duration": "9 min read",
|
||||
"checksum": "d9302891627f1761507422bf35c361a30b343e77cb4d3981888ab70eb4fbd0ac"
|
||||
},
|
||||
"5_farcaster-to-openframe": {
|
||||
"title": "Convert Farcaster Frame to Open Frame using OnchainKit",
|
||||
"slug": "/convert-farcaster-frame-to-open-frame",
|
||||
"description": "Learn how to convert your Farcaster Frame to an Open Frame using Onchain Kit, enabling broader compatibility and usage.",
|
||||
"author": "hughescoin",
|
||||
"keywords": [
|
||||
"farcaster",
|
||||
"openframe",
|
||||
"onchainKit",
|
||||
"farcaster",
|
||||
"open frames"
|
||||
],
|
||||
"tags": [
|
||||
"frontend"
|
||||
],
|
||||
"difficulty": "intermediate",
|
||||
"hide_table_of_contents": false,
|
||||
"displayed_sidebar": null,
|
||||
"last_updated": "Dec 6, 2024",
|
||||
"duration": "10 min read",
|
||||
"checksum": "a81681ca9176774c2b8d20b6a2a873bdbaab99944a4d90526797f699db3e7b86"
|
||||
},
|
||||
"5_oracles-chainlink-price-feeds": {
|
||||
"title": "Accessing real-world data using Chainlink Data Feeds",
|
||||
"slug": "/oracles-chainlink-price-feeds",
|
||||
@@ -1259,4 +1435,4 @@
|
||||
"duration": "8 min read",
|
||||
"checksum": "59d04f2a46bc95b68a0f50c83f78a0b0d2f2549ecf0e8c7e592aaa4eae6bf6d1"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -105,6 +105,12 @@ If you're a prospective or current Base Node operator and would like to restore
|
||||
|
||||
In the home directory of your Base Node, create a folder named `geth-data` or `reth-data`. If you already have this folder, remove it to clear the existing state and then recreate it. Next, run the following code and wait for the operation to complete.
|
||||
|
||||
:::info
|
||||
|
||||
We will be deprecating the Public Geth Archive Snapshots on _December 15th, 2024_ and recommend switching to Reth going forward. We will continue to maintain the Reth archive snapshot.
|
||||
|
||||
:::
|
||||
|
||||
| Network | Client | Snapshot Type | Command |
|
||||
| ------- | ------ | ------------- | --------------------------------------------------------------------------------------------------------------------- |
|
||||
| Testnet | Geth | Full | `wget https://sepolia-full-snapshots.base.org/$(curl https://sepolia-full-snapshots.base.org/latest)` |
|
||||
|
||||
Reference in New Issue
Block a user