diff --git a/Cargo.toml b/Cargo.toml index 7679133..c8ba99f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,14 @@ [package] name = "wvm-archiver" -version = "0.1.0" +version = "0.1.1" edition = "2021" +description = "EL data pipeline for WVM testnet v0" +authors = ["charmful0x "] +license = "MIT" +repository = "https://github.com/weavevm/wvm-archiver" +readme = "README.md" +documentation = "https://docs.wvm.dev" +keywords = ["wvm", "indexer", "arweave"] [dependencies] anyhow = "1.0.86" diff --git a/README.md b/README.md index f21de28..7aa1416 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,15 @@ ## About WeaveVM Archiver is an ETL archive pipeline for EVM networks. It's the simplest way to interface with WeaveVM's permanent data feature without smart contract redeployments. +### WeaveVM Archiver Usage + +WeaveVM Archiver is the ideal choice if you want to: + +- Interface with WeaveVM's permanent data settlement and high-throughput DA +- Maintain your current data settlement or DA architecture +- Have an interface with WeaveVM without rollup smart contract redeployments +- Avoid codebase refactoring + ## Build & Run ```bash diff --git a/networks/metis.json b/networks/metis.json index dc96237..6230195 100644 --- a/networks/metis.json +++ b/networks/metis.json @@ -1,7 +1,7 @@ { "name": "Metis", "network_chain_id": 1088, - "wvm_chain_id": 9999777, + "wvm_chain_id": 9496, "network_rpc": "https://andromeda.metis.io/?owner=1088", "wvm_rpc": "https://testnet-rpc.wvm.dev", "block_time": 9, diff --git a/networks/optimism.json b/networks/optimism.json index f7d0475..7d2c0fb 100644 --- a/networks/optimism.json +++ b/networks/optimism.json @@ -1,7 +1,7 @@ { "name": "Optimism", "network_chain_id": 10, - "wvm_chain_id": 9999777, + "wvm_chain_id": 9496, "network_rpc": "https://mainnet.optimism.io", "wvm_rpc": "https://testnet-rpc.wvm.dev", "block_time": 2, diff --git a/src/utils/schema.rs b/src/utils/schema.rs index 1463c73..7ae7d92 100644 --- a/src/utils/schema.rs +++ b/src/utils/schema.rs @@ -57,26 +57,26 @@ impl Network { pub struct Block { pub base_fee_per_gas: Option, // "baseFeePerGas" pub blob_gas_used: Option, // "blobGasUsed" - pub difficulty: String, // "difficulty" + pub difficulty: Option, // "difficulty" pub excess_blob_gas: Option, // "excessBlobGas" - pub extra_data: String, // "extraData" - pub gas_limit: String, // "gasLimit" - pub gas_used: String, // "gasUsed" - pub hash: String, // "hash" - pub logs_bloom: String, // "logsBloom" - pub miner: String, // "miner" - pub mix_hash: String, // "mixHash" - pub nonce: String, // "nonce" - pub number: String, // "number" + pub extra_data: Option, // "extraData" + pub gas_limit: Option, // "gasLimit" + pub gas_used: Option, // "gasUsed" + pub hash: Option, // "hash" + pub logs_bloom: Option, // "logsBloom" + pub miner: Option, // "miner" + pub mix_hash: Option, // "mixHash" + pub nonce: Option, // "nonce" + pub number: Option, // "number" pub parent_beacon_block_root: Option, // "parentBeaconBlockRoot" - pub parent_hash: String, // "parentHash" - pub receipts_root: String, // "receiptsRoot" + pub parent_hash: Option, // "parentHash" + pub receipts_root: Option, // "receiptsRoot" pub seal_fields: Vec, // "sealFields" as an array of strings - pub sha3_uncles: String, // "sha3Uncles" - pub size: String, // "size" - pub state_root: String, // "stateRoot" - pub timestamp: String, // "timestamp" - pub total_difficulty: String, // "totalDifficulty" + pub sha3_uncles: Option, // "sha3Uncles" + pub size: Option, // "size" + pub state_root: Option, // "stateRoot" + pub timestamp: Option, // "timestamp" + pub total_difficulty: Option, // "totalDifficulty" pub transactions: Vec, // "transactions" as an array of strings }