diff --git a/docs/build/ethereum-tools/interact-with-ethersjs.md b/docs/build/ethereum-tools/interact-with-ethersjs.md index ef4fc16..519ecca 100644 --- a/docs/build/ethereum-tools/interact-with-ethersjs.md +++ b/docs/build/ethereum-tools/interact-with-ethersjs.md @@ -1,8 +1,5 @@ # Overview -!!! note - Familiarity with Linux/Javascript is essential. - Similar to Web3.js, the [Ethers.js](https://docs.ethers.org/v5/) library offers a comprehensive suite of tools for interacting with Ethereum nodes using JavaScript. In addition, Darwinia provides an Ethereum-compatible API that supports JSON RPC invocations, making it fully compatible with the Ethers.js library. This compatibility enables developers to utilize the Ethers.js library to interact with a Darwinia node in a manner similar to interacting with an Ethereum node. This allows developers to leverage their existing knowledge and tools to build applications on the Darwinia network seamlessly. ## Prerequisites @@ -36,16 +33,16 @@ In this tutorial, we will explore the usage of Ethers.js by deploying a contract mkdir example-with-ethersjs && cd example-with-ethersjs && npm init --y ``` -Install the Web3.js by runing the following command: +Install the ethers by running the following command: ```bash -npm install ethers@5.7.2 +npm install ethers@6.13.0 ``` ## Contract Interaction !!! note - The network provider used in this tutorial is the Pangolin Testnet. However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. + The network provider used in this tutorial is the [Koi testnet](../getting-started/networks/koi.md). However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. ### Prepare Contract @@ -96,7 +93,7 @@ solc storage.sol --combined-json abi,bin,hashes --pretty-json > metadata.json The output of `cat metadata.json`: -```json +```json title="metadata.json" { "contracts": { "storage.sol:Storage": { @@ -144,14 +141,14 @@ The output of `cat metadata.json`: Create a deploy script by running this command: ```bash -node deploy.js +touch deploy.js ``` And paste the following content into it: ```jsx linenums="1" title="deploy.js" -const ethers = require("ethers"); -const contractMetadata = require("../example-with-ethersjs/metadata.json"); +const { ethers, JsonRpcProvider } = require("ethers"); +const contractMetadata = require("./metadata.json"); // The test account const accountFrom = { @@ -159,7 +156,7 @@ const accountFrom = { privateKey: "0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc", } -const provider = new ethers.providers.JsonRpcProvider('https://pangolin-rpc.darwinia.network'); +const provider = new JsonRpcProvider('https://koi-rpc.darwinia.network'); const wallet = new ethers.Wallet(accountFrom.privateKey, provider); const abi = contractMetadata.contracts["storage.sol:Storage"].abi; const bin = contractMetadata.contracts["storage.sol:Storage"].bin; @@ -169,9 +166,10 @@ const deploy = async () => { // Construct the contract instance const contract = new ethers.ContractFactory(abi, bin, wallet); - + let storage = await contract.deploy(); - console.log(`Contract deployed at address: ${storage.address}`); + let address = await storage.getAddress(); + console.log(`Contract deployed at address: ${address}`); }; deploy(); @@ -187,7 +185,7 @@ The output like this: ```bash Attempting to deploy from account 0x6Bc9543094D17f52CF6b419FB692797E48d275d0 -Contract deployed at address: 0xE175242B7509e32a18973Ab622Ea3349a6C47429 +Contract deployed at address: 0x24e263941c13bD12EEaAdba64531385e83103908 ``` `0xE175242B7509e32a18973Ab622Ea3349a6C47429` is the address of the deployed storage contract, as a unique identifier for that contract. It will be used later to store and retrieve the number. @@ -200,35 +198,39 @@ Create a store script by running this command: touch store.js ``` -Please paste the following content into the `store.js` file, *ensuring that you have updated the **`contractAddress`** in the script with the address of the contract you deployed.* +Please paste the following content into the `store.js` file. + +!!! tip + Ensure that the `const contractAddress = '0x24e263941c13bD12EEaAdba64531385e83103908` in the script updated to your deployed contract. ```jsx linenums="1" title="store.js" -const ethers = require("ethers"); -const contractMetadata = require("../example-with-ethersjs/metadata.json"); +const { ethers, JsonRpcProvider } = require("ethers"); +const contractMetadata = require("./metadata.json"); + +// The contract address deployed in last step +const contractAddress = "0x24e263941c13bD12EEaAdba64531385e83103908"; // The test account const accountFrom = { - address: "0x6Bc9543094D17f52CF6b419FB692797E48d275d0", - privateKey: "0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc", -} - -const provider = new ethers.providers.JsonRpcProvider('https://pangolin-rpc.darwinia.network'); + address: "0x6Bc9543094D17f52CF6b419FB692797E48d275d0", + privateKey: + "0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc", +}; +const provider = new JsonRpcProvider("https://koi-rpc.darwinia.network"); const wallet = new ethers.Wallet(accountFrom.privateKey, provider); const abi = contractMetadata.contracts["storage.sol:Storage"].abi; -// The contract address deployed in last step -const contractAddress = '0xE175242B7509e32a18973Ab622Ea3349a6C47429'; const store = async () => { - // Construct the contract instance= + // Construct the contract instance let storageContract = new ethers.Contract(contractAddress, abi, wallet); // Call store to update the number to 3 - let transaction = await storageContract.store(3); - let receipt = await transaction.wait(); - console.log(`Tx successful with hash: ${receipt.transactionHash}`); + let transactionResponse = await storageContract.store(3); + console.log(`Tx successful with hash: ${transactionResponse.hash}`); + await transactionResponse.wait(); }; -store(); +store().catch(console.error); ``` Run the script by the command: @@ -251,17 +253,20 @@ Create a retrieve script by running this command: touch retrieve.js ``` -Please paste the following content into the `retrieve.js` file, *ensuring that you have updated the **`contractAddress`** in the script with the address of the contract you deployed.* +Please paste the following content into the `retrieve.js` file. -```jsx linenums="1" title="retrieve.js" -const ethers = require("ethers"); -const contractMetadata = require("../example-with-ethersjs/metadata.json"); +!!! tip + Ensure that the `const contractAddress = '0x24e263941c13bD12EEaAdba64531385e83103908` in the script updated to your deployed contract. -const provider = new ethers.providers.JsonRpcProvider('https://pangolin-rpc.darwinia.network'); -const abi = contractMetadata.contracts["storage.sol:Storage"].abi; +```jsx linenums="1" title="retrieve.js" +const { ethers, JsonRpcProvider } = require("ethers"); +const contractMetadata = require("./metadata.json"); // The contract address deployed in last step -const contractAddress = '0xE175242B7509e32a18973Ab622Ea3349a6C47429'; +const contractAddress = '0x24e263941c13bD12EEaAdba64531385e83103908'; + +const provider = new JsonRpcProvider('https://koi-rpc.darwinia.network'); +const abi = contractMetadata.contracts["storage.sol:Storage"].abi; const retrieve = async () => { // Construct the contract instance let storageContract = new ethers.Contract(contractAddress, abi, provider); diff --git a/docs/build/ethereum-tools/interact-with-foundry.md b/docs/build/ethereum-tools/interact-with-foundry.md index cb782ca..69c7e00 100644 --- a/docs/build/ethereum-tools/interact-with-foundry.md +++ b/docs/build/ethereum-tools/interact-with-foundry.md @@ -12,7 +12,7 @@ The four main tools in Foundry are: - [Anvil](https://github.com/foundry-rs/foundry/blob/master/crates/anvil): Anvil is a local TestNet node that can be used for development purposes. It has the ability to fork preexisting networks. - [Chisel](https://github.com/foundry-rs/foundry/blob/master/crates/chisel): Chisel is a Solidity REPL (Read-Eval-Print Loop) that allows for quick testing of Solidity snippets. -This guide will provide instructions on how to use Foundry's Forge and Cast tools to interact with Ethereum smart contracts on the Darwinia Pangolin TestNet. +This guide will provide instructions on how to use Foundry's Forge and Cast tools to interact with Ethereum smart contracts on the Darwinia [Koi TestNet](../getting-started/networks/koi.md). ## Prerequisites @@ -43,7 +43,7 @@ In addition to these three folders, a git project will also be created along wit ## Contract Interaction !!! note - The network provider used in this tutorial is the Pangolin Testnet. However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. + The network provider used in this tutorial is the Koi Testnet. However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. ### Prepare And Compile Contract @@ -106,7 +106,7 @@ Compiler run successful! Start the deployment by running the command: ```bash -forge create --rpc-url https://pangolin-rpc.darwinia.network --private-key 0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc src/storage.sol:Storage +forge create --rpc-url https://koi-rpc.darwinia.network --private-key 0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc src/storage.sol:Storage ``` The output like this: @@ -126,7 +126,7 @@ Transaction hash: 0x8a9089e9aaf1569807cf3bae0f525370a490444fb6c55702aee46aaad70e Run the command: ```bash -cast send --private-key 0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc --rpc-url https://pangolin-rpc.darwinia.network 0x0De784894D8FfE792EA7cF108E96f6e4451D066E "store(uint256)" 3 +cast send --private-key 0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc --rpc-url https://koi-rpc.darwinia.network 0x0De784894D8FfE792EA7cF108E96f6e4451D066E "store(uint256)" 3 ``` The output: @@ -152,7 +152,7 @@ type 2 Run the command: ```bash -cast call 0x0De784894D8FfE792EA7cF108E96f6e4451D066E "retrieve()" --rpc-url https://pangolin-rpc.darwinia.network +cast call 0x0De784894D8FfE792EA7cF108E96f6e4451D066E "retrieve()" --rpc-url https://koi-rpc.darwinia.network ``` The output: diff --git a/docs/build/ethereum-tools/interact-with-hardhat.md b/docs/build/ethereum-tools/interact-with-hardhat.md index d913c0a..044a580 100644 --- a/docs/build/ethereum-tools/interact-with-hardhat.md +++ b/docs/build/ethereum-tools/interact-with-hardhat.md @@ -1,8 +1,5 @@ # Overview -!!! note - Familiarity with Linux/Javascript is essential. - [Hardhat](https://hardhat.org/) is a powerful Ethereum development environment designed to assist developers in managing and automating the repetitive tasks associated with building smart contracts and decentralized applications (DApps). Notably, Hardhat has the capability to directly interact with Darwinia's Ethereum API, enabling developers to deploy their smart contracts onto the Darwinia network. This compatibility allows developers to leverage Hardhat's features and tools when working with Darwinia, streamlining the development process and facilitating the creation of robust and reliable applications. ## Setting up a project @@ -61,7 +58,7 @@ These are the default paths for a Hardhat project. ## Contract Interaction !!! note - The network provider used in this tutorial is the Pangolin Testnet. However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. + The network provider used in this tutorial is the [Koi Testnet](../getting-started/networks/koi.md). However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. ### Prepare And Compile Contract @@ -117,7 +114,7 @@ Compiled 1 Solidity file successfully ### Update Hardhat Config -Before working with the contracts, there are a few basic configurations that need to be set up. Replace the default **`hardhat.config`** file with the following content. This configuration includes the Pangolin network RPC information and adds a test account: +Before working with the contracts, there are a few basic configurations that need to be set up. Replace the default **`hardhat.config`** file with the following content. This configuration includes the Koi network RPC information and adds a test account: ```jsx linenums="1" title="hardhat.config" require("@nomicfoundation/hardhat-toolbox"); @@ -125,17 +122,17 @@ require("@nomicfoundation/hardhat-toolbox"); /** @type import('hardhat/config').HardhatUserConfig */ module.exports = { solidity: "0.8.19", - defaultNetwork: "pangolin", + defaultNetwork: "koi", networks: { - pangolin: { - url: "https://pangolin-rpc.darwinia.network", + koi: { + url: "https://koi-rpc.darwinia.network", accounts: ["0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc"] } } }; ``` -By updating the **`hardhat.config`** file with this content, you will have the necessary configurations in place to interact with the Pangolin network and use the test account for testing purposes. +By updating the **`hardhat.config`** file with this content, you will have the necessary configurations in place to interact with the Koi network and use the test account for testing purposes. ### Deploy Storage Contract @@ -161,7 +158,7 @@ main().catch((error) => { Start the deployment by running the command: ```jsx -npx hardhat run --network pangolin scripts/deploy.js +npx hardhat run --network koi scripts/deploy.js ``` The output like this: @@ -209,7 +206,7 @@ ContractTransactionResponse { _initializingPromise: [Promise], provider: [BackwardsCompatibilityProviderAdapter] }, - _networkName: 'pangolin', + _networkName: 'koi', _blockListeners: [], _transactionHashListeners: Map(0) {}, _eventListeners: [] diff --git a/docs/build/ethereum-tools/interact-with-web3js.md b/docs/build/ethereum-tools/interact-with-web3js.md index d6e137a..d21fbb1 100644 --- a/docs/build/ethereum-tools/interact-with-web3js.md +++ b/docs/build/ethereum-tools/interact-with-web3js.md @@ -1,8 +1,5 @@ # Overview -!!! note - Familiarity with Linux/Javascript is essential. - [Web3.js](https://web3js.org/) is a comprehensive library that enables developers to communicate with Ethereum nodes using various protocols such as HTTP or WebSocket in JavaScript. Darwinia offers an [Ethereum-Compatible API](../../learn/ethereum-compatibility/jsonrpc.md) that supports JSON RPC calls similar to Ethereum. As a result, developers can utilize the Web3.js library to interact with a Darwinia node in the same way they would interact with an Ethereum node. This compatibility simplifies the process of building applications that interact with Darwinia using familiar Ethereum tools and libraries. ## Prerequisites @@ -39,14 +36,14 @@ mkdir example-with-web3js && cd example-with-web3js && npm init --y Install the Web3.js by runing the following command: ```bash -npm install web3@1.10.2 +npm install web3@4.9.0" ``` ## Contract Interaction !!! note - The network provider used in this tutorial is the Pangolin Testnet. However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. + The network provider used in this tutorial is the [Koi testnet](../getting-started/networks/koi.md). However, the concepts and techniques covered in this tutorial are applicable to other Darwinia networks as well. ### Prepare Contract @@ -97,7 +94,7 @@ solc storage.sol --combined-json abi,bin,hashes --pretty-json > metadata.json The output of `cat metadata.json`: -```json +```json title="metadata.json" { "contracts": { "storage.sol:Storage": { @@ -145,13 +142,13 @@ The output of `cat metadata.json`: Create a deploy script by running this command: ```bash -node deploy.js +touch deploy.js ``` And paste the following content into it: ```jsx linenums="1" title="deploy.js" -const Web3 = require("web3"); +const { Web3 } = require("web3"); const contractMetadata = require("./metadata.json"); // The test account @@ -160,7 +157,7 @@ const accountFrom = { privateKey: "0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc", } -const web3 = new Web3('https://pangolin-rpc.darwinia.network'); +const web3 = new Web3('https://koi-rpc.darwinia.network'); const abi = contractMetadata.contracts["storage.sol:Storage"].abi; const bin = contractMetadata.contracts["storage.sol:Storage"].bin; @@ -207,7 +204,7 @@ Attempting to deploy from account 0x6Bc9543094D17f52CF6b419FB692797E48d275d0 Contract deployed at address: 0x677163264bcb88A6f8F71E2B7D88F51d54325AB1 ``` -`0x677163264bcb88A6f8F71E2B7D88F51d54325AB1` is the address of the deployed storage contract, as a unique identifier for that contract. It will be used later to store and retrieve the number. +`0x677163264bcb88A6f8F71E2B7D88F51d54325AB1` is the address of the deployed storage contract, as a unique identifier for that contract. **It will be used later to store and retrieve the number**. ### Store Number @@ -217,23 +214,27 @@ Create a store script by running this command: touch store.js ``` -Please paste the following content into the `store.js` file, *ensuring that you have updated the **`contractAddress`** in the script with the address of the contract you deployed.* +Please paste the following content into the `store.js` file. + +!!! tip + Ensure that the `const contractAddress = '0x677163264bcb88A6f8F71E2B7D88F51d54325AB1'` in the script updated to your deployed contract. ```jsx linenums="1" title="store.js" -const Web3 = require("web3"); + +const { Web3 } = require("web3"); const contractMetadata = require("./metadata.json"); +// The contract address deployed in last step +const contractAddress = '0x677163264bcb88A6f8F71E2B7D88F51d54325AB1'; + // The test account const accountFrom = { address: "0x6Bc9543094D17f52CF6b419FB692797E48d275d0", privateKey: "0xd5cef12c5641455ad949c3ce8f9056478eeda53dcbade335b06467e8d6b2accc", } - -const web3 = new Web3('https://pangolin-rpc.darwinia.network'); +const web3 = new Web3('https://koi-rpc.darwinia.network'); const abi = contractMetadata.contracts["storage.sol:Storage"].abi; -// The contract address deployed in last step -const contractAddress = '0x677163264bcb88A6f8F71E2B7D88F51d54325AB1'; const store = async () => { web3.eth.accounts.wallet.add(accountFrom.privateKey); @@ -241,7 +242,7 @@ const store = async () => { let storageContract = new web3.eth.Contract(abi, contractAddress); storageContract.options.from = accountFrom.address; storageContract.options.gas = 4_000_000; - + // Call store to update the number to 3 let receipt = await storageContract.methods.store(3).send(); console.log(`Tx successful with hash: ${receipt.transactionHash}`); @@ -270,17 +271,21 @@ Create a retrieve script by running this command: touch retrieve.js ``` -Please paste the following content into the `retrieve.js` file, *ensuring that you have updated the **`contractAddress`** in the script with the address of the contract you deployed.* +Please paste the following content into the `retrieve.js` file. + +!!! tip + Ensure that the `const contractAddress = '0x677163264bcb88A6f8F71E2B7D88F51d54325AB1'` in the script updated to your deployed contract. ```jsx linenums="1" title="retrieve.js" -const Web3 = require("web3"); +const { Web3 } = require("web3"); const contractMetadata = require("./metadata.json"); -const web3 = new Web3('https://pangolin-rpc.darwinia.network'); -const abi = contractMetadata.contracts["storage.sol:Storage"].abi; - // The contract address deployed in last step const contractAddress = '0x677163264bcb88A6f8F71E2B7D88F51d54325AB1'; + +const web3 = new Web3('https://koi-rpc.darwinia.network'); +const abi = contractMetadata.contracts["storage.sol:Storage"].abi; + const retrieve = async () => { // Construct the contract instance let storageContract = new web3.eth.Contract(abi, contractAddress); diff --git a/docs/build/getting-started/networks/dev-node.md b/docs/build/getting-started/networks/dev-node.md index f5b654d..ea98759 100644 --- a/docs/build/getting-started/networks/dev-node.md +++ b/docs/build/getting-started/networks/dev-node.md @@ -1,6 +1,6 @@ # Run Development Testnet -While there is an established test network, namely the [Pangolin network](./pangolin.md), which serves as an ideal sandbox for your applications, eliminating any concern about initiating and connecting nodes, among other things. The official test network is designed to fulfill application developers' requirements. However, there may be scenarios where you want to perform low-level tasks. In such cases, creating your own development network can significantly enhance your development, testing, or debugging efficiency. This guide will walk you through the process of establishing a single-node development network. +While there is an established test network, namely the [Koi network](./koi.md), which serves as an ideal sandbox for your applications, eliminating any concern about initiating and connecting nodes, among other things. The official test network is designed to fulfill application developers' requirements. However, there may be scenarios where you want to perform low-level tasks. In such cases, creating your own development network can significantly enhance your development, testing, or debugging efficiency. This guide will walk you through the process of establishing a single-node development network. ## Compile darwinia node @@ -15,25 +15,48 @@ While there is an established test network, namely the [Pangolin network](./pang ```bash cd darwinia - cargo build --release -p darwinia --features pangolin-native + cargo build --release -p darwinia --features koi-native ``` 4. When the compilation is finished, something like this will be printed: ```bash - Compiling kusama-runtime v0.9.43 (https://github.com/paritytech/polkadot?branch=release-v0.9.43#ba42b9ce) - Compiling rococo-runtime v0.9.43 (https://github.com/paritytech/polkadot?branch=release-v0.9.43#ba42b9ce) - Compiling polkadot-runtime v0.9.43 (https://github.com/paritytech/polkadot?branch=release-v0.9.43#ba42b9ce) - Compiling darwinia-runtime v6.3.4 (/home/bear/coding/rust-space/darwinia/runtime/darwinia) - Compiling crab-runtime v6.3.4 (/home/bear/coding/rust-space/darwinia/runtime/crab) - Compiling pangolin-runtime v6.3.4 (/home/bear/coding/rust-space/darwinia/runtime/pangolin) - Compiling darwinia v6.3.4 (/home/bear/coding/rust-space/darwinia/node) - Compiling polkadot-client v0.9.43 (https://github.com/paritytech/polkadot?branch=release-v0.9.43#ba42b9ce) - Compiling polkadot-service v0.9.43 (https://github.com/paritytech/polkadot?branch=release-v0.9.43#ba42b9ce) - Compiling polkadot-cli v0.9.43 (https://github.com/paritytech/polkadot?branch=release-v0.9.43#ba42b9ce) - Compiling cumulus-relay-chain-inprocess-interface v0.1.0 (https://github.com/paritytech/cumulusbranch=polkadot-v9.43#b8999fce) - Compiling cumulus-client-service v0.1.0 (https://github.com/paritytech/cumulus?branch=polkadot-v0.9.43#b8999fce) - Finished release [optimized] target(s) in 5m 57s + ...... + Compiling polkadot-node-core-backing v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-gossip-support v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-dispute-coordinator v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-statement-distribution v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-availability-distribution v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-prospective-parachains v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-bitfield-signing v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-av-store v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-approval-distribution v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-availability-bitfield-distribution v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-pvf-checker v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-chain-selection v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-approval-voting v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-parachains-inherent v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling polkadot-node-core-chain-api v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling fc-db v2.0.0-dev (https://github.com/darwinia-network/frontier?branch=polkadot-v1.1.0-patch#a562b665) + Compiling fc-mapping-sync v2.0.0-dev (https://github.com/darwinia-network/frontier?branch=polkadot-v1.1.0-patch#a562b665) + Compiling cumulus-client-consensus-common v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-pallet-aura-ext v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-client-network v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling try-runtime-cli v0.10.0-dev (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling sc-storage-monitor v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-client-collator v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling fc-rpc v2.0.0-dev (https://github.com/darwinia-network/frontier?branch=polkadot-v1.1.0-patch#a562b665) + Compiling cumulus-relay-chain-rpc-interface v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-relay-chain-minimal-node v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-client-consensus-proposer v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-client-cli v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-client-consensus-aura v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling moonbeam-rpc-debug v0.1.0 (https://github.com/darwinia-network/moonbeam?branch=polkadot-v1.1.0#078eff3e) + Compiling moonbeam-rpc-trace v0.6.0 (https://github.com/darwinia-network/moonbeam?branch=polkadot-v1.1.0#078eff3e) + Compiling polkadot-service v1.0.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-relay-chain-inprocess-interface v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Compiling cumulus-client-service v0.1.0 (https://github.com/paritytech/polkadot-sdk?branch=release-polkadot-v1.1.0#c8d2251c) + Finished release [optimized] target(s) in 16m 12s ``` @@ -41,59 +64,76 @@ While there is an established test network, namely the [Pangolin network](./pang After your node compiles, you are ready to start exploring what it does using the darwinia development node. -To start the local Substrate node: +To start the local darwinia koi testnet node: 1. In the same terminal where you compiled your node, you can now start the node in development mode by running the following command: ```bash - ./target/release/darwinia --chain pangolin-dev --alice --tmp --rpc-external --rpc-cors all + ./target/release/darwinia --chain koi-dev --alice --tmp --rpc-external --rpc-cors all ``` - The darwinia command-line options specify how you want the running node to operate. In this case, the `--dev` option specifies that the node runs in development mode using the predefined `development` chain specification. By default, this option also deletes all active data—such as keys, the blockchain database, and networking information when you stop the node by pressing Control-c. Using the `--dev` option ensures that you have a clean working state any time you stop and restart the node. + The darwinia command-line options specify how you want the running node to operate. In this case, the `--dev` option specifies that the node runs in development mode using the predefined `development` chain specification. By default, this option also deletes all active data—such as keys, the blockchain database, and networking information when you stop the node by pressing `Ctrl-c`. Using the `--dev` option ensures that you have a clean working state any time you stop and restart the node. 2. Verify your node is up and running successfully by reviewing the output displayed in the terminal. The terminal should display output similar to this: ```bash - 2023-07-19 17:28:48 Darwinia - 2023-07-19 17:28:48 ✌️ version 6.3.4-93d2e8acc04 - 2023-07-19 17:28:48 ❤️ by Darwinia Network , 2018-2023 - 2023-07-19 17:28:48 📋 Chain specification: Pangolin2 Development - 2023-07-19 17:28:48 🏷 Node name: Alice - 2023-07-19 17:28:48 👤 Role: AUTHORITY - 2023-07-19 17:28:48 💾 Database: RocksDb at /tmp/substrate2cWt4x/chains/pangolin2-development/db/full - 2023-07-19 17:28:48 ⛓ Native runtime: Pangolin2-6340 (DarwiniaOfficialRust-0.tx0.au0) - 2023-07-19 17:28:49 [pallet::staking] assembling new collators for new session 0 at #0 - 2023-07-19 17:28:49 [pallet::staking] assembling new collators for new session 1 at #0 - 2023-07-19 17:28:49 Parachain id: Id(2105) - 2023-07-19 17:28:49 Parachain Account: 5Ec4AhNxga1JYLioRBNxfRnovheDELVbZTRSnKMgvSVPvNcN - 2023-07-19 17:28:49 Parachain genesis state: 0x0000000000000000000000000000000000000000000000000000000000000000002c5871dbc5c80fec32f7372f029e271039a29c91b5ad4b0d286277de0daa05b203170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c11131400 - 2023-07-19 17:28:49 Is collating: yes - 2023-07-19 17:28:49 [pallet::staking] assembling new collators for new session 0 at #0 - 2023-07-19 17:28:49 [pallet::staking] assembling new collators for new session 1 at #0 - 2023-07-19 17:28:50 🔨 Initializing Genesis block/state (state: 0xb1f3…1cda, header-hash: 0x040e…561a) - 2023-07-19 17:28:51 🏷 Local node identity is: 12D3KooWPPLzbofiQNjSiW6CmzPmQQkaWGvUuLXjHeDc5BiwgwXE - 2023-07-19 17:28:51 💻 Operating system: linux - 2023-07-19 17:28:51 💻 CPU architecture: x86_64 - 2023-07-19 17:28:51 💻 Target environment: gnu - 2023-07-19 17:28:51 💻 CPU: AMD Ryzen 7 5700G with Radeon Graphics - 2023-07-19 17:28:51 💻 CPU cores: 8 - 2023-07-19 17:28:51 💻 Memory: 63586MB - 2023-07-19 17:28:51 💻 Kernel: 5.19.0-46-generic - 2023-07-19 17:28:51 💻 Linux distribution: Ubuntu 22.04.1 LTS - 2023-07-19 17:28:51 💻 Virtual machine: no - 2023-07-19 17:28:51 📦 Highest known block at #0 - 2023-07-19 17:28:51 〽️ Prometheus exporter started at 127.0.0.1:9615 - 2023-07-19 17:28:51 Running JSON-RPC server: addr=127.0.0.1:9944, allowed origins=["http://localhost:*", "http://127.0.0.1:*", "https://localhost:*", "https://127.0.0.1:*", "https://polkadot.js.org"] - 2023-07-19 17:28:56 💤 Idle (0 peers), best: #0 (0x040e…561a), finalized #0 (0x040e…561a), ⬇ 0 ⬆ 0 + 2024-06-12 11:39:11 Darwinia + 2024-06-12 11:39:11 ✌️ version 6.6.3-2dadcd456ab + 2024-06-12 11:39:11 ❤️ by Darwinia Network , 2018-2024 + 2024-06-12 11:39:11 📋 Chain specification: Darwinia Koi D + 2024-06-12 11:39:11 🏷 Node name: Alice + 2024-06-12 11:39:11 👤 Role: AUTHORITY + 2024-06-12 11:39:11 💾 Database: RocksDb at /tmp/substrategTTTOz/chains/darwinia-koi-d/db/full + 2024-06-12 11:39:12 Parachain id: Id(2105) + 2024-06-12 11:39:12 Parachain Account: 5Ec4AhNxga1JYLioRBNxfRnovheDELVbZTRSnKMgvSVPvNcN + 2024-06-12 11:39:12 Is collating: yes + 2024-06-12 11:39:12 [pallet::staking] assembling new collators for new session 0 at #0 + 2024-06-12 11:39:12 [pallet::staking] assembling new collators for new session 1 at #0 + 2024-06-12 11:39:13 🔨 Initializing Genesis block/state (state: 0xed27…e560, header-hash: 0x1411…ebf9) + 2024-06-12 11:39:14 🏷 Local node identity is: 12D3KooWJMkgwqQuq71NepWoZBsjk3EpZAxHeDdyhUF99zu86rVH + 2024-06-12 11:39:14 💻 Operating system: linux + 2024-06-12 11:39:14 💻 CPU architecture: x86_64 + 2024-06-12 11:39:14 💻 Target environment: gnu + 2024-06-12 11:39:14 💻 CPU: AMD Ryzen 7 5700G with Radeon Graphics + 2024-06-12 11:39:14 💻 CPU cores: 8 + 2024-06-12 11:39:14 💻 Memory: 63578MB + 2024-06-12 11:39:14 💻 Kernel: 6.5.0-35-generic + 2024-06-12 11:39:14 💻 Linux distribution: Ubuntu 22.04.4 LTS + 2024-06-12 11:39:14 💻 Virtual machine: no + 2024-06-12 11:39:14 📦 Highest known block at #0 + 2024-06-12 11:39:14 〽️ Prometheus exporter started at 127.0.0.1:9615 + 2024-06-12 11:39:14 Running JSON-RPC server: addr=0.0.0.0:9944, allowed origins=["*"] + 2024-06-12 11:39:19 💤 Idle (0 peers), best: #0 (0x1411…ebf9), finalized #0 (0x1411…ebf9), ⬇ 0 ⬆ 0 + 2024-06-12 11:39:24 🙌 Starting consensus session on top of parent 0x14110d2746620059805fd18a6047003fcedf6c3f85642c968f7b398536abebf9 + 2024-06-12 11:39:24 🎁 Prepared block for proposing at 1 (0 ms) [hash: 0x7d3ce7da0e2850bc1cbba208f4c408ff5ed4732e3bb363409af5ba73df202cff; parent_hash: 0x1411…ebf9; extrinsics (2): [0xeb54…e7f6, 0x2934…47d2] + 2024-06-12 11:39:24 🔖 Pre-sealed block for proposal at 1. Hash now 0x8d4eca909342cac95a7d4e4fc40eae0de9a3b781706838aa67a91ee5eb17c4e4, previously 0x7d3ce7da0e2850bc1cbba208f4c408ff5ed4732e3bb363409af5ba73df202cff. + 2024-06-12 11:39:24 ✨ Imported #1 (0x8d4e…c4e4) + 2024-06-12 11:39:24 💤 Idle (0 peers), best: #1 (0x8d4e…c4e4), finalized #1 (0x8d4e…c4e4), ⬇ 0 ⬆ 0 + 2024-06-12 11:39:29 💤 Idle (0 peers), best: #1 (0x8d4e…c4e4), finalized #1 (0x8d4e…c4e4), ⬇ 0 ⬆ 0 + 2024-06-12 11:39:34 💤 Idle (0 peers), best: #1 (0x8d4e…c4e4), finalized #1 (0x8d4e…c4e4), ⬇ 0 ⬆ 0 + 2024-06-12 11:39:36 🙌 Starting consensus session on top of parent 0x8d4eca909342cac95a7d4e4fc40eae0de9a3b781706838aa67a91ee5eb17c4e4 + 2024-06-12 11:39:36 🎁 Prepared block for proposing at 2 (0 ms) [hash: 0x65b1fd87b1ba6aa247a232f9f240eba0b44f27b8b61689e60ab6fd7bdbfae65b; parent_hash: 0x8d4e…c4e4; extrinsics (2): [0x2611…0617, 0xe585…ad8d] + 2024-06-12 11:39:36 🔖 Pre-sealed block for proposal at 2. Hash now 0xa87b9c78352ce2e0f4ba2f2e10043b10b7cc49070ee6274199793b0c465263ae, previously 0x65b1fd87b1ba6aa247a232f9f240eba0b44f27b8b61689e60ab6fd7bdbfae65b. + 2024-06-12 11:39:36 ✨ Imported #2 (0xa87b…63ae) + .... ``` If the number after `finalized` is increasing, your blockchain is producing new blocks and reaching consensus about the state they describe. -3. Keep the terminal that displays the node output open to continue. +3. Keep the terminal displaying the node's output open to continue. You can use the `curl` command to check the block number and verify that the node is functioning correctly. -## Connected to the Polkadot App + ```bash + curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' -H "Content-Type: application/json" http://localhost:9944 | jq + ``` -Once the node is up and producing new blocks, you can connect to the Polkadot app to explore more advanced features, such as token transfer and more. + The output: + + ```json + { + "jsonrpc": "2.0", + "result": "0x1a", + "id": 1 + } + ``` -![evm-tutorial-dev-node-1](../../../images/evm-tutorial-dev-node-1.png) -![evm-tutorial-dev-node-2](../../../images/evm-tutorial-dev-node-2.png) \ No newline at end of file +Once the node is up and producing new blocks, you can connect to node to explore more advanced features, such as token transfer and contract development. \ No newline at end of file diff --git a/docs/build/getting-started/networks/koi.md b/docs/build/getting-started/networks/koi.md new file mode 100644 index 0000000..050449a --- /dev/null +++ b/docs/build/getting-started/networks/koi.md @@ -0,0 +1,33 @@ + +# Koi chain (Testnet) + +The Koi acts as the primary test network for Darwinia, officially maintained to ensure that new and innovative features are thoroughly tested before they are deployed to the main production network. + + + + + + + + + + + + + +## Network Information + +- Network Name: **Koi** +- Token Info: + - Symbol: **KRING** + - Decimal: **`18`** +- ChainId: **`701`** +- Block Explorers: + - [**Koi Scan**](https://koi-scan.darwinia.network/) +- HTTPS RPC Endpoints: + - **`https://koi-rpc.darwinia.network`** +- Websocket RPC Endpoints: + - **`wss://koi-rpc.darwinia.network`** +- EVM-Tracing Node Endpoints + - **`ws://g3.testnets.darwinia.network:9940`** \ No newline at end of file diff --git a/docs/build/getting-started/networks/overview.md b/docs/build/getting-started/networks/overview.md index e88ca5d..1da5822 100644 --- a/docs/build/getting-started/networks/overview.md +++ b/docs/build/getting-started/networks/overview.md @@ -6,5 +6,5 @@ The Darwinia ecosystem consists of four official long-term networks: | :-------------------------------: | :---------------------------------------------------------------------------------------------------------------------------------------------------------: | | **[Darwinia](./darwinia.md)** | EVM-compatible blockchain using the Substrate framework, featuring cross-chain capabilities. | | **[Crab](./crab.md)** | Canary network for Darwinia, similar to Kusama for Polkadot, designed to expect and handle chaos. | -| **[Pangolin](./pangolin.md)** | Primary test network for Darwinia, maintained to rigorously test new features before mainnet deployment. | +| **[Koi](./koi.md)** | Primary test network for Darwinia, maintained to rigorously test new features before mainnet deployment. | | **[Rollup](./rollup.md)** | Partnership with AltLayer to develop an advanced Ethereum Op Stack rollup testnet, supported by Avail DA, showcasing cutting-edge blockchain data services. | diff --git a/docs/build/getting-started/networks/pangolin.md b/docs/build/getting-started/networks/pangolin.md index 7595c06..dedf131 100644 --- a/docs/build/getting-started/networks/pangolin.md +++ b/docs/build/getting-started/networks/pangolin.md @@ -1,30 +1,4 @@ # Pangolin Chain -The Pangolin acts as the primary test network for Darwinia, officially maintained to ensure that new and innovative features are thoroughly tested before they are deployed to the main production network. - -## Connect Wallet Automatically - -[Connect](https://chainlist.org/chain/43){ .md-button .md-button--primary } - -## Faucet - -!!! note - 50 tokens per day for each address. - -To obtain the test token, go to the [faucet-testnet](https://discord.com/channels/456092011347443723/1115885903605411850) channel on Discord and send `/faucet pangolin address` to get test tokens. - -## Network Information - -- Network Name: **Pangolin2** -- Token Info: - - Symbol: **PRING** - - Decimal: **`18`** -- ChainId: **`43`** -- Block Explorers: - - [**Subscan**](https://pangolin.subscan.io) -- HTTPS RPC Endpoints: - - **`https://pangolin-rpc.darwinia.network`** -- Websocket RPC Endpoints: - - **`wss://pangolin-rpc.darwinia.network`** -- EVM-Tracing Node Endpoints - - **`ws://g3.testnets.darwinia.network:9940`** \ No newline at end of file +!!! warning + The Pangolin chain, which was previously the official test network for the Darwinia Network, has been replaced by the [Koi chain](../networks/koi.md). Therefore, please refer to the latest testnet information and guidance of the Koi chain for further information. diff --git a/docs/build/precompiles/overview.md b/docs/build/precompiles/overview.md index c07bbe2..9148dae 100644 --- a/docs/build/precompiles/overview.md +++ b/docs/build/precompiles/overview.md @@ -7,7 +7,7 @@ Darwinia strives to achieve compatibility with Ethereum, which includes being RP ## Precompiles In Darwinia Networks -In the comprehensive Darwinia Ecosystem, each network serves a distinct purpose, resulting in the installation of different precompiles on each network. It is possible that a particular network requires a unique precompile to execute specific actions, while it is unnecessary and would introduce unnecessary overhead in other networks. To address this, it is crucial to provide a precompile list for each network. If you are unfamiliar with the relationship between these networks, please refer to [this answer](../../learn/faq.md#what-distinguishes-the-darwinia-crab-and-pangolin-networks-from-each-other) for more information. +In the comprehensive Darwinia Ecosystem, each network serves a distinct purpose, resulting in the installation of different precompiles on each network. It is possible that a particular network requires a unique precompile to execute specific actions, while it is unnecessary and would introduce unnecessary overhead in other networks. To address this, it is crucial to provide a precompile list for each network. If you are unfamiliar with the relationship between these networks, please refer to [this answer](../../learn/faq.md#what-distinguishes-the-darwinia-crab-and-koi-networks-from-each-other) for more information. ### Darwinia Network @@ -21,7 +21,6 @@ In the comprehensive Darwinia Ecosystem, each network serves a distinct purpose, | `0x0000000000000000000000000000000000000404` | [PINK](../precompiles/pink.md) | | `0x0000000000000000000000000000000000000600` | [Deposit](../precompiles/deposit.md) | | `0x0000000000000000000000000000000000000601` | [Staking](../precompiles/staking.md) | -| `0x0000000000000000000000000000000000000800` | BLS12-381 | ### Crab Network @@ -34,9 +33,8 @@ In the comprehensive Darwinia Ecosystem, each network serves a distinct purpose, | `0x0000000000000000000000000000000000000600` | [Deposit](../precompiles/deposit.md) | | `0x0000000000000000000000000000000000000601` | [Staking](../precompiles/staking.md) | | `0x0000000000000000000000000000000000000602` | [Conviction Voting](../precompiles/conviction-voting.md) | -| `0x0000000000000000000000000000000000000800` | BLS12-381 | -### Pangolin Testnet +### Koi Testnet | Precompile Address | Name | | --- | --- | @@ -47,5 +45,4 @@ In the comprehensive Darwinia Ecosystem, each network serves a distinct purpose, | `0x0000000000000000000000000000000000000403` | [USDT](../precompiles/usdt.md) | | `0x0000000000000000000000000000000000000600` | [Deposit](../precompiles/deposit.md) | | `0x0000000000000000000000000000000000000601` | [Staking](../precompiles/staking.md) | -| `0x0000000000000000000000000000000000000602` | [Conviction Voting](../precompiles/conviction-voting.md) | -| `0x0000000000000000000000000000000000000800` | BLS12-381 | \ No newline at end of file +| `0x0000000000000000000000000000000000000602` | [Conviction Voting](../precompiles/conviction-voting.md) | \ No newline at end of file diff --git a/docs/community/guide/transfer-token.md b/docs/community/guide/transfer-token.md index 94da0f5..f41af79 100644 --- a/docs/community/guide/transfer-token.md +++ b/docs/community/guide/transfer-token.md @@ -1,30 +1,37 @@ +# Transfer Native Token + The first crucial step for a newcomer in the Web3 world is understanding how to operate a cryptocurrency wallet. This is a fundamental skill for interacting with blockchain-based systems, and we have designed a beginner-friendly tutorial to help you navigate this new terrain. ## Transfer Using MetaMask +!!! note + This tutorial based on the [Koi testnet](../../build/getting-started/networks/koi.md), it operations are also apply to other chains. + - Install the Wallet extension in your browser. - Import your existing accounts or create new ones. `Test Account 1` and `Test Account 2` are two test accounts in this tutorial. ![evm-tutorial-token-transfer-1](../../images/evm-tutorial-token-transfer-1.png) ![evm-tutorial-token-transfer-2](../../images/evm-tutorial-token-transfer-2.png) - -- Add the Darwinia network to your Wallet. Take the Pangolin network as an example, switch to the network as you wish. - + + +- At first, you need to switch from the Ethereum Mainnet to the Darwinia networks. For example, take the Koi network as an example, the network information page provides a convenient link to connect directly. + + ![evm-tutorial-token-transfer-3](../../images/evm-tutorial-token-transfer-3.png) Click the `Add To MetaMask` button. - + + ![evm-tutorial-token-transfer-4](../../images/evm-tutorial-token-transfer-4.png) -Check the network displayed and click the `Approve` button. Then , you can see that the network has switched from the Ethereum Mainnet to the Pangolin Testnet. +Check the network displayed and click the `Approve` button. Then , you can see that the network has switched from the Ethereum Mainnet to the Koi Testnet. ![evm-tutorial-token-transfer-5](../../images/evm-tutorial-token-transfer-5.png) ![evm-tutorial-token-transfer-6](../../images/evm-tutorial-token-transfer-6.png) -`Test Account 1` has 60 PRING and `Test Account 2` balance is 0. Let's transfer 20 PRING to the `Test Acccount 2` next. +`Test Account 1` has 20 KRING and `Test Account 2` balance is 0. Let's transfer 10 KRING to the `Test Acccount 2` next. - Transfer - ![evm-tutorial-token-transfer-7](../../images/evm-tutorial-token-transfer-7.png) Click `Send` button. @@ -35,7 +42,7 @@ Check the network displayed and click the `Approve` button. Then , you can see t ![evm-tutorial-token-transfer-9](../../images/evm-tutorial-token-transfer-9.png) - Confirm the source account and target account, then `Comfirm`. + Confirm the source account and target account, then click `Comfirm` button. ![evm-tutorial-token-transfer-10](../../images/evm-tutorial-token-transfer-10.png) - ![evm-tutorial-token-transfer-11](../../images/evm-tutorial-token-transfer-11.png) \ No newline at end of file + ![evm-tutorial-token-transfer-11](../../images/evm-tutorial-token-transfer-11.png)/ \ No newline at end of file diff --git a/docs/images/evm-tutorial-dev-node-1.png b/docs/images/evm-tutorial-dev-node-1.png deleted file mode 100644 index 0cb17b2..0000000 Binary files a/docs/images/evm-tutorial-dev-node-1.png and /dev/null differ diff --git a/docs/images/evm-tutorial-dev-node-2.png b/docs/images/evm-tutorial-dev-node-2.png deleted file mode 100644 index 0822070..0000000 Binary files a/docs/images/evm-tutorial-dev-node-2.png and /dev/null differ diff --git a/docs/images/evm-tutorial-token-transfer-1.png b/docs/images/evm-tutorial-token-transfer-1.png index 5087985..8e9fa70 100644 Binary files a/docs/images/evm-tutorial-token-transfer-1.png and b/docs/images/evm-tutorial-token-transfer-1.png differ diff --git a/docs/images/evm-tutorial-token-transfer-10.png b/docs/images/evm-tutorial-token-transfer-10.png index 7dcfa39..1341c36 100644 Binary files a/docs/images/evm-tutorial-token-transfer-10.png and b/docs/images/evm-tutorial-token-transfer-10.png differ diff --git a/docs/images/evm-tutorial-token-transfer-11.png b/docs/images/evm-tutorial-token-transfer-11.png index 5e6c31d..def23f0 100644 Binary files a/docs/images/evm-tutorial-token-transfer-11.png and b/docs/images/evm-tutorial-token-transfer-11.png differ diff --git a/docs/images/evm-tutorial-token-transfer-2.png b/docs/images/evm-tutorial-token-transfer-2.png index 12df8d3..3b1d289 100644 Binary files a/docs/images/evm-tutorial-token-transfer-2.png and b/docs/images/evm-tutorial-token-transfer-2.png differ diff --git a/docs/images/evm-tutorial-token-transfer-5.png b/docs/images/evm-tutorial-token-transfer-5.png index 38c86f8..e24a0aa 100644 Binary files a/docs/images/evm-tutorial-token-transfer-5.png and b/docs/images/evm-tutorial-token-transfer-5.png differ diff --git a/docs/images/evm-tutorial-token-transfer-6.png b/docs/images/evm-tutorial-token-transfer-6.png index 091c1db..2e89c54 100644 Binary files a/docs/images/evm-tutorial-token-transfer-6.png and b/docs/images/evm-tutorial-token-transfer-6.png differ diff --git a/docs/images/evm-tutorial-token-transfer-7.png b/docs/images/evm-tutorial-token-transfer-7.png index 10ea3ba..e9aadca 100644 Binary files a/docs/images/evm-tutorial-token-transfer-7.png and b/docs/images/evm-tutorial-token-transfer-7.png differ diff --git a/docs/images/evm-tutorial-token-transfer-8.png b/docs/images/evm-tutorial-token-transfer-8.png index fe094af..24841a9 100644 Binary files a/docs/images/evm-tutorial-token-transfer-8.png and b/docs/images/evm-tutorial-token-transfer-8.png differ diff --git a/docs/images/evm-tutorial-token-transfer-9.png b/docs/images/evm-tutorial-token-transfer-9.png index 943a326..fba42fc 100644 Binary files a/docs/images/evm-tutorial-token-transfer-9.png and b/docs/images/evm-tutorial-token-transfer-9.png differ diff --git a/docs/learn/ethereum-compatibility/evm-tracing.md b/docs/learn/ethereum-compatibility/evm-tracing.md index 057e51b..4eed107 100644 --- a/docs/learn/ethereum-compatibility/evm-tracing.md +++ b/docs/learn/ethereum-compatibility/evm-tracing.md @@ -20,4 +20,4 @@ It is worth noting that the EVM tracing features in Darwinia are specifically pr The EVM tracing node in Darwinia has its own distinct binary and requires a separate setup command compared to the production node. For more detailed information on running an EVM tracing node, please refer to the [Run Evm Trace Node](../../node-operators/run-evm-tracing-node.md). -To utilize the EVM tracing features in Darwinia, users should send requests to the dedicated node's RPC endpoint, which can be found in the corresponding [Network Info](../../build/getting-started/networks/pangolin.md#network-info). This ensures that the tracing capabilities are utilized effectively and efficiently within the Darwinia ecosystem. \ No newline at end of file +To utilize the EVM tracing features in Darwinia, users should send requests to the dedicated node's RPC endpoint, which can be found in the corresponding [Network Info](../../build/getting-started/networks/koi.md#network-info). This ensures that the tracing capabilities are utilized effectively and efficiently within the Darwinia ecosystem. \ No newline at end of file diff --git a/docs/learn/ethereum-compatibility/gas.md b/docs/learn/ethereum-compatibility/gas.md index 58a6acb..77ef208 100644 --- a/docs/learn/ethereum-compatibility/gas.md +++ b/docs/learn/ethereum-compatibility/gas.md @@ -12,7 +12,7 @@ In Ethereum, the number of pending transactions that can be included in the next Similarly, the Darwinia platform also has a block gas limit that determines the maximum amount of gas that can be consumed in a block. However, the specific block gas limit in Darwinia may be different from that of Ethereum. -| Network | Darwinia | Crab | Pangolin Testnet | +| Network | Darwinia | Crab | Koi Testnet | | --- | --- | --- | --- | | BlockGasLimit | 20 million gas | 20 million gas | 20 million gas | diff --git a/docs/learn/faq.md b/docs/learn/faq.md index c0fa36e..6a0a92c 100644 --- a/docs/learn/faq.md +++ b/docs/learn/faq.md @@ -2,7 +2,7 @@ Welcome to our Frequently Asked Questions (FAQs) section This page is designed to provide clear and concise answers to common questions we receive regarding the Darwinia networks. Our goal is to make navigating the complexities of the Darwinia as straightforward as possible. If you have any further questions not covered here, feel free to reach out to us directly. We're always here to help! -## What distinguishes the Darwinia, Crab and Pangolin networks from each other? +## What distinguishes the Darwinia, Crab and Koi networks from each other? See [Chains](../build/getting-started/networks/overview.md) diff --git a/docs/node-operators/run-evm-tracing-node.md b/docs/node-operators/run-evm-tracing-node.md index a400d8e..662a2ed 100644 --- a/docs/node-operators/run-evm-tracing-node.md +++ b/docs/node-operators/run-evm-tracing-node.md @@ -22,27 +22,31 @@ As you may be aware, Darwinia chains are EVM compatible, which means that the RP 2. Download the precompiled tracing binary - As of the time of writing this doc (2023-10-16), the latest version of the Pangolin Chain is `v6.4.0`. Please ensure that you check for [the latest version](https://github.com/darwinia-network/darwinia/releases) when running your own node. - - ***Please be aware that there are two types of binaries available on the release page. Select the one that starts with `darwinia-tracing-xxx`.*** + As of the time of writing this doc (2024-06-13), the latest version of the Koi Chain is `v6.6.3`. Please ensure that you check for [the latest version](https://github.com/darwinia-network/darwinia/releases) when running your own node. + + !!! warn + Please be aware that there are two types of binaries available on the release page. Select the one that starts with `darwinia-tracing-xxx`. ```bash - wget https://github.com/darwinia-network/darwinia/releases/download/pango-6405/darwinia-tracing-x86_64-linux-gnu.tar.zst + wget https://github.com/darwinia-network/darwinia/releases/download/v6.6.3/darwinia-tracing-x86_64-linux-gnu.tar.zst tar xvf darwinia-tracing-x86_64-linux-gnu.tar.zst ``` 3. Download the overridden wasms - Once you have downloaded the tracing binary, you will need to download the overridden wasms before setting up your EVM tracing node. The overridden wasm files can be found in a repository maintained by the Darwinia core team. To do this, please run the following command: + Once you have downloaded the tracing binary, you will need to download the overridden wasm files before setting up your EVM tracing node. The overridden wasm files can be found in a repository maintained by the Darwinia core team. To do this, please run the following command: ```bash - git clone https://github.com/darwinia-network/wasm-runtime-overrides.git - cd wasm-runtime-overrides/ - git checkout origin/pangolin - cp -r pangolin/ ../run-evm-tracing-node/overridden-runtimes/ + git clone https://github.com/darwinia-network/darwinia-release.git + cd darwinia-release + + # Check out the corresponding network branch + git checkout origin/darwinia + # Copy the wasm runtime files to the temporary workaround override runtime location + cp wasm/evm-tracing/* ../run-evm-tracing-node/overridden-runtimes/ ``` - The `wasm-runtime-overrides` repository has four branches, each corresponding to one of the four Darwinia chains. You will need to switch to the branch that corresponds to your desired network and copy the `wasm` directory to your temporary workaround location. In this tutorial, we will use the `pangolin` branch. + The `wasm-runtime-overrides` repository has five branches, each corresponding to one of the four Darwinia chains. You will need to switch to the branch that corresponds to your desired network and copy the `wasm` directory to your temporary workaround location. In this tutorial, we will use the `darwinia` branch. ### Start The EVM Tracing Node @@ -51,94 +55,109 @@ As you may be aware, Darwinia chains are EVM compatible, which means that the RP ```bash ./darwinia \ - --chain=pangolin \ - --base-path=/data/pangolin-trace-node\ + --chain=darwinia \ + --base-path=/data/darwinia-trace-node\ --state-pruning=archive \ --blocks-pruning=archive \ - --execution=wasm \ --rpc-external \ --rpc-cors=all \ --tracing-api=debug,trace \ --runtime-cache-size=64 \ --frontier-backend-type=sql \ - --wasm-runtime-overrides=overridden-runtimes/pangolin/wasms + --wasm-runtime-overrides=overridden-runtimes \ -- \ - --chain=rococo \ + --chain polkadot \ --sync=warp ``` - Please make sure to update the `--chain`, `--base-path`, and `--wasm-runtime-overrides` parameters according to the network you wish to set up. Additionally, ensure that the `--execution=wasm` flag is enabled. + Please make sure to update the `--chain`, `--base-path`, and `--wasm-runtime-overrides` parameters according to the network you wish to set up. 2. Verify your node is up and running successfully by reviewing the output displayed in the terminal. The terminal should display output similar to this: ```bash - Loading genesis from `/home/bear/coding/rust-space/test-docs/run-evm-tracing-node/pangolin2.json` - 2023-10-16 16:37:41 Darwinia - 2023-10-16 16:37:41 ✌️ version 6.4.0-7e4d35a1c28 - 2023-10-16 16:37:41 ❤️ by Darwinia Network , 2018-2023 - 2023-10-16 16:37:41 📋 Chain specification: Pangolin2 - 2023-10-16 16:37:41 🏷 Node name: profuse-honey-5725 - 2023-10-16 16:37:41 👤 Role: FULL - 2023-10-16 16:37:41 💾 Database: RocksDb at /data/pangolin-trace-node/chains/pangolin2/db/full - 2023-10-16 16:37:41 ⛓ Native runtime: Pangolin2-6405 (DarwiniaOfficialRust-0.tx0.au0) - 2023-10-16 16:37:42 Parachain id: Id(2105) - 2023-10-16 16:37:42 Parachain Account: 5Ec4AhNxga1JYLioRBNxfRnovheDELVbZTRSnKMgvSVPvNcN - 2023-10-16 16:37:42 Parachain genesis state: 0x000000000000000000000000000000000000000000000000000000000000000000d353645e3503ca0ebe7319eee9bd70821acfa54d4161386990329b4a4f9813be03170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c11131400 - 2023-10-16 16:37:42 Is collating: no - 2023-10-16 16:37:43 [Parachain] Found wasm override. version=Pangolin2-6320 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6320-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:44 [Parachain] Found wasm override. version=Pangolin2-6401 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6401-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:45 [Parachain] Found wasm override. version=Pangolin2-6300 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6300-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:46 [Parachain] Found wasm override. version=Pangolin2-6402 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6402-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:46 [Parachain] Found wasm override. version=Pangolin2-6403 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6403-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:47 [Parachain] Found wasm override. version=Pangolin2-6405 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6405-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:48 [Parachain] Found wasm override. version=Pangolin2-6340 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6340-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:49 [Parachain] Found wasm override. version=Pangolin2-6400 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6400-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:49 [Parachain] Found wasm override. version=Pangolin2-6310 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6310-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:50 [Parachain] Found wasm override. version=Pangolin2-6404 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/pangolin/wasms/pangolin-pango-6404-tracing-runtime.compact.compressed.wasm - 2023-10-16 16:37:51 [Parachain] 🔨 Initializing Genesis block/state (state: 0xd353…13be, header-hash: 0xb067…6b70) - 2023-10-16 16:37:52 [Parachain] 📑 Connection configuration: SqliteBackendConfig { path: "/data/pangolin-trace-node/chains/pangolin2/sql/frontier.db3", create_if_missing: true, thread_count: 4, cache_size: 209715200 } - 2023-10-16 16:37:52 [Relaychain] 🔨 Initializing Genesis block/state (state: 0x8ad9…f0da, header-hash: 0x6408…063e) - 2023-10-16 16:37:52 [Relaychain] 👴 Loading GRANDPA authority set from genesis on what appears to be first startup. - 2023-10-16 16:37:53 [Relaychain] 👶 Creating empty BABE epoch changes on what appears to be first startup. - 2023-10-16 16:37:53 [Relaychain] 🏷 Local node identity is: 12D3KooWKD6yACpTYygZGgmaBgLgbfWLL7GEfGXqBbdjgxDyd2PM - 2023-10-16 16:37:53 [Relaychain] 💻 Operating system: linux - 2023-10-16 16:37:53 [Relaychain] 💻 CPU architecture: x86_64 - 2023-10-16 16:37:53 [Relaychain] 💻 Target environment: gnu - 2023-10-16 16:37:53 [Relaychain] 💻 CPU: AMD Ryzen 7 5700G with Radeon Graphics - 2023-10-16 16:37:53 [Relaychain] 💻 CPU cores: 8 - 2023-10-16 16:37:53 [Relaychain] 💻 Memory: 63578MB - 2023-10-16 16:37:53 [Relaychain] 💻 Kernel: 6.2.0-33-generic - 2023-10-16 16:37:53 [Relaychain] 💻 Linux distribution: Ubuntu 22.04.3 LTS - 2023-10-16 16:37:53 [Relaychain] 💻 Virtual machine: no - 2023-10-16 16:37:53 [Relaychain] 📦 Highest known block at #0 - 2023-10-16 16:37:53 [Relaychain] Running JSON-RPC server: addr=127.0.0.1:9945, allowed origins=["http://localhost:*", "http://127.0.0.1:*", "https://localhost:*", "https://127.0.0.1:*", "https://polkadot.js.org"] - 2023-10-16 16:37:53 [Relaychain] 〽️ Prometheus exporter started at 127.0.0.1:9616 - 2023-10-16 16:37:53 [Relaychain] 🏁 CPU score: 1.34 GiBs - 2023-10-16 16:37:53 [Relaychain] 🏁 Memory score: 15.73 GiBs - 2023-10-16 16:37:53 [Relaychain] 🏁 Disk score (seq. writes): 1.61 GiBs - 2023-10-16 16:37:53 [Relaychain] 🏁 Disk score (rand. writes): 742.59 MiBs - 2023-10-16 16:37:53 [Relaychain] Starting with an empty approval vote DB. - 2023-10-16 16:37:53 [Parachain] 🏷 Local node identity is: 12D3KooWMmLGUqtaHW174JrE7UjeVagpKsCsBXDZfCyoQcvvHLjH - 2023-10-16 16:37:53 Import genesis - 2023-10-16 16:37:53 [Parachain] 💻 Operating system: linux - 2023-10-16 16:37:53 [Parachain] 💻 CPU architecture: x86_64 - 2023-10-16 16:37:53 [Parachain] 💻 Target environment: gnu - 2023-10-16 16:37:53 [Parachain] 💻 CPU: AMD Ryzen 7 5700G with Radeon Graphics - 2023-10-16 16:37:53 [Parachain] 💻 CPU cores: 8 - 2023-10-16 16:37:53 [Parachain] 💻 Memory: 63578MB - 2023-10-16 16:37:53 [Parachain] 💻 Kernel: 6.2.0-33-generic - 2023-10-16 16:37:53 [Parachain] 💻 Linux distribution: Ubuntu 22.04.3 LTS - 2023-10-16 16:37:53 [Parachain] 💻 Virtual machine: no - 2023-10-16 16:37:53 [Parachain] 📦 Highest known block at #0 - 2023-10-16 16:37:53 [Parachain] 〽️ Prometheus exporter started at 127.0.0.1:9615 - 2023-10-16 16:37:53 [Parachain] Running JSON-RPC server: addr=0.0.0.0:9944, allowed origins=["*"] - 2023-10-16 16:37:53 [Parachain] 🏁 CPU score: 1.34 GiBs - 2023-10-16 16:37:53 [Parachain] 🏁 Memory score: 15.73 GiBs - 2023-10-16 16:37:53 [Parachain] 🏁 Disk score (seq. writes): 1.61 GiBs - 2023-10-16 16:37:53 [Parachain] 🏁 Disk score (rand. writes): 742.59 MiBs - 2023-10-16 16:37:54 [Parachain] 🔍 Discovered new external address for our node: /ip4/60.176.103.239/tcp/30333/ws/p2p/12D3KooWMmLGUqtaHW174JrE7UjeVagpKsCsBXDZfCyoQcvvHLjH - 2023-10-16 16:37:54 [Parachain] [pallet::message-gadget] invalid raw message root: [], return. - 2023-10-16 16:37:54 [Parachain] [pallet::message-gadget] invalid raw message root: [], return. - 2023-10-16 16:37:54 [Parachain] [pallet::message-gadget] invalid raw message root: [], return. - 2023-10-16 16:37:54 [Parachain] [pallet::message-gadget] invalid raw message root: [], return. + 2024-06-13 14:22:45 Darwinia + 2024-06-13 14:22:45 ✌️ version 6.6.3-1eb277e94b0 + 2024-06-13 14:22:45 ❤️ by Darwinia Network , 2018-2024 + 2024-06-13 14:22:45 📋 Chain specification: Darwinia2 + 2024-06-13 14:22:45 🏷 Node name: grumpy-kittens-1092 + 2024-06-13 14:22:45 👤 Role: FULL + 2024-06-13 14:22:45 💾 Database: RocksDb at /data/darwinia-trace-node/chains/darwinia2/db/full + 2024-06-13 14:22:47 Parachain id: Id(2046) + 2024-06-13 14:22:47 Parachain Account: 2qiDxtPxw1BsbLwujRn5Q2352CaDPY8UMZi4iHBfPXo6FgHd + 2024-06-13 14:22:47 Is collating: no + 2024-06-13 14:22:48 [Parachain] Found wasm override. version=Darwinia2-6610 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.6.1-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:49 [Parachain] Found wasm override. version=Darwinia2-6400 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.4.0-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:49 [Parachain] Found wasm override. version=Darwinia2-6511 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.5.1-1-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:50 [Parachain] Found wasm override. version=Darwinia2-6401 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.4.0-1-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:51 [Parachain] Found wasm override. version=Darwinia2-6402 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.4.0-2-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:52 [Parachain] Found wasm override. version=Darwinia2-6403 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.4.0-3-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:53 [Parachain] Found wasm override. version=Darwinia2-6300 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.3.0-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:54 [Parachain] Found wasm override. version=Darwinia2-6620 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.6.2-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:55 [Parachain] Found wasm override. version=Darwinia2-6501 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.5.0-1-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:55 [Parachain] Found wasm override. version=Darwinia2-6404 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.4.0-4-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:56 [Parachain] Found wasm override. version=Darwinia2-6600 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.6.0-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:57 [Parachain] Found wasm override. version=Darwinia2-6500 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.5.0-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:58 [Parachain] Found wasm override. version=Darwinia2-6510 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.5.1-evm-tracing.compact.compressed.wasm + 2024-06-13 14:22:59 [Parachain] Found wasm override. version=Darwinia2-6340 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.3.4-evm-tracing.compact.compressed.wasm + 2024-06-13 14:23:00 [Parachain] Found wasm override. version=Darwinia2-6630 (DarwiniaOfficialRust-0.tx0.au0) file=overridden-runtimes/darwinia-v6.6.3-evm-tracing.compact.compressed.wasm + 2024-06-13 14:23:01 [Parachain] 🔨 Initializing Genesis block/state (state: 0xde42…7b71, header-hash: 0xf0b8…570e) + 2024-06-13 14:23:02 [Parachain] 📑 Connection configuration: SqliteBackendConfig { path: "/data/darwinia-trace-node/chains/darwinia2/sql/frontier.db3", create_if_missing: true, thread_count: 4, cache_size: 209715200 } + 2024-06-13 14:23:02 [Relaychain] 🔨 Initializing Genesis block/state (state: 0x29d0…4e17, header-hash: 0x91b1…90c3) + 2024-06-13 14:23:02 [Relaychain] 👴 Loading GRANDPA authority set from genesis on what appears to be first startup. + 2024-06-13 14:23:02 [Relaychain] 👶 Creating empty BABE epoch changes on what appears to be first startup. + 2024-06-13 14:23:02 [Relaychain] 🏷 Local node identity is: 12D3KooWA9n7SitbhPdV8qFYrNEApMeBS5mGQhV972krg9vc7G6Y + 2024-06-13 14:23:03 [Relaychain] 💻 Operating system: linux + 2024-06-13 14:23:03 [Relaychain] 💻 CPU architecture: x86_64 + 2024-06-13 14:23:03 [Relaychain] 💻 Target environment: gnu + 2024-06-13 14:23:03 [Relaychain] 💻 CPU: AMD Ryzen 7 5700G with Radeon Graphics + 2024-06-13 14:23:03 [Relaychain] 💻 CPU cores: 8 + 2024-06-13 14:23:03 [Relaychain] 💻 Memory: 63578MB + 2024-06-13 14:23:03 [Relaychain] 💻 Kernel: 6.5.0-35-generic + 2024-06-13 14:23:03 [Relaychain] 💻 Linux distribution: Ubuntu 22.04.4 LTS + 2024-06-13 14:23:03 [Relaychain] 💻 Virtual machine: no + 2024-06-13 14:23:03 [Relaychain] 📦 Highest known block at #0 + 2024-06-13 14:23:03 [Relaychain] 〽️ Prometheus exporter started at 127.0.0.1:9616 + 2024-06-13 14:23:03 [Relaychain] Running JSON-RPC server: addr=127.0.0.1:9945, allowed origins=["http://localhost:*", "http://127.0.0.1:*", "https://localhost:*", "https://127.0.0.1:*", "https://polkadot.js.org"] + 2024-06-13 14:23:03 [Relaychain] 🏁 CPU score: 1.23 GiBs + 2024-06-13 14:23:03 [Relaychain] 🏁 Memory score: 14.63 GiBs + 2024-06-13 14:23:03 [Relaychain] 🏁 Disk score (seq. writes): 1.47 GiBs + 2024-06-13 14:23:03 [Relaychain] 🏁 Disk score (rand. writes): 552.04 MiBs + 2024-06-13 14:23:03 [Relaychain] Starting with an empty approval vote DB. + 2024-06-13 14:23:03 [Parachain] 🏷 Local node identity is: 12D3KooWA6UpwpZ9YSkR3k9VkqPtvf9z7dERfEooB4P81vDPAvWu + 2024-06-13 14:23:03 Import genesis + 2024-06-13 14:23:03 [Parachain] 💻 Operating system: linux + 2024-06-13 14:23:03 [Parachain] 💻 CPU architecture: x86_64 + 2024-06-13 14:23:03 [Parachain] 💻 Target environment: gnu + 2024-06-13 14:23:03 [Parachain] 💻 CPU: AMD Ryzen 7 5700G with Radeon Graphics + 2024-06-13 14:23:03 [Parachain] 💻 CPU cores: 8 + 2024-06-13 14:23:03 [Parachain] 💻 Memory: 63578MB + 2024-06-13 14:23:03 [Parachain] 💻 Kernel: 6.5.0-35-generic + 2024-06-13 14:23:03 [Parachain] 💻 Linux distribution: Ubuntu 22.04.4 LTS + 2024-06-13 14:23:03 [Parachain] 💻 Virtual machine: no + 2024-06-13 14:23:03 [Parachain] 📦 Highest known block at #0 + 2024-06-13 14:23:03 [Parachain] 〽️ Prometheus exporter started at 127.0.0.1:9615 + 2024-06-13 14:23:03 [Parachain] Running JSON-RPC server: addr=0.0.0.0:9944, allowed origins=["*"] + 2024-06-13 14:23:03 [Parachain] 🏁 CPU score: 1.23 GiBs + 2024-06-13 14:23:03 [Parachain] 🏁 Memory score: 14.63 GiBs + 2024-06-13 14:23:03 [Parachain] 🏁 Disk score (seq. writes): 1.47 GiBs + 2024-06-13 14:23:03 [Parachain] 🏁 Disk score (rand. writes): 552.04 MiBs + 2024-06-13 14:23:03 [Relaychain] discovered: 12D3KooWA6UpwpZ9YSkR3k9VkqPtvf9z7dERfEooB4P81vDPAvWu /ip4/192.168.31.52/tcp/30333/ws + 2024-06-13 14:23:03 [Parachain] discovered: 12D3KooWA9n7SitbhPdV8qFYrNEApMeBS5mGQhV972krg9vc7G6Y /ip4/192.168.31.52/tcp/30334/ws + 2024-06-13 14:23:03 [Relaychain] discovered: 12D3KooWA6UpwpZ9YSkR3k9VkqPtvf9z7dERfEooB4P81vDPAvWu /ip4/172.18.0.1/tcp/30333/ws + 2024-06-13 14:23:03 [Parachain] discovered: 12D3KooWA9n7SitbhPdV8qFYrNEApMeBS5mGQhV972krg9vc7G6Y /ip4/172.17.0.1/tcp/30334/ws + 2024-06-13 14:23:03 [Parachain] discovered: 12D3KooWA9n7SitbhPdV8qFYrNEApMeBS5mGQhV972krg9vc7G6Y /ip4/172.18.0.1/tcp/30334/ws + 2024-06-13 14:23:03 [Relaychain] discovered: 12D3KooWA6UpwpZ9YSkR3k9VkqPtvf9z7dERfEooB4P81vDPAvWu /ip4/172.17.0.1/tcp/30333/ws + 2024-06-13 14:23:03 [Relaychain] Sending fatal alert BadCertificate + 2024-06-13 14:23:04 [Relaychain] 🔍 Discovered new external address for our node: /ip4/183.159.52.240/tcp/30334/ws/p2p/12D3KooWA9n7SitbhPdV8qFYrNEApMeBS5mGQhV972krg9vc7G6Y + 2024-06-13 14:23:05 [Relaychain] Sending fatal alert BadCertificate + 2024-06-13 14:23:08 [Relaychain] ⏩ Warping, Waiting for 3 peers to be connected, 0.00 Mib (0 peers), best: #0 (0x91b1…90c3), finalized #0 (0x91b1…90c3), ⬇ 19.9kiB/s ⬆ 12.6kiB/s + 2024-06-13 14:23:08 [Parachain] 💤 Idle (0 peers), best: #0 (0xf0b8…570e), finalized #0 (0xf0b8…570e), ⬇ 0 ⬆ 0 + 2024-06-13 14:23:08 [Relaychain] Sending fatal alert BadCertificate + 2024-06-13 14:23:13 [Relaychain] ⏩ Warping, Downloading finality proofs, 0.00 Mib (3 peers), best: #0 (0x91b1…90c3), finalized #0 (0x91b1…90c3), ⬇ 77.7kiB/s ⬆ 37.2kiB/s + 2024-06-13 14:23:13 encountered unexpected or invalid data: [Metadata] No logs found for hash 0xf0b8924b12e8108550d28870bc03f7b45a947e1b2b9abf81bfb0b89ecb60570e + 2024-06-13 14:23:13 no rows returned by a query that expected to return at least one row + 2024-06-13 14:23:13 [Parachain] 💤 Idle (0 peers), best: #0 (0xf0b8…570e), finalized #0 (0xf0b8…570e), ⬇ 0 ⬆ 0 + 2024-06-13 14:23:18 [Relaychain] ⏩ Warping, Downloading finality proofs, 7.98 Mib (4 peers), best: #0 (0x91b1…90c3), finalized #0 (0x91b1…90c3), ⬇ 1.6MiB/s ⬆ 18.2kiB/s + 2024-06-13 14:23:18 [Parachain] 💤 Idle (0 peers), best: #0 (0xf0b8…570e), finalized #0 (0xf0b8…570e), ⬇ 0 ⬆ 0 + 2024-06-13 14:23:18 [Relaychain] Sending fatal alert BadCertificate ``` \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 04864c5..c96f07d 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -369,14 +369,15 @@ nav: - Overview: "build/getting-started/networks/overview.md" - Darwinia: "build/getting-started/networks/darwinia.md" - Crab: "build/getting-started/networks/crab.md" - - Pangolin: "build/getting-started/networks/pangolin.md" + - Koi (Testnet): "build/getting-started/networks/koi.md" - Rollup: "build/getting-started/networks/rollup.md" + - Pangolin: "build/getting-started/networks/pangolin.md" - Development Node: "build/getting-started/networks/dev-node.md" - Wallets: "build/getting-started/wallets.md" - Development Tools: - Ethereum Tools: - - Interacting with Web3.js: "build/ethereum-tools/interact-with-web3js.md" - - Interacting with Ethers.js: "build/ethereum-tools/interact-with-ethersjs.md" + - Using Web3.js: "build/ethereum-tools/interact-with-web3js.md" + - Using Ethers.js: "build/ethereum-tools/interact-with-ethersjs.md" - Using Hardhat: "build/ethereum-tools/interact-with-hardhat.md" - Using Foundry: "build/ethereum-tools/interact-with-foundry.md" - Verifying Smart Contracts: "build/ethereum-tools/verify-contract.md"