From 9a9a385b47b5c75874eb2f392b2cebedf286cf87 Mon Sep 17 00:00:00 2001 From: purestaketdb <45097828+purestaketdb@users.noreply.github.com> Date: Tue, 20 Jul 2021 15:12:46 -0400 Subject: [PATCH 01/41] Moonriver update, add Moonshadow (#345) --- _data/chains/eip155-1285.json | 9 ++++++--- _data/chains/eip155-1288.json | 16 ++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 _data/chains/eip155-1288.json diff --git a/_data/chains/eip155-1285.json b/_data/chains/eip155-1285.json index 0c2cb1ff..9312f880 100644 --- a/_data/chains/eip155-1285.json +++ b/_data/chains/eip155-1285.json @@ -2,11 +2,14 @@ "name": "Moonriver Kusama", "chain": "MOON", "network": "moonriver", - "rpc": [], + "rpc": [ + "https://rpc.moonriver.moonbeam.network", + "wss://wss.moonriver.moonbeam.network" + ], "faucets": [], "nativeCurrency": { - "name": "River", - "symbol": "RIVER", + "name": "Moonriver", + "symbol": "MOVR", "decimals": 18 }, "infoURL": "https://moonbeam.network/networks/moonriver/", diff --git a/_data/chains/eip155-1288.json b/_data/chains/eip155-1288.json new file mode 100644 index 00000000..e49cf227 --- /dev/null +++ b/_data/chains/eip155-1288.json @@ -0,0 +1,16 @@ +{ + "name": "Moonshadow Westend", + "chain": "MOON", + "network": "moonshadow", + "rpc": [], + "faucets": [], + "nativeCurrency": { + "name": "Moonshadow", + "symbol": "MSHD", + "decimals": 18 + }, + "infoURL": "https://docs.moonbeam.network/networks/overview/", + "shortName": "mshadow", + "chainId": 1288, + "networkId": 1288 +} \ No newline at end of file From 9842ea28795e7264d2f1cf43713d0140513f861c Mon Sep 17 00:00:00 2001 From: Sean Rowan <48996984+sprwn@users.noreply.github.com> Date: Wed, 21 Jul 2021 16:18:53 -0400 Subject: [PATCH 02/41] Songbird Canary-Network (#346) Please add the Songbird Network for chainId 19 - Songbird is the 'canary network' for Flare Network (chainId 14), and further details on Songbird are available at: https://flare.xyz/introducing-songbird/. Thank you! --- _data/chains/eip155-19.json | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 _data/chains/eip155-19.json diff --git a/_data/chains/eip155-19.json b/_data/chains/eip155-19.json new file mode 100644 index 00000000..48aed255 --- /dev/null +++ b/_data/chains/eip155-19.json @@ -0,0 +1,18 @@ +{ + "name": "Songbird Canary-Network", + "chain": "SGB", + "network": "songbird", + "rpc": [ + ], + "faucets": [ + ], + "nativeCurrency": { + "name": "Songbird", + "symbol": "SGB", + "decimals": 18 + }, + "infoURL": "https://flare.xyz", + "shortName": "sgb", + "chainId": 19, + "networkId": 19 +} From 5bd54d518c8b59c47de15c1bf954139fae9a2605 Mon Sep 17 00:00:00 2001 From: ligi Date: Sun, 25 Jul 2021 07:33:45 +0200 Subject: [PATCH 03/41] Add info on collision management --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index e23d39d6..795a775a 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,10 @@ There are also aggregated json files with all chains automatically assembled: * https://chainid.network/chains.json * https://chainid.network/chains_mini.json (miniaturized - fewer fields for smaller filesize) +## Collision management + + If different chains have the same chainID we list the one with the oldest genesis. + ## Usages * [chainlist.org](https://chainlist.org) or [networklist-org.vercel.app](https://networklist-org.vercel.app) as a staging version with a more up-to-date list From 0a821ae37bf5d627b14d2fb0681bbc79002da0cc Mon Sep 17 00:00:00 2001 From: Julian Y Date: Tue, 27 Jul 2021 01:30:27 -0700 Subject: [PATCH 04/41] Ubiq has switched Network ID to 8 to match Chain ID (#350) Announcement links: * https://blog.ubiqsmart.com/announcing-gubiq-5-1-e4c5a9982073 * https://github.com/ubiq/UIPs/issues/9 --- _data/chains/eip155-8.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/chains/eip155-8.json b/_data/chains/eip155-8.json index c0aa4169..8ec42cf9 100644 --- a/_data/chains/eip155-8.json +++ b/_data/chains/eip155-8.json @@ -15,6 +15,6 @@ "infoURL": "https://ubiqsmart.com", "shortName": "ubq", "chainId": 8, - "networkId": 88, + "networkId": 8, "slip44": 108 } From 745922baeadb008c9360dd15ef3a8ef9d524ea6e Mon Sep 17 00:00:00 2001 From: Mrwh0 <34561590+Mrwh0@users.noreply.github.com> Date: Wed, 28 Jul 2021 05:44:59 -0400 Subject: [PATCH 05/41] add latam-blockchain testnet (#353) --- _data/chains/eip155-172.json | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 _data/chains/eip155-172.json diff --git a/_data/chains/eip155-172.json b/_data/chains/eip155-172.json new file mode 100644 index 00000000..3fa3a7b4 --- /dev/null +++ b/_data/chains/eip155-172.json @@ -0,0 +1,21 @@ +{ + "name": "Latam-Blockchain Resil Testnet", + "chain": "Resil", + "network": "testnet", + "rpc": [ + "https://rpc.latam-blockchain.com", + "wss://ws.latam-blockchain.com" + ], + "faucets": [ + "https://faucet.latam-blockchain.com" + ], + "nativeCurrency": { + "name": "Latam-Blockchain Resil Test Native Token", + "symbol": "usd", + "decimals": 18 + }, + "infoURL": "https://latam-blockchain.com", + "shortName": "resil", + "chainId": 172, + "networkId": 172 +} From ea9a3fca341c7a338a4f777b26ff6265d6f0ba2f Mon Sep 17 00:00:00 2001 From: Travis Reeder Date: Fri, 30 Jul 2021 03:56:25 -0700 Subject: [PATCH 06/41] Add explorer URL to GoChain (#356) --- _data/chains/eip155-60.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/_data/chains/eip155-60.json b/_data/chains/eip155-60.json index 9f0579c2..726d7e55 100644 --- a/_data/chains/eip155-60.json +++ b/_data/chains/eip155-60.json @@ -15,5 +15,10 @@ "shortName": "go", "chainId": 60, "networkId": 60, - "slip44": 6060 + "slip44": 6060, + "explorers": [{ + "name": "GoChain Explorer", + "url": "https://explorer.gochain.io", + "standard": "EIP3091" + }] } From dd8c68b65c5db821913dd813696765982986b091 Mon Sep 17 00:00:00 2001 From: "Jieyi Long (THETA Network)" Date: Sun, 1 Aug 2021 05:20:40 -0700 Subject: [PATCH 07/41] Update the explorer URLs for the Theta Mainnet and testnets (#354) * Add chain IDs for the Theta blockchain * Update the explorer URLs for Theta mainnet and testnets * Minor fixes for the Theta explorer URLs --- _data/chains/eip155-361.json | 9 +++++++-- _data/chains/eip155-363.json | 9 +++++++-- _data/chains/eip155-364.json | 11 ++++++++--- _data/chains/eip155-365.json | 9 +++++++-- 4 files changed, 29 insertions(+), 9 deletions(-) diff --git a/_data/chains/eip155-361.json b/_data/chains/eip155-361.json index b510023e..144575ac 100644 --- a/_data/chains/eip155-361.json +++ b/_data/chains/eip155-361.json @@ -3,7 +3,7 @@ "chain": "Theta", "network": "mainnet", "rpc": [ - "https://eth-rpc-api.thetatoken.org" + "https://eth-rpc-api.thetatoken.org/rpc" ], "faucets": [ ], @@ -15,5 +15,10 @@ "infoURL": "https://www.thetatoken.org/", "shortName": "theta-mainnet", "chainId": 361, - "networkId": 361 + "networkId": 361, + "explorers": [{ + "name": "Theta Mainnet Explorer", + "url": "https://explorer.thetatoken.org", + "standard": "EIP3091" + }] } diff --git a/_data/chains/eip155-363.json b/_data/chains/eip155-363.json index 5831ff0f..0f8d28f7 100644 --- a/_data/chains/eip155-363.json +++ b/_data/chains/eip155-363.json @@ -3,7 +3,7 @@ "chain": "Theta", "network": "testnet_sapphire", "rpc": [ - "https://eth-rpc-api-sapphire.thetatoken.org" + "https://eth-rpc-api-sapphire.thetatoken.org/rpc" ], "faucets": [ ], @@ -15,5 +15,10 @@ "infoURL": "https://www.thetatoken.org/", "shortName": "theta-sapphire", "chainId": 363, - "networkId": 363 + "networkId": 363, + "explorers": [{ + "name": "Theta Sapphire Testnet Explorer", + "url": "https://guardian-testnet-sapphire-explorer.thetatoken.org", + "standard": "EIP3091" + }] } diff --git a/_data/chains/eip155-364.json b/_data/chains/eip155-364.json index 73be3583..99a4dbfe 100644 --- a/_data/chains/eip155-364.json +++ b/_data/chains/eip155-364.json @@ -3,7 +3,7 @@ "chain": "Theta", "network": "testnet_amber", "rpc": [ - "https://eth-rpc-api-amber.thetatoken.org" + "https://eth-rpc-api-amber.thetatoken.org/rpc" ], "faucets": [ ], @@ -15,5 +15,10 @@ "infoURL": "https://www.thetatoken.org/", "shortName": "theta-amber", "chainId": 364, - "networkId": 364 -} \ No newline at end of file + "networkId": 364, + "explorers": [{ + "name": "Theta Amber Testnet Explorer", + "url": "https://guardian-testnet-amber-explorer.thetatoken.org", + "standard": "EIP3091" + }] +} diff --git a/_data/chains/eip155-365.json b/_data/chains/eip155-365.json index 7870057c..c90a7bb2 100644 --- a/_data/chains/eip155-365.json +++ b/_data/chains/eip155-365.json @@ -3,7 +3,7 @@ "chain": "Theta", "network": "testnet", "rpc": [ - "https://eth-rpc-api-testnet.thetatoken.org" + "https://eth-rpc-api-testnet.thetatoken.org/rpc" ], "faucets": [ ], @@ -15,5 +15,10 @@ "infoURL": "https://www.thetatoken.org/", "shortName": "theta-testnet", "chainId": 365, - "networkId": 365 + "networkId": 365, + "explorers": [{ + "name": "Theta Testnet Explorer", + "url": "https://testnet-explorer.thetatoken.org", + "standard": "EIP3091" + }] } From 973e090f5ccc53c11cb76d4752300fb713c21131 Mon Sep 17 00:00:00 2001 From: YellowRoseCx <80486540+YellowRoseCx@users.noreply.github.com> Date: Tue, 3 Aug 2021 09:34:48 -0500 Subject: [PATCH 08/41] Update eip155-10000.json (#358) changed infoUrl "http" to "https" and added RPCs --- _data/chains/eip155-10000.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/_data/chains/eip155-10000.json b/_data/chains/eip155-10000.json index d179ce71..8c226a10 100644 --- a/_data/chains/eip155-10000.json +++ b/_data/chains/eip155-10000.json @@ -3,7 +3,9 @@ "chain": "smartBCH", "network": "mainnet", "rpc": [ - "https://rpc-mainnet.smartbch.org" + "https://smartbch.greyh.at", + "https://rpc-mainnet.smartbch.org", + "https://smartbch.fountainhead.cash/mainnet" ], "faucets": [], "nativeCurrency": { @@ -11,7 +13,7 @@ "symbol": "BCH", "decimals": 18 }, - "infoURL": "http://smartbch.org/", + "infoURL": "https://smartbch.org/", "shortName": "smartbch", "chainId": 10000, "networkId": 10000 From 684d82580ee230a1a5afc49e8ea6e9bcbcdd8abd Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 4 Aug 2021 23:16:05 +0200 Subject: [PATCH 09/41] Create a json file mapping shortName -> CAIP-2 (#360) closes #359 --- src/main/kotlin/org/ethereum/lists/chains/Main.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/kotlin/org/ethereum/lists/chains/Main.kt b/src/main/kotlin/org/ethereum/lists/chains/Main.kt index 81deedf8..31aee4e1 100644 --- a/src/main/kotlin/org/ethereum/lists/chains/Main.kt +++ b/src/main/kotlin/org/ethereum/lists/chains/Main.kt @@ -34,9 +34,11 @@ private fun createOutputFiles() { val prettyJSONFile = File(buildPath, "chains_pretty.json") val miniJSONFile = File(buildPath, "chains_mini.json") val prettyMiniJSONFile = File(buildPath, "chains_mini_pretty.json") + val shortNameMappingJSONFIle = File(buildPath, "shortNameMapping.json") val chainJSONArray = JsonArray() val miniChainJSONArray = JsonArray() + val shortNameMapping = JsonObject() allChainFiles .map { Klaxon().parseJsonObject(it.reader()) } @@ -54,10 +56,12 @@ private fun createOutputFiles() { } miniChainJSONArray.add(miniJSON) + shortNameMapping[jsonObject["shortName"] as String] = "eip155:" + jsonObject["chainId"] miniJSONFile.writeText(miniChainJSONArray.toJsonString()) prettyMiniJSONFile.writeText(miniChainJSONArray.toJsonString(prettyPrint = true)) } + shortNameMappingJSONFIle.writeText(shortNameMapping.toJsonString(prettyPrint = true)) File(buildPath, "index.html").writeText( """ From 1ab08f61c37509f59d79c407e135cf56ae05b694 Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 4 Aug 2021 23:16:46 +0200 Subject: [PATCH 10/41] Simplify --- .../kotlin/org/ethereum/lists/chains/Main.kt | 24 ++++++++----------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/main/kotlin/org/ethereum/lists/chains/Main.kt b/src/main/kotlin/org/ethereum/lists/chains/Main.kt index 31aee4e1..e78b6153 100644 --- a/src/main/kotlin/org/ethereum/lists/chains/Main.kt +++ b/src/main/kotlin/org/ethereum/lists/chains/Main.kt @@ -8,7 +8,6 @@ import org.ethereum.lists.chains.model.* import org.kethereum.erc55.isValid import org.kethereum.model.Address import org.kethereum.rpc.HttpEthereumRPC -import java.lang.IllegalArgumentException val parsedShortNames = mutableSetOf() val parsedNames = mutableSetOf() @@ -27,14 +26,7 @@ fun main(args: Array) { } private fun createOutputFiles() { - val buildPath = File("output") - buildPath.mkdir() - - val fullJSONFile = File(buildPath, "chains.json") - val prettyJSONFile = File(buildPath, "chains_pretty.json") - val miniJSONFile = File(buildPath, "chains_mini.json") - val prettyMiniJSONFile = File(buildPath, "chains_mini_pretty.json") - val shortNameMappingJSONFIle = File(buildPath, "shortNameMapping.json") + val buildPath = File("output").apply { mkdir() } val chainJSONArray = JsonArray() val miniChainJSONArray = JsonArray() @@ -45,8 +37,7 @@ private fun createOutputFiles() { .sortedBy { (it["chainId"] as Number).toLong() } .forEach { jsonObject -> chainJSONArray.add(jsonObject) - fullJSONFile.writeText(chainJSONArray.toJsonString()) - prettyJSONFile.writeText(chainJSONArray.toJsonString(prettyPrint = true)) + val miniJSON = JsonObject() listOf("name", "chainId", "shortName", "networkId", "nativeCurrency", "rpc", "faucets", "infoURL").forEach { field -> @@ -57,11 +48,16 @@ private fun createOutputFiles() { miniChainJSONArray.add(miniJSON) shortNameMapping[jsonObject["shortName"] as String] = "eip155:" + jsonObject["chainId"] - miniJSONFile.writeText(miniChainJSONArray.toJsonString()) - prettyMiniJSONFile.writeText(miniChainJSONArray.toJsonString(prettyPrint = true)) + } - shortNameMappingJSONFIle.writeText(shortNameMapping.toJsonString(prettyPrint = true)) + File(buildPath, "chains.json").writeText(chainJSONArray.toJsonString()) + File(buildPath, "chains_pretty.json").writeText(chainJSONArray.toJsonString(prettyPrint = true)) + + File(buildPath, "chains_mini.json").writeText(miniChainJSONArray.toJsonString()) + File(buildPath, "chains_mini_pretty.json").writeText(miniChainJSONArray.toJsonString(prettyPrint = true)) + + File(buildPath, "shortNameMapping.json").writeText(shortNameMapping.toJsonString(prettyPrint = true)) File(buildPath, "index.html").writeText( """ From 8c9c4e261d7e8ac8c5483a8f694af2f6d95c1789 Mon Sep 17 00:00:00 2001 From: 0xJolly <31243646+vincen7su@users.noreply.github.com> Date: Thu, 5 Aug 2021 05:33:09 +0800 Subject: [PATCH 11/41] Add Harmony mainnet and testnet block explorer url and testnet faucet url. (#362) --- _data/chains/eip155-1666600000.json | 7 ++++- _data/chains/eip155-1666700000.json | 42 ++++++++++++++++------------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/_data/chains/eip155-1666600000.json b/_data/chains/eip155-1666600000.json index c3804555..d4837f59 100644 --- a/_data/chains/eip155-1666600000.json +++ b/_data/chains/eip155-1666600000.json @@ -15,5 +15,10 @@ "infoURL": "https://www.harmony.one/", "shortName": "hmy-s0", "chainId": 1666600000, - "networkId": 1666600000 + "networkId": 1666600000, + "explorers": [{ + "name": "Harmony Block Explorer", + "url": "https://explorer.harmony.one", + "standard": "EIP3091" + }] } diff --git a/_data/chains/eip155-1666700000.json b/_data/chains/eip155-1666700000.json index f276861a..f8d4e6d7 100644 --- a/_data/chains/eip155-1666700000.json +++ b/_data/chains/eip155-1666700000.json @@ -1,20 +1,26 @@ { - "name": "Harmony Testnet Shard 0", - "chain": "Harmony", - "network": "testnet", - "rpc": [ - "https://api.s0.b.hmny.io" - ], - "faucets": [ - ], - "nativeCurrency": { - "name": "ONE", - "symbol": "ONE", - "decimals": 18 - }, - "infoURL": "https://www.harmony.one/", - "shortName": "hmy-b-s0", - "chainId": 1666700000, - "networkId": 1666700000 - } + "name": "Harmony Testnet Shard 0", + "chain": "Harmony", + "network": "testnet", + "rpc": [ + "https://api.s0.b.hmny.io" + ], + "faucets": [ + "https://faucet.pops.one" + ], + "nativeCurrency": { + "name": "ONE", + "symbol": "ONE", + "decimals": 18 + }, + "infoURL": "https://www.harmony.one/", + "shortName": "hmy-b-s0", + "chainId": 1666700000, + "networkId": 1666700000, + "explorers": [{ + "name": "Harmony Testnet Block Explorer", + "url": "https://explorer.pops.one", + "standard": "EIP3091" + }] +} \ No newline at end of file From b16bd1ed77ab19bf5f0f0c7ff1a3955917cea39b Mon Sep 17 00:00:00 2001 From: Travis Reeder Date: Tue, 10 Aug 2021 00:38:44 -0700 Subject: [PATCH 12/41] Add GoChain testnet (#366) * Add GoChain testnet * Update eip155-31337.json --- _data/chains/eip155-31337.json | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 _data/chains/eip155-31337.json diff --git a/_data/chains/eip155-31337.json b/_data/chains/eip155-31337.json new file mode 100644 index 00000000..4e5cacea --- /dev/null +++ b/_data/chains/eip155-31337.json @@ -0,0 +1,24 @@ +{ + "name": "GoChain Testnet", + "chain": "GO", + "network": "testnet", + "rpc": [ + "https://testnet-rpc.gochain.io" + ], + "faucets": [], + "nativeCurrency": { + "name": "GoChain Coin", + "symbol": "GO", + "decimals": 18 + }, + "infoURL": "https://gochain.io", + "shortName": "got", + "chainId": 31337, + "networkId": 31337, + "slip44": 6060, + "explorers": [{ + "name": "GoChain Testnet Explorer", + "url": "https://testnet-explorer.gochain.io", + "standard": "EIP3091" + }] +} From b2b8516df5e341a3352f4f069fce0c7d276e798d Mon Sep 17 00:00:00 2001 From: Andy Lou Date: Fri, 13 Aug 2021 17:11:44 +0800 Subject: [PATCH 13/41] add TOOL Global Mainnet (#370) * add TOOL Global Mainnet * change shortname of TOOL Global Testnet --- _data/chains/eip155-8723.json | 24 ++++++++++++++++++++++++ _data/chains/eip155-8724.json | 2 +- 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 _data/chains/eip155-8723.json diff --git a/_data/chains/eip155-8723.json b/_data/chains/eip155-8723.json new file mode 100644 index 00000000..e9aef0ee --- /dev/null +++ b/_data/chains/eip155-8723.json @@ -0,0 +1,24 @@ +{ + "name": "TOOL Global Mainnet", + "chain": "OLO", + "network": "mainnet", + "rpc": [ + "https://mainnet-web3.wolot.io" + ], + "faucets": [], + "nativeCurrency": { + "name": "TOOL Global", + "symbol": "OLO", + "decimals": 18 + }, + "infoURL": "https://ibdt.io", + "shortName": "olo", + "chainId": 8723, + "networkId": 8723, + "slip44": 479, + "explorers": [{ + "name": "OLO Block Explorer", + "url": "https://www.olo.network", + "standard": "EIP3091" + }] +} \ No newline at end of file diff --git a/_data/chains/eip155-8724.json b/_data/chains/eip155-8724.json index 33459540..543a713c 100644 --- a/_data/chains/eip155-8724.json +++ b/_data/chains/eip155-8724.json @@ -14,7 +14,7 @@ "decimals": 18 }, "infoURL": "https://testnet-explorer.wolot.io", - "shortName": "olo", + "shortName": "tolo", "chainId": 8724, "networkId": 8724, "slip44": 479 From 82f78658aa6c4691787c6e77650273320f819c79 Mon Sep 17 00:00:00 2001 From: Enrique Date: Fri, 13 Aug 2021 04:32:28 -0500 Subject: [PATCH 14/41] add Sparta (Polis testnet) (#372) * add Sparta (Polis testnet) * Remove slip44 --- _data/chains/eip155-333888.json | 21 +++++++++++++++++++++ _data/icons/polis.json | 8 ++++++++ 2 files changed, 29 insertions(+) create mode 100644 _data/chains/eip155-333888.json create mode 100644 _data/icons/polis.json diff --git a/_data/chains/eip155-333888.json b/_data/chains/eip155-333888.json new file mode 100644 index 00000000..deee8c26 --- /dev/null +++ b/_data/chains/eip155-333888.json @@ -0,0 +1,21 @@ +{ + "name": "Polis Testnet", + "chain": "Sparta", + "network": "testnet", + "icon": "polis", + "rpc": [ + "https://sparta-rpc.polis.tech" + ], + "faucets": [ + "https://faucet.polis.tech" + ], + "nativeCurrency": { + "name": "tPolis", + "symbol": "tPOLIS", + "decimals": 18 + }, + "infoURL": "https://polis.tech", + "shortName": "sparta", + "chainId": 333888, + "networkId": 333888 +} diff --git a/_data/icons/polis.json b/_data/icons/polis.json new file mode 100644 index 00000000..1857fb97 --- /dev/null +++ b/_data/icons/polis.json @@ -0,0 +1,8 @@ +[ + { + "url":"ipfs://QmagWrtyApex28H2QeXcs3jJ2F7p2K7eESz3cDbHdQ3pjG", + "width":1050, + "height":1050, + "format":"png" + } +] From d2945a69f649cf182cc4393adfe68b80a0051021 Mon Sep 17 00:00:00 2001 From: Mark Ridgwell Date: Fri, 13 Aug 2021 18:20:25 +0100 Subject: [PATCH 15/41] Updated explorer address and Name to reflect similar changes to Polygon Mainnet (#373) --- _data/chains/eip155-80001.json | 47 +++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/_data/chains/eip155-80001.json b/_data/chains/eip155-80001.json index d79a5342..b72c37a2 100644 --- a/_data/chains/eip155-80001.json +++ b/_data/chains/eip155-80001.json @@ -1,21 +1,26 @@ -{ - "name": "Matic Testnet Mumbai", - "chain": "Matic", - "network": "testnet", - "rpc": [ - "https://rpc-mumbai.matic.today", - "wss://ws-mumbai.matic.today" - ], - "faucets": [ - "https://faucet.matic.network/" - ], - "nativeCurrency": { - "name": "Matic", - "symbol": "tMATIC", - "decimals": 18 - }, - "infoURL": "https://matic.network/", - "shortName": "maticmum", - "chainId": 80001, - "networkId": 80001 -} +{ + "name": "Matic(Polygon) Testnet Mumbai", + "chain": "Matic(Polygon)", + "network": "testnet", + "rpc": [ + "https://rpc-mumbai.matic.today", + "wss://ws-mumbai.matic.today" + ], + "faucets": [ + "https://faucet.matic.network/" + ], + "nativeCurrency": { + "name": "Matic", + "symbol": "tMATIC", + "decimals": 18 + }, + "infoURL": "https://matic.network/", + "shortName": "maticmum", + "chainId": 80001, + "networkId": 80001, + "explorers": [{ + "name": "polygonscan", + "url": "https://mumbai.polygonscan.com/", + "standard": "EIP3091" + }] +} From 73f752ab3163bcf26d2972d466dfac40a888bf52 Mon Sep 17 00:00:00 2001 From: Julian Y Date: Sun, 15 Aug 2021 21:20:58 -1000 Subject: [PATCH 16/41] Add Ubiq block explorer Ubiqscan.io (#375) --- _data/chains/eip155-8.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/_data/chains/eip155-8.json b/_data/chains/eip155-8.json index 8ec42cf9..6de287b2 100644 --- a/_data/chains/eip155-8.json +++ b/_data/chains/eip155-8.json @@ -16,5 +16,10 @@ "shortName": "ubq", "chainId": 8, "networkId": 8, - "slip44": 108 + "slip44": 108, + "explorers": [{ + "name": "ubiqscan", + "url": "https://ubiqscan.io", + "standard": "EIP3091" + }] } From 1ab296e3a64b06a8ad45ddea6d9ccfb3ce6192f6 Mon Sep 17 00:00:00 2001 From: Matias Romeo Date: Wed, 18 Aug 2021 04:35:29 -0300 Subject: [PATCH 17/41] EOS Mainnet: Change block explorer url (#377) --- _data/chains/eip155-59.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/chains/eip155-59.json b/_data/chains/eip155-59.json index 327ae02b..4aee75e2 100644 --- a/_data/chains/eip155-59.json +++ b/_data/chains/eip155-59.json @@ -18,7 +18,7 @@ "networkId": 59, "explorers": [{ "name": "bloks", - "url": "https://api.eosargentina.io", + "url": "https://bloks.eosargentina.io", "standard": "EIP3091" }] } From 993bc01ffb9bf49ab00881d8a45058cf25dbb1d1 Mon Sep 17 00:00:00 2001 From: matejcik Date: Tue, 24 Aug 2021 09:47:25 +0200 Subject: [PATCH 18/41] Add SLIP44 to Wanchain (#380) --- _data/chains/eip155-888.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/_data/chains/eip155-888.json b/_data/chains/eip155-888.json index eb2b15ac..f13af693 100644 --- a/_data/chains/eip155-888.json +++ b/_data/chains/eip155-888.json @@ -14,5 +14,6 @@ "infoURL": "https://www.wanscan.org", "shortName": "wan", "chainId": 888, - "networkId": 888 + "networkId": 888, + "slip44": 5718350 } From f7772807241d28d1c43ed3a6eaed8a3bb3d8c38b Mon Sep 17 00:00:00 2001 From: bengbengle <43799882+bengbengle@users.noreply.github.com> Date: Wed, 25 Aug 2021 22:14:33 +0800 Subject: [PATCH 19/41] add the metadot chain info (#381) * add the metadot chain info * Update eip155-16001.json * add metadot chain info --- _data/chains/eip155-16000.json | 19 +++++++++++++++++++ _data/chains/eip155-16001.json | 21 +++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 _data/chains/eip155-16000.json create mode 100644 _data/chains/eip155-16001.json diff --git a/_data/chains/eip155-16000.json b/_data/chains/eip155-16000.json new file mode 100644 index 00000000..3dfb4573 --- /dev/null +++ b/_data/chains/eip155-16000.json @@ -0,0 +1,19 @@ +{ + "name": "MetaDot Mainnet", + "chain": "MTT", + "network": "mainnet", + "rpc": [ + "https://mainnet.metadot.network" + ], + "faucets": [], + "nativeCurrency": { + "name": "MetaDot Token", + "symbol": "MTT", + "decimals": 18 + }, + "infoURL": "https://metadot.network", + "shortName": "mtt", + "chainId": 16000, + "networkId": 16000 + } + \ No newline at end of file diff --git a/_data/chains/eip155-16001.json b/_data/chains/eip155-16001.json new file mode 100644 index 00000000..451d4598 --- /dev/null +++ b/_data/chains/eip155-16001.json @@ -0,0 +1,21 @@ +{ + "name": "MetaDot Testnet", + "chain": "MTTTest", + "network": "devnet", + "rpc": [ + "https://testnet.metadot.network" + ], + "faucets": [ + "https://faucet.metadot.network/" + ], + "nativeCurrency": { + "name": "MetaDot Token TestNet", + "symbol": "MTT-test", + "decimals": 18 + }, + "infoURL": "https://metadot.network", + "shortName": "mtttest", + "chainId": 16001, + "networkId": 16001 + } + From 648a9cc6809255138a23024e19d2eaf9d787def2 Mon Sep 17 00:00:00 2001 From: jjy Date: Sat, 28 Aug 2021 03:49:50 +0800 Subject: [PATCH 20/41] Add Polyjuice chain (#384) --- _data/chains/eip155-71393.json | 20 ++++++++++++++++++++ _data/icons/polyjuice.json | 8 ++++++++ 2 files changed, 28 insertions(+) create mode 100644 _data/chains/eip155-71393.json create mode 100644 _data/icons/polyjuice.json diff --git a/_data/chains/eip155-71393.json b/_data/chains/eip155-71393.json new file mode 100644 index 00000000..f2a57309 --- /dev/null +++ b/_data/chains/eip155-71393.json @@ -0,0 +1,20 @@ +{ + "name": "Polyjuice Testnet", + "chain": "CKB", + "network": "testnet", + "icon": "polyjuice", + "rpc": [ + "https://godwoken-testnet-web3-rpc.ckbapp.dev", + "ws://godwoken-testnet-web3-rpc.ckbapp.dev/ws" + ], + "faucets": ["https://faucet.nervos.org/"], + "nativeCurrency": { + "name": "CKB", + "symbol": "CKB", + "decimals": 8 + }, + "infoURL": "https://github.com/nervosnetwork/godwoken", + "shortName": "ckb", + "chainId": 71393, + "networkId": 1 +} diff --git a/_data/icons/polyjuice.json b/_data/icons/polyjuice.json new file mode 100644 index 00000000..e97e8fad --- /dev/null +++ b/_data/icons/polyjuice.json @@ -0,0 +1,8 @@ +[ + { + "url":"ipfs://QmZ5gFWUxLFqqT3DkefYfRsVksMwMTc5VvBjkbHpeFMsNe", + "width":1000, + "height":1628, + "format":"png" + } +] From edf5ef40903f02270347af8c8e171154d4e93e2a Mon Sep 17 00:00:00 2001 From: XuePing Yang Date: Mon, 30 Aug 2021 00:56:37 +0800 Subject: [PATCH 21/41] add iotex explorer info (#369) * fix IoTeX chain name * add iotex explorer info * change http to https * add standard to explorers --- _data/chains/eip155-4689.json | 7 ++++++- _data/chains/eip155-4690.json | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/_data/chains/eip155-4689.json b/_data/chains/eip155-4689.json index 4da3b124..4c5642c4 100644 --- a/_data/chains/eip155-4689.json +++ b/_data/chains/eip155-4689.json @@ -15,5 +15,10 @@ "infoURL": "https://iotex.io", "shortName": "iotex-mainnet", "chainId": 4689, - "networkId": 4689 + "networkId": 4689, + "explorers": [{ + "name": "iotexscan", + "url": "https://iotexscan.io", + "standard": "EIP3091" + }] } diff --git a/_data/chains/eip155-4690.json b/_data/chains/eip155-4690.json index 17f006c4..f40419e6 100644 --- a/_data/chains/eip155-4690.json +++ b/_data/chains/eip155-4690.json @@ -16,5 +16,10 @@ "infoURL": "https://iotex.io", "shortName": "iotex-testnet", "chainId": 4690, - "networkId": 4690 + "networkId": 4690, + "explorers": [{ + "name": "testnet iotexscan", + "url": "https://testnet.iotexscan.io", + "standard": "EIP3091" + }] } From 85c88b9f1e5c2e9e548031ffff66dee379b45d06 Mon Sep 17 00:00:00 2001 From: Leandre Date: Mon, 30 Aug 2021 19:52:43 +0800 Subject: [PATCH 22/41] KCC update info (#386) * change kcc domain name * kcc mainnet * add kcc wss rpc endpoint * update shortName of KCC * KCC update info Co-authored-by: lingyun92 --- _data/chains/eip155-321.json | 4 ++-- _data/chains/eip155-322.json | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/_data/chains/eip155-321.json b/_data/chains/eip155-321.json index fd73f514..1092c85c 100644 --- a/_data/chains/eip155-321.json +++ b/_data/chains/eip155-321.json @@ -1,5 +1,5 @@ { - "name": "KuCoin Community Chain Mainnet", + "name": "KCC Mainnet", "chain": "KCC", "network": "mainnet", "rpc": [ @@ -15,7 +15,7 @@ "infoURL": "https://kcc.io", "shortName": "kcs", "chainId": 321, - "networkId": 321, + "networkId": 1, "explorers": [{ "name": "KCC Explorer", "url": "https://explorer.kcc.io/en", diff --git a/_data/chains/eip155-322.json b/_data/chains/eip155-322.json index ceb59bc8..06bbbe93 100644 --- a/_data/chains/eip155-322.json +++ b/_data/chains/eip155-322.json @@ -1,9 +1,10 @@ { - "name": "KuCoin Community Chain Testnet", + "name": "KCC Testnet", "chain": "KCC", "network": "testnet", "rpc": [ - "https://rpc-testnet.kcc.network" + "https://rpc-testnet.kcc.network", + "wss://rpc-ws-testnet.kcc.network" ], "faucets": [ "https://faucet-testnet.kcc.network" From c804bec745ea147c1a275da7f6386fecc8ddd716 Mon Sep 17 00:00:00 2001 From: fredlacs <32464905+fredlacs@users.noreply.github.com> Date: Mon, 30 Aug 2021 20:19:14 +0100 Subject: [PATCH 23/41] Add Arbitrum mainnet (#277) * Add Arbitrum mainnet * Update arbitrum one chain information --- _data/chains/eip155-42161.json | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 _data/chains/eip155-42161.json diff --git a/_data/chains/eip155-42161.json b/_data/chains/eip155-42161.json new file mode 100644 index 00000000..0415deac --- /dev/null +++ b/_data/chains/eip155-42161.json @@ -0,0 +1,33 @@ +{ + "name": "Arbitrum One", + "chainId": 42161, + "shortName": "arb1", + "chain": "ETH", + "network": "mainnet", + "networkId": 42161, + "nativeCurrency": { + "name": "Ether", + "symbol": "AETH", + "decimals": 18 + }, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://arb-mainnet.g.alchemy.com/v2/${ALCHEMY_API_KEY}", + "https://arb1.arbitrum.io/rpc", + "wss://arb1.arbitrum.io/ws" + ], + "faucets": [], + "explorers": [ + { + "name": "Arbiscan", + "url": "https://arbiscan.io", + "standard": "EIP3091" + }, + { + "name": "Arbitrum Explorer", + "url": "https://explorer.arbitrum.io", + "standard": "EIP3091" + } + ], + "infoURL": "https://arbitrum.io" +} From 260ccf3e9823c98d3287638f0bc2d91f4018ae4d Mon Sep 17 00:00:00 2001 From: Julian Y Date: Mon, 30 Aug 2021 23:37:15 -0700 Subject: [PATCH 24/41] Simplify naming from Ubiq Network Mainnet to just Ubiq (#387) --- _data/chains/eip155-8.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/chains/eip155-8.json b/_data/chains/eip155-8.json index 6de287b2..d882099d 100644 --- a/_data/chains/eip155-8.json +++ b/_data/chains/eip155-8.json @@ -1,5 +1,5 @@ { - "name": "Ubiq Network Mainnet", + "name": "Ubiq", "chain": "UBQ", "network": "mainnet", "rpc": [ From 677e68276471127e7861b2b9a3b8de368660b07a Mon Sep 17 00:00:00 2001 From: Alexander Kolotov Date: Tue, 31 Aug 2021 15:25:27 +0300 Subject: [PATCH 25/41] chain information for Arbitrum on xDai (#389) --- _data/chains/eip155-200.json | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 _data/chains/eip155-200.json diff --git a/_data/chains/eip155-200.json b/_data/chains/eip155-200.json new file mode 100644 index 00000000..516b5375 --- /dev/null +++ b/_data/chains/eip155-200.json @@ -0,0 +1,21 @@ +{ + "name": "Arbitrum on xDai", + "chain": "AOX", + "network": "xdai", + "rpc": ["https://arbitrum.xdaichain.com/"], + "faucets": [], + "nativeCurrency": { + "name": "xDAI", + "symbol": "xDAI", + "decimals": 18 + }, + "infoURL": "https://xdaichain.com", + "shortName": "aox", + "chainId": 200, + "networkId": 200, + "explorers": [{ + "name": "blockscout", + "url": "https://blockscout.com/xdai/arbitrum", + "standard": "EIP3091" + }] +} \ No newline at end of file From 0c0e632630e41269a20d58f712948ddbaa4ac96f Mon Sep 17 00:00:00 2001 From: Alexander Kolotov Date: Tue, 31 Aug 2021 16:28:12 +0300 Subject: [PATCH 26/41] Parent section in Arbitrum on xDai (#390) * chain information for Arbitrum on xDai * add parent section to make explicit relationship with xDai --- _data/chains/eip155-200.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/_data/chains/eip155-200.json b/_data/chains/eip155-200.json index 516b5375..010c8d5c 100644 --- a/_data/chains/eip155-200.json +++ b/_data/chains/eip155-200.json @@ -17,5 +17,9 @@ "name": "blockscout", "url": "https://blockscout.com/xdai/arbitrum", "standard": "EIP3091" - }] + }], + "parent": { + "chain": "eip155-100", + "type": "L2" + } } \ No newline at end of file From 878d89c91a7324496a7dac5a01462eab0e22dd94 Mon Sep 17 00:00:00 2001 From: Enrique Date: Wed, 1 Sep 2021 04:37:41 -0500 Subject: [PATCH 27/41] add Polis Mainnet (#394) --- _data/chains/eip155-333999.json | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 _data/chains/eip155-333999.json diff --git a/_data/chains/eip155-333999.json b/_data/chains/eip155-333999.json new file mode 100644 index 00000000..7c21f8b8 --- /dev/null +++ b/_data/chains/eip155-333999.json @@ -0,0 +1,21 @@ +{ + "name": "Polis Mainnet", + "chain": "Olympus", + "network": "mainnet", + "icon": "polis", + "rpc": [ + "https://rpc.polis.tech" + ], + "faucets": [ + "https://faucet.polis.tech" + ], + "nativeCurrency": { + "name": "Polis", + "symbol": "POLIS", + "decimals": 18 + }, + "infoURL": "https://polis.tech", + "shortName": "olympus", + "chainId": 333999, + "networkId": 333999 +} From eeca3c04fb2d4d4a2f4cde09fb57f93780ab755e Mon Sep 17 00:00:00 2001 From: antonnell <38530524+antonnell@users.noreply.github.com> Date: Wed, 1 Sep 2021 11:41:47 +0200 Subject: [PATCH 28/41] Update Fantom RPC URL to latest version. (#395) Signed-off-by: antonnell --- _data/chains/eip155-250.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/chains/eip155-250.json b/_data/chains/eip155-250.json index c76550a9..bce2c84e 100644 --- a/_data/chains/eip155-250.json +++ b/_data/chains/eip155-250.json @@ -2,7 +2,7 @@ "name": "Fantom Opera", "chain": "FTM", "network": "mainnet", - "rpc": ["https://rpcapi.fantom.network"], + "rpc": ["https://rpc.ftm.tools"], "faucets": [], "nativeCurrency": { "name": "Fantom", From ae004727c71f261f6e97e66599ca2554a847b086 Mon Sep 17 00:00:00 2001 From: tomatoskittles Date: Wed, 1 Sep 2021 15:36:59 -0400 Subject: [PATCH 29/41] Support syscoin (#392) * Adding support for Syscoin * Adjusting values after review. Changed the testnet chainId to 5700. * Updating the name of Syscoin Testnet to Syscoin Tanenbaum Testnet * Fixing json syntax error, and removing explorers. * Making the shortname unique by changing the testnet shortname. Co-authored-by: bboileau --- _data/chains/eip155-57.json | 20 ++++++++++++++++++++ _data/chains/eip155-5700.json | 18 ++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 _data/chains/eip155-57.json create mode 100644 _data/chains/eip155-5700.json diff --git a/_data/chains/eip155-57.json b/_data/chains/eip155-57.json new file mode 100644 index 00000000..88f9a788 --- /dev/null +++ b/_data/chains/eip155-57.json @@ -0,0 +1,20 @@ +{ + "name": "Syscoin Mainnet", + "chain": "SYS", + "network": "mainnet", + "rpc": [ + "https://nevm.syscoin.org/api/eth-rpc", + "https://web3.syscoin.org", + "wss://web3.syscoin.org" + ], + "faucets": ["https://faucet.syscoin.org"], + "nativeCurrency": { + "name": "Syscoin", + "symbol": "SYS", + "decimals": 18 + }, + "infoURL": "https://www.syscoin.org", + "shortName": "sys", + "chainId": 57, + "networkId": 57 +} diff --git a/_data/chains/eip155-5700.json b/_data/chains/eip155-5700.json new file mode 100644 index 00000000..260daf1a --- /dev/null +++ b/_data/chains/eip155-5700.json @@ -0,0 +1,18 @@ +{ + "name": "Syscoin Tanenbaum Testnet", + "chain": "SYS", + "network": "testnet", + "rpc": [ + "https://tanenbaum.io/api/eth-rpc" + ], + "faucets": ["https://faucet.tanenbaum.io"], + "nativeCurrency": { + "name": "Testnet Syscoin", + "symbol": "tSYS", + "decimals": 18 + }, + "infoURL": "https://syscoin.org", + "shortName": "tsys", + "chainId": 5700, + "networkId": 5700 +} From 33bfe7a46791960c5e334458354614f09d9dfc19 Mon Sep 17 00:00:00 2001 From: purestaketdb <45097828+purestaketdb@users.noreply.github.com> Date: Fri, 3 Sep 2021 13:39:34 -0400 Subject: [PATCH 30/41] Updates to Match MM (#396) --- _data/chains/eip155-1284.json | 2 +- _data/chains/eip155-1285.json | 2 +- _data/chains/eip155-1286.json | 2 +- _data/chains/eip155-1287.json | 2 +- _data/chains/eip155-1288.json | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/_data/chains/eip155-1284.json b/_data/chains/eip155-1284.json index de6dcc95..27e58d02 100644 --- a/_data/chains/eip155-1284.json +++ b/_data/chains/eip155-1284.json @@ -1,5 +1,5 @@ { - "name": "Moonbeam Polkadot", + "name": "Moonbeam", "chain": "MOON", "network": "moonbeam", "rpc": [], diff --git a/_data/chains/eip155-1285.json b/_data/chains/eip155-1285.json index 9312f880..a6b6fa42 100644 --- a/_data/chains/eip155-1285.json +++ b/_data/chains/eip155-1285.json @@ -1,5 +1,5 @@ { - "name": "Moonriver Kusama", + "name": "Moonriver", "chain": "MOON", "network": "moonriver", "rpc": [ diff --git a/_data/chains/eip155-1286.json b/_data/chains/eip155-1286.json index fc1c596d..4b573435 100644 --- a/_data/chains/eip155-1286.json +++ b/_data/chains/eip155-1286.json @@ -1,5 +1,5 @@ { - "name": "Moonrock Rococo", + "name": "Moonrock", "chain": "MOON", "network": "moonrock", "rpc": [], diff --git a/_data/chains/eip155-1287.json b/_data/chains/eip155-1287.json index b80eed51..4e2edcfe 100644 --- a/_data/chains/eip155-1287.json +++ b/_data/chains/eip155-1287.json @@ -1,5 +1,5 @@ { - "name": "Moonbeam Testnet Moonbase Alpha", + "name": "Moonbase Alpha", "chain": "MOON", "network": "moonbase", "rpc": [ diff --git a/_data/chains/eip155-1288.json b/_data/chains/eip155-1288.json index e49cf227..49a471e6 100644 --- a/_data/chains/eip155-1288.json +++ b/_data/chains/eip155-1288.json @@ -1,5 +1,5 @@ { - "name": "Moonshadow Westend", + "name": "Moonshadow", "chain": "MOON", "network": "moonshadow", "rpc": [], From db9e7a80b6156b3e23e2fb191002f50203d29b23 Mon Sep 17 00:00:00 2001 From: Bo Date: Sat, 4 Sep 2021 11:38:10 +0300 Subject: [PATCH 31/41] Add OneLedger mainnet and testnet (#397) * Add OneLedger configs * Fix short names for uniq --- _data/chains/eip155-311752642.json | 26 ++++++++++++++++++++++++++ _data/chains/eip155-4216137055.json | 28 ++++++++++++++++++++++++++++ _data/icons/oneledger.json | 8 ++++++++ 3 files changed, 62 insertions(+) create mode 100644 _data/chains/eip155-311752642.json create mode 100644 _data/chains/eip155-4216137055.json create mode 100644 _data/icons/oneledger.json diff --git a/_data/chains/eip155-311752642.json b/_data/chains/eip155-311752642.json new file mode 100644 index 00000000..fa4aaf5d --- /dev/null +++ b/_data/chains/eip155-311752642.json @@ -0,0 +1,26 @@ +{ + "name": "OneLedger Nexus Mainnet", + "chain": "OLT", + "network": "mainnet", + "icon": "oneledger", + "rpc": [ + "https://nexus-rpc.oneledger.network" + ], + "faucets": [], + "nativeCurrency": { + "name": "OLT", + "symbol": "OLT", + "decimals": 18 + }, + "infoURL": "https://oneledger.io", + "shortName": "nexus", + "chainId": 311752642, + "networkId": 311752642, + "explorers": [ + { + "name": "OneLedger Block Explorer", + "url": "https://nexus-explorer.oneledger.network", + "standard": "EIP3091" + } + ] +} \ No newline at end of file diff --git a/_data/chains/eip155-4216137055.json b/_data/chains/eip155-4216137055.json new file mode 100644 index 00000000..c88d8fa5 --- /dev/null +++ b/_data/chains/eip155-4216137055.json @@ -0,0 +1,28 @@ +{ + "name": "OneLedger Frankenstein Testnet", + "chain": "OLT", + "network": "testnet", + "icon": "oneledger", + "rpc": [ + "https://frankenstein-rpc.oneledger.network" + ], + "faucets": [ + "https://frankenstein-faucet.oneledger.network" + ], + "nativeCurrency": { + "name": "OLT", + "symbol": "OLT", + "decimals": 18 + }, + "infoURL": "https://oneledger.io", + "shortName": "frankenstein", + "chainId": 4216137055, + "networkId": 4216137055, + "explorers": [ + { + "name": "OneLedger Block Explorer", + "url": "https://frankenstein-explorer.oneledger.network", + "standard": "EIP3091" + } + ] +} \ No newline at end of file diff --git a/_data/icons/oneledger.json b/_data/icons/oneledger.json new file mode 100644 index 00000000..dd6f0d1e --- /dev/null +++ b/_data/icons/oneledger.json @@ -0,0 +1,8 @@ +[ + { + "url": "ipfs://QmRhqq4Gp8G9w27ND3LeFW49o5PxcxrbJsqHbpBFtzEMfC", + "width": 225, + "height": 225, + "format": "png" + } +] \ No newline at end of file From 2f23eb87830bd2a5bb9d072fd5842f59e2bddac2 Mon Sep 17 00:00:00 2001 From: Bo Date: Wed, 8 Sep 2021 22:21:53 +0300 Subject: [PATCH 32/41] Change mainnet name for OneLedger (#399) --- _data/chains/eip155-311752642.json | 8 ++++---- _data/chains/eip155-4216137055.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/_data/chains/eip155-311752642.json b/_data/chains/eip155-311752642.json index fa4aaf5d..6cbdfa17 100644 --- a/_data/chains/eip155-311752642.json +++ b/_data/chains/eip155-311752642.json @@ -1,10 +1,10 @@ { - "name": "OneLedger Nexus Mainnet", + "name": "OneLedger Mainnet", "chain": "OLT", "network": "mainnet", "icon": "oneledger", "rpc": [ - "https://nexus-rpc.oneledger.network" + "https://mainnet-rpc.oneledger.network" ], "faucets": [], "nativeCurrency": { @@ -13,13 +13,13 @@ "decimals": 18 }, "infoURL": "https://oneledger.io", - "shortName": "nexus", + "shortName": "oneledger", "chainId": 311752642, "networkId": 311752642, "explorers": [ { "name": "OneLedger Block Explorer", - "url": "https://nexus-explorer.oneledger.network", + "url": "https://mainnet-explorer.oneledger.network", "standard": "EIP3091" } ] diff --git a/_data/chains/eip155-4216137055.json b/_data/chains/eip155-4216137055.json index c88d8fa5..383e1020 100644 --- a/_data/chains/eip155-4216137055.json +++ b/_data/chains/eip155-4216137055.json @@ -1,5 +1,5 @@ { - "name": "OneLedger Frankenstein Testnet", + "name": "OneLedger Testnet Frankenstein", "chain": "OLT", "network": "testnet", "icon": "oneledger", From c2db32000c2e6ee4c97c7d7a84c837853ff30142 Mon Sep 17 00:00:00 2001 From: ligi Date: Tue, 14 Sep 2021 13:38:05 +0200 Subject: [PATCH 33/41] Use gradle 7.2 --- gradle/wrapper/gradle-wrapper.properties | 2 +- gradlew | 269 ++++++++++++++--------- 2 files changed, 160 insertions(+), 111 deletions(-) diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index af7be50b..a0f7639f 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.1.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index 744e882e..1b6c7873 100755 --- a/gradlew +++ b/gradlew @@ -1,7 +1,7 @@ -#!/usr/bin/env sh +#!/bin/sh # -# Copyright 2015 the original author or authors. +# Copyright © 2015-2021 the original authors. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,67 +17,101 @@ # ############################################################################## -## -## Gradle start up script for UN*X -## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# ############################################################################## # Attempt to set APP_HOME + # Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` +APP_BASE_NAME=${0##*/} # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" +MAX_FD=maximum warn () { echo "$*" -} +} >&2 die () { echo echo "$*" echo exit 1 -} +} >&2 # OS specific support (must be 'true' or 'false'). cygwin=false msys=false darwin=false nonstop=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MSYS* | MINGW* ) - msys=true - ;; - NONSTOP* ) - nonstop=true - ;; +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar @@ -87,9 +121,9 @@ CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACMD=$JAVA_HOME/jre/sh/java else - JAVACMD="$JAVA_HOME/bin/java" + JAVACMD=$JAVA_HOME/bin/java fi if [ ! -x "$JAVACMD" ] ; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME @@ -98,7 +132,7 @@ Please set the JAVA_HOME variable in your environment to match the location of your Java installation." fi else - JAVACMD="java" + JAVACMD=java which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the @@ -106,80 +140,95 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi -fi - -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi - -# For Cygwin or MSYS, switch paths to Windows format before running java -if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi - # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" - fi - i=`expr $i + 1` - done - case $i in - 0) set -- ;; - 1) set -- "$args0" ;; - 2) set -- "$args0" "$args1" ;; - 3) set -- "$args0" "$args1" "$args2" ;; - 4) set -- "$args0" "$args1" "$args2" "$args3" ;; - 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" esac fi -# Escape application args -save () { - for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done - echo " " -} -APP_ARGS=`save "$@"` +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. -# Collect all arguments for the java command, following the shell quoting and substitution rules -eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' exec "$JAVACMD" "$@" From 46f91a72752afb78f8d5be15808afc7bd389b331 Mon Sep 17 00:00:00 2001 From: ligi Date: Tue, 14 Sep 2021 13:38:22 +0200 Subject: [PATCH 34/41] Use Kotlin 1.5.30 --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 0fd2fb47..cacd2e28 100644 --- a/build.gradle +++ b/build.gradle @@ -1,6 +1,6 @@ buildscript { ext { - KOTLIN_VERSION = "1.5.20" + KOTLIN_VERSION = "1.5.30" KETHEREUM_VERSION = "0.84.4" } From 59a2e092dd7754bf9423a33be6c623f968df9c24 Mon Sep 17 00:00:00 2001 From: ligi Date: Tue, 14 Sep 2021 13:39:04 +0200 Subject: [PATCH 35/41] Use Kethereum 0.85.3 --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index cacd2e28..acd4b419 100644 --- a/build.gradle +++ b/build.gradle @@ -1,7 +1,7 @@ buildscript { ext { KOTLIN_VERSION = "1.5.30" - KETHEREUM_VERSION = "0.84.4" + KETHEREUM_VERSION = "0.85.3" } repositories { From 0b77f10fe4e413b7760d375158d47f5d38a29f31 Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 15 Sep 2021 01:23:13 +0200 Subject: [PATCH 36/41] Support parent bridges field - closes #349 --- .../kotlin/org/ethereum/lists/chains/Main.kt | 22 +++++++++- .../ethereum/lists/chains/model/Exceptions.kt | 4 ++ .../ethereum/lists/chains/TheChainChecker.kt | 41 +++++++++++++++++++ .../eip155-2.json | 24 +++++++++++ .../withparentextrabridgesfield/eip155-2.json | 24 +++++++++++ .../eip155-2.json | 24 +++++++++++ .../withparentextrafield/eip155-2.json | 24 +++++++++++ .../valid/withparentbridge/eip155-1.json | 19 +++++++++ .../valid/withparentbridge/eip155-2.json | 26 ++++++++++++ 9 files changed, 206 insertions(+), 2 deletions(-) create mode 100644 src/test/resources/test_chains/invalid/withparentextrabridgeelementnoobject/eip155-2.json create mode 100644 src/test/resources/test_chains/invalid/withparentextrabridgesfield/eip155-2.json create mode 100644 src/test/resources/test_chains/invalid/withparentextrabridgesnoarray/eip155-2.json create mode 100644 src/test/resources/test_chains/invalid/withparentextrafield/eip155-2.json create mode 100644 src/test/resources/test_chains/valid/withparentbridge/eip155-1.json create mode 100644 src/test/resources/test_chains/valid/withparentbridge/eip155-2.json diff --git a/src/main/kotlin/org/ethereum/lists/chains/Main.kt b/src/main/kotlin/org/ethereum/lists/chains/Main.kt index e78b6153..8fb02d59 100644 --- a/src/main/kotlin/org/ethereum/lists/chains/Main.kt +++ b/src/main/kotlin/org/ethereum/lists/chains/Main.kt @@ -34,7 +34,7 @@ private fun createOutputFiles() { allChainFiles .map { Klaxon().parseJsonObject(it.reader()) } - .sortedBy { (it["chainId"] as Number).toLong() } + .sortedBy { (it["chainId"] as Number).toLong() } .forEach { jsonObject -> chainJSONArray.add(jsonObject) @@ -215,10 +215,28 @@ fun checkChain(chainFile: File, connectRPC: Boolean) { throw ParentMustBeObject() } - if (it.keys != mutableSetOf("chain", "type")) { + if (!it.keys.containsAll(setOf("chain", "type"))) { throw ParentMustHaveChainAndType() } + val extraFields = it.keys - setOf("chain", "type", "bridges") + if (extraFields.isNotEmpty()) { + throw ParentHasExtraFields(extraFields) + } + + val bridges = it["bridges"] + if (bridges != null && bridges !is List<*>) { + throw ParentBridgeNoArray() + } + (bridges as? JsonArray<*>)?.forEach { bridge -> + if (bridge !is JsonObject) { + throw BridgeNoObject() + } + if (bridge.keys.size != 1 || bridge.keys.first() != "url") { + throw BridgeOnlyURL() + } + } + if (!setOf("L2", "shard").contains(it["type"])) { throw ParentHasInvalidType(it["type"] as? String) } diff --git a/src/main/kotlin/org/ethereum/lists/chains/model/Exceptions.kt b/src/main/kotlin/org/ethereum/lists/chains/model/Exceptions.kt index ac92779d..e4af9a9b 100644 --- a/src/main/kotlin/org/ethereum/lists/chains/model/Exceptions.kt +++ b/src/main/kotlin/org/ethereum/lists/chains/model/Exceptions.kt @@ -19,4 +19,8 @@ class ExplorerStandardMustBeEIP3091: Exception("explorer standard must be EIP309 class ParentHasInvalidType(type: String?): Exception("Parent has invalid type $type - only L2 or shard allowed") class ParentMustBeObject: Exception("parent must be an object") class ParentMustHaveChainAndType: Exception("parent must have fields 'chain' and 'type'") +class ParentHasExtraFields(fields: Set): Exception("parent has extra field: $fields") +class ParentBridgeNoArray: Exception("parent bridge must be array") +class BridgeNoObject: Exception("parent bridges must be array consisting of json objects") +class BridgeOnlyURL: Exception("parent bridge only contain an URL") class ParentChainDoesNotExist(chain: String): Exception("Referenced parent chain ($chain) does not exist") \ No newline at end of file diff --git a/src/test/kotlin/org/ethereum/lists/chains/TheChainChecker.kt b/src/test/kotlin/org/ethereum/lists/chains/TheChainChecker.kt index d34f090e..ef74c284 100644 --- a/src/test/kotlin/org/ethereum/lists/chains/TheChainChecker.kt +++ b/src/test/kotlin/org/ethereum/lists/chains/TheChainChecker.kt @@ -35,6 +35,20 @@ class TheChainChecker { checkChain(file, false) } + @Test + fun shouldPassForValidChainWithParentBridge() { + val file = getFile("valid/withparentbridge/eip155-2.json") + + checkChain(file, false) + } + + @Test(expected = BridgeNoObject::class) + fun shouldFailForParentBridgeElementNoObject() { + val file = getFile("invalid/withparentextrabridgeelementnoobject/eip155-2.json") + + checkChain(file, false) + } + @Test(expected = ParentMustBeObject::class) fun shouldFailForParentNoObject() { val file = getFile("invalid/withparentnobject/eip155-2.json") @@ -49,6 +63,33 @@ class TheChainChecker { checkChain(file, false) } + @Test(expected = ParentHasExtraFields::class) + fun shouldFailForParentWithExtraParentField() { + val file = getFile("invalid/withparentextrafield/eip155-2.json") + + checkChain(file, false) + } + + @Test(expected = ParentHasExtraFields::class) + fun shouldFailForParentWithExtraField() { + val file = getFile("invalid/withparentextrafield/eip155-2.json") + + checkChain(file, false) + } + + @Test(expected = BridgeOnlyURL::class) + fun shouldFailForParentWithExtraBridgesField() { + val file = getFile("invalid/withparentextrabridgesfield/eip155-2.json") + + checkChain(file, false) + } + + @Test(expected = ParentBridgeNoArray::class) + fun shouldFailForParentWithExtraBridgeNoArray() { + val file = getFile("invalid/withparentextrabridgesnoarray/eip155-2.json") + + checkChain(file, false) + } @Test(expected = ParentChainDoesNotExist::class) fun shouldFailIfParentChainDoesNotExist() { diff --git a/src/test/resources/test_chains/invalid/withparentextrabridgeelementnoobject/eip155-2.json b/src/test/resources/test_chains/invalid/withparentextrabridgeelementnoobject/eip155-2.json new file mode 100644 index 00000000..7cc1fd47 --- /dev/null +++ b/src/test/resources/test_chains/invalid/withparentextrabridgeelementnoobject/eip155-2.json @@ -0,0 +1,24 @@ +{ + "name": "Ethereum Mainnet", + "shortName": "eth", + "chain": "ETH", + "network": "mainnet", + "chainId": 2, + "networkId": 2, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://api.mycryptoapi.com/eth" + ], + "faucets": [], + "infoURL": "https://ethereum.org", + "nativeCurrency": { + "name": "Ether", + "symbol": "ETH", + "decimals": 18 + }, + "parent": { + "chain": "eip155-1", + "type": "L2", + "bridges": ["yolo"] + } +} diff --git a/src/test/resources/test_chains/invalid/withparentextrabridgesfield/eip155-2.json b/src/test/resources/test_chains/invalid/withparentextrabridgesfield/eip155-2.json new file mode 100644 index 00000000..e4007b5e --- /dev/null +++ b/src/test/resources/test_chains/invalid/withparentextrabridgesfield/eip155-2.json @@ -0,0 +1,24 @@ +{ + "name": "Ethereum Mainnet", + "shortName": "eth", + "chain": "ETH", + "network": "mainnet", + "chainId": 2, + "networkId": 2, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://api.mycryptoapi.com/eth" + ], + "faucets": [], + "infoURL": "https://ethereum.org", + "nativeCurrency": { + "name": "Ether", + "symbol": "ETH", + "decimals": 18 + }, + "parent": { + "chain": "eip155-1", + "type": "L2", + "bridges": [{"yolo":"yoooo"}] + } +} diff --git a/src/test/resources/test_chains/invalid/withparentextrabridgesnoarray/eip155-2.json b/src/test/resources/test_chains/invalid/withparentextrabridgesnoarray/eip155-2.json new file mode 100644 index 00000000..8fa85245 --- /dev/null +++ b/src/test/resources/test_chains/invalid/withparentextrabridgesnoarray/eip155-2.json @@ -0,0 +1,24 @@ +{ + "name": "Ethereum Mainnet", + "shortName": "eth", + "chain": "ETH", + "network": "mainnet", + "chainId": 2, + "networkId": 2, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://api.mycryptoapi.com/eth" + ], + "faucets": [], + "infoURL": "https://ethereum.org", + "nativeCurrency": { + "name": "Ether", + "symbol": "ETH", + "decimals": 18 + }, + "parent": { + "chain": "eip155-1", + "type": "L2", + "bridges": "yolo" + } +} diff --git a/src/test/resources/test_chains/invalid/withparentextrafield/eip155-2.json b/src/test/resources/test_chains/invalid/withparentextrafield/eip155-2.json new file mode 100644 index 00000000..0be4e23e --- /dev/null +++ b/src/test/resources/test_chains/invalid/withparentextrafield/eip155-2.json @@ -0,0 +1,24 @@ +{ + "name": "Ethereum Mainnet", + "shortName": "eth", + "chain": "ETH", + "network": "mainnet", + "chainId": 2, + "networkId": 2, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://api.mycryptoapi.com/eth" + ], + "faucets": [], + "infoURL": "https://ethereum.org", + "nativeCurrency": { + "name": "Ether", + "symbol": "ETH", + "decimals": 18 + }, + "parent": { + "chain": "eip155-1", + "type": "L2", + "yolo": "yooooo" + } +} diff --git a/src/test/resources/test_chains/valid/withparentbridge/eip155-1.json b/src/test/resources/test_chains/valid/withparentbridge/eip155-1.json new file mode 100644 index 00000000..457f8964 --- /dev/null +++ b/src/test/resources/test_chains/valid/withparentbridge/eip155-1.json @@ -0,0 +1,19 @@ +{ + "name": "Ethereum Mainnet", + "shortName": "eth", + "chain": "ETH", + "network": "mainnet", + "chainId": 1, + "networkId": 1, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://api.mycryptoapi.com/eth" + ], + "faucets": [], + "infoURL": "https://ethereum.org", + "nativeCurrency": { + "name": "Ether", + "symbol": "ETH", + "decimals": 18 + } +} diff --git a/src/test/resources/test_chains/valid/withparentbridge/eip155-2.json b/src/test/resources/test_chains/valid/withparentbridge/eip155-2.json new file mode 100644 index 00000000..e6aef8e4 --- /dev/null +++ b/src/test/resources/test_chains/valid/withparentbridge/eip155-2.json @@ -0,0 +1,26 @@ +{ + "name": "Ethereum Mainnet", + "shortName": "eth", + "chain": "ETH", + "network": "mainnet", + "chainId": 2, + "networkId": 2, + "rpc": [ + "https://mainnet.infura.io/v3/${INFURA_API_KEY}", + "https://api.mycryptoapi.com/eth" + ], + "faucets": [], + "infoURL": "https://ethereum.org", + "nativeCurrency": { + "name": "Ether", + "symbol": "ETH", + "decimals": 18 + }, + "parent": { + "chain": "eip155-1", + "type": "L2", + "bridges": [ + {"url": "https://bridge.foo.org"} + ] + } +} From f618b20fda75c079bad748f33e85c778d3b46e89 Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 15 Sep 2021 02:07:03 +0200 Subject: [PATCH 37/41] Add information about parent field in README (#417) closes #391 --- README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/README.md b/README.md index 795a775a..5ba37e5c 100644 --- a/README.md +++ b/README.md @@ -53,6 +53,22 @@ where: * width and height are optional - but when one is there then the other must be there also * format is either "png", "jpg" or "svg" +If the chain is an L2 you can link it to the parent chain like this: + + +```json +{ + ... + "parent": { + "type" : "L2", + "parent": "eip155-1", + "bridges": [ {"url":"https://bridge.arbitrum.io"} ] + } +} +``` + +where you need to specify type 2 and the reference to an existing parent. The field about bridges is optional. + ## Aggregation There are also aggregated json files with all chains automatically assembled: From 8b967885838e3a4fca0c095fe97708a2476d1659 Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 15 Sep 2021 02:12:28 +0200 Subject: [PATCH 38/41] Add parent field to arbitrum (#418) * Add parent field to arbitrum * Update _data/chains/eip155-42161.json --- _data/chains/eip155-42161.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/_data/chains/eip155-42161.json b/_data/chains/eip155-42161.json index 0415deac..3dcec95f 100644 --- a/_data/chains/eip155-42161.json +++ b/_data/chains/eip155-42161.json @@ -29,5 +29,10 @@ "standard": "EIP3091" } ], - "infoURL": "https://arbitrum.io" + "infoURL": "https://arbitrum.io", + "parent": { + "type" : "L2", + "chain": "eip155-1", + "bridges": [ {"url":"https://bridge.arbitrum.io"} ] + } } From 931404eefb43e38e691896293470ddfd6711452a Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 15 Sep 2021 02:13:49 +0200 Subject: [PATCH 39/41] Fix parent chain field and add shard note (#419) --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5ba37e5c..584db353 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ where: * width and height are optional - but when one is there then the other must be there also * format is either "png", "jpg" or "svg" -If the chain is an L2 you can link it to the parent chain like this: +If the chain is an L2 or a shard of another chain you can link it to the parent chain like this: ```json @@ -61,7 +61,7 @@ If the chain is an L2 you can link it to the parent chain like this: ... "parent": { "type" : "L2", - "parent": "eip155-1", + "chain": "eip155-1", "bridges": [ {"url":"https://bridge.arbitrum.io"} ] } } From fc6deefb59c5971d9bfcaef6d621771fed6f0805 Mon Sep 17 00:00:00 2001 From: ligi Date: Wed, 15 Sep 2021 02:17:29 +0200 Subject: [PATCH 40/41] Add parent field to rinkeby Arbitrum (#420) --- _data/chains/eip155-421611.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/_data/chains/eip155-421611.json b/_data/chains/eip155-421611.json index 70a93c42..77b2d9c0 100644 --- a/_data/chains/eip155-421611.json +++ b/_data/chains/eip155-421611.json @@ -22,5 +22,10 @@ "url": "https://rinkeby-explorer.arbitrum.io", "standard": "EIP3091" } - ] + ], + "parent": { + "type" : "L2", + "chain": "eip155-4", + "bridges": [ {"url":"https://bridge.arbitrum.io"} ] + } } From 560bb6ea6b05d93d722e20271cd1e0a099c0e473 Mon Sep 17 00:00:00 2001 From: loglos <31063492+loglos@users.noreply.github.com> Date: Wed, 15 Sep 2021 12:35:59 +0800 Subject: [PATCH 41/41] Update HPB Mainnet information (#422) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update eip155-269.json Hello! I'd like to request to update High Performance Blockchain information。 At present, the RPC node information is updated to https://hpbnode.com Please approve. Tks * Update eip155-269.json Fixed Explorer attribute information. * Update eip155-269.json Updata info * Update _data/chains/eip155-269.json Co-authored-by: ligi --- _data/chains/eip155-269.json | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/_data/chains/eip155-269.json b/_data/chains/eip155-269.json index a6e7142e..bb386d9b 100644 --- a/_data/chains/eip155-269.json +++ b/_data/chains/eip155-269.json @@ -3,17 +3,26 @@ "chain": "HPB", "network": "mainnet", "rpc": [ - "https://hpb.app" + "https://hpbnode.com", + "wss://ws.hpbnode.com" + ], + "faucets": [ + "https://myhpbwallet.com/" ], - "faucets": [], "nativeCurrency": { "name": "High Performance Blockchain Ether", "symbol": "HPB", "decimals": 18 }, - "infoURL": "https://hpbscan.org/", + "infoURL": "https://hpb.io", "shortName": "hpb", "chainId": 269, - "networkId": 100, - "slip44": 269 + "networkId": 269, + "slip44": 269, + "explorers": [{ + "name": "hpbscan", + "url": "https://hpbscan.org/", + "standard": "EIP3091" + }] + }