Start deprecation cycle for `Chain` api to prepare for `Environment` API
- Dominant language
- No language data
- Stars
- 319
- Forks
- 110
- PR merge metrics
- No merged PRs in 30d
Description
WIP
### What is wrong
Populus should not be running geth for users. It's hacky and it's unreliable.
### How can it be fixed.
TODO: explain full solution
Intermediate step: Deprecate all Geth based chains.
Deprecate all of the `Chain` subclasses except `TesterChain`, `TestRPCChain` and `ExternalChain`.
Any use of the deprecated chains should raise a deprecation warning with the following information.
* Statement that they will be removed in a subsequent release.
* Link to API documentation on how to migrate to use `ExternalChain`.
Documentation for migration to `ExternalChain` should include:
* scripts for initializing the genesis chain data
* scripts for running the chain
* scripts for resetting the chain
This should also include updates to the tutorials and other documentation which reference setting up and running local chains or temporary geth chains.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the Chain subclasses, the retained TesterChain, TestRPCChain, and ExternalChain classes, and documentation or tutorials that reference local or temporary geth chains. Confirm the deprecation-warning requirements and migration documentation scope. Done means deprecated chains warn with removal and ExternalChain migration information, with scripts and affected documentation updated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend, blockchain, documentation
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100