Open iquidus opened 3 years ago
Existing network support:
Ethereum network: pre-configured Ethereum Mainnet
--classic Ethereum Classic network: pre-configured Ethereum Classic mainnet
--mordor Mordor network: Ethereum Classic's cross-client proof-of-work test network
--social Ethereum Social network: pre-configured Ethereum Social mainnet
--mix MIX network: pre-configured MIX mainnet
--ethersocial Ethersocial network: pre-configured Ethersocial mainnet
--rinkeby Rinkeby network: pre-configured proof-of-authority test network
--kotti Kotti network: cross-client proof-of-authority test network
--goerli Görli network: pre-configured proof-of-authority test network
--yolov2 YOLOv2 network: pre-configured proof-of-authority shortlived test network.
--ropsten Ropsten network: pre-configured proof-of-work test network
The yolo networks are somewhat pointless for us, however removing adds more future burden than keeping. classic, mordor, kotti, ethereum, rinkeby, ropsten & goerli are obvious keepers.
This leaves social, mix, and ethersocial.
mix: Looking for peers......... social: Looking for peers....... ethersocial: website/roadmap appear to have 0 updates since 2019, however it starts syncing.
Personally I'm not familiar with these networks, are they worth keeping? (at first glance I lean towards nope).
Ethash networks according to whattomine. These will be the easiest additional networks to support due to being ethash or minor ethash variants (similar to etchash). Adding support for everything however wouldnt make much sense (added burden), where to draw the line? Info gathered using github/gitlab links from coingecko.
Ethereum (ETH) - already supported Classic (ETC) - already supported Ubiq (UBQ) - active, uses ubqhash (minor changes to DAG generation) https://github.com/ubiq Dubaicoin (DBIX) - no github updates since 2018 (https://github.com/dubaicoin-dbix) Metaverse (ETP) - looks active (https://github.com/mvs-org) Expanse (EXP) - no github updates since 2018 (https://github.com/expanse-project?tab=repositories) QuarkChain (QKC) - Appears to have become an ERC20 on ETH at some point. Ellaism (ELLA) - Appears somewhat active https://github.com/ellaismproject Callisto (CLO) - Appears somewhat active https://github.com/EthereumCommonwealth Ether-1 (ETHO) - Appears active https://github.com/Ether1Project EtherGem (EGEM) - Appears somewhat active https://gitlab.com/ethergem EtherSocial (ESN) - already supported
removing yolo would be useless as this will happen upstream anyways
think we can remove social and mix and so on
we should not add new networks, unless we want to become a multigeth
One of the fundamental principles of core-geth is that it can support a variety of networks. The changes we've made (though motivated primarily in support of ETC) have all been done with a view toward the "generically applicable," at least as far as the code design goes.
For which networks core-geth should maintain baked-in support for, I would offer heuristics of
As a sidenote, core-geth is a multi-geth iteration, which itself is actually originally an Ellaism project.
The networks noted above (Mix, Social, and Ethersocial) core-geth originally inherited from multi-geth. I'm OK with removing them now for the reasons/state of affairs given above.
@iquidus Is it possible that Mix and Social are still alive chains, but the bootnodes we have for them are out of date?
I'm not saying this is necessarily a good reason for keeping them (since their configurations not being maintained by them here has resulted in their degraded useability), but mostly just curious if its worth it and even possible to get ahold of someone at those chains and gauge interest in continued support here.
related PR: #362
https://github.com/etclabscore/core-geth/issues/288#issuecomment-788354353 is a valid concern.
I just wanted to trigger the discussion with @iquidus and @meowsbits in order to decide what do we want and then close this issue.
With regards MIX, I found that they are not running they own blockchain any more but they run as a substrate on Polkadot. here
I am OK removing support for them. I haven't heard from them ever, and without input and support from anyone in their communities it's beyond our scope at this point.
@iquidus feel free to close it if you agree.
Review currently supported networks.
Phase 1: review existing supported chains, remove any that no longer make sense. Phase 2: explore adding support for additional chains, start by looking at current pools/services using core-geth for direction (what other networks do they also run pools for?)