Upgrade of Ethereum JS to v6 has introduced technical debt
See original GitHub issueVarious changes to types and member accessibility in Ethereum JS has required changes to Ganache. In #3656, an amount of technical debt was introduced in order to support the merge.
Including, but not limited to:
any
type assertions- private / protected members accessed from outside of the instance
- weird and convoluted shimming / facade wrapping of level database stuff
@ts-ignore
Issue Analytics
- State:
- Created a year ago
- Comments:7 (7 by maintainers)
Top Results From Across the Web
What to Expect From Ethereum's Next Big Upgrade - CoinDesk
The Ethereum network's next big upgrade "Shanghai" will make it possible to withdraw staked ETH, tying up loose ends from the historic "Merge" ......
Read more >truffleframework - Bountysource
Upgrade of Ethereum JS to v6 has introduced technical debt $ 0 ... Created 3 months ago in trufflesuite/ganache-core with 6 comments. Various...
Read more >InsideTheBlockchain (@inside_theblock) / Twitter
Web3. A new buzzword, or an entire new decentralized internet of persistent ... Report: Technical debt makes 51% of engineers think about quitting ......
Read more >The status of JavaScript outside of the browser: 2018 & beyond.
From the V8 runtime engine update(v6.6), Node.js will also get ... The new tool called 'npx' has been introduced since the 5.2.0 release....
Read more >Web3 middleware: The bet on infrastructures to accelerate ...
js. It includes data for Ethereum (execution layer only), eth 2.0 staking (consensus data only), IPFS, Filecoin, Polygon PoS network, Arbitrum, ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
We should probably rip out api-extractor and rethink our types approach.
A little something to track the remaining work:
Replace homemade “lightweight” block class with ejs’ blockReplace homemade “lightweight” account class with ejs’ accountFix ordering of new tags in tags.tsFix race condition with “does not persist changes to vm or state trie” testSwap out default ejs hashing libraryReplace homemade “lightweight” transaction class with ejs’ transactionsSimplify/document/improve wrappping of level dbReplace homemade “lightweight” address class with ejs’ addressRemove addedany
type assertionsRemove added instances of accessing private/protected members from outside of instanceRemove added@ts-ignore
sOpen PR with ethereumjs to make DB type more generic