WIP: next hard fork #5

Draft
BrannonKing wants to merge 178 commits from WIP-HF-2022 into master
BrannonKing commented 2021-08-12 20:09:44 +02:00 (Migrated from github.com)

This hard fork achieves the following changes:

  • Claims never expire
  • Restrictions on claim names will be enforced as part of block validation (as now they are only enforced in the mempool).
  • Some current delay computation bugs will be bypassed.
  • Claims on the empty name will not be included in the trie hash (and won't be bid-provable).
  • The trie hash function will change to include name, bid, sequence, and ClaimID, enabling full proof on any of those.
  • Proof RPC calls will be added to go with the new hash function.
  • Claim delay calculations will use original height rather than last update height?
  • Possible: Trie hash computations will switch to single SHA256 instead of double SHA256?
  • Possible: full support for timelocked utxos?
  • MinFeePerNameclaimChar will go away.
  • 8k bytes name+data cap should go to 12k?
This hard fork achieves the following changes: - [x] Claims never expire - [x] Restrictions on claim names will be enforced as part of block validation (as now they are only enforced in the mempool). - [x] Some current delay computation bugs will be bypassed. - [x] Claims on the empty name will not be included in the trie hash (and won't be bid-provable). - [x] The trie hash function will change to include name, bid, sequence, and ClaimID, enabling full proof on any of those. - [x] Proof RPC calls will be added to go with the new hash function. - [ ] Claim delay calculations will use original height rather than last update height? - [ ] Possible: Trie hash computations will switch to single SHA256 instead of double SHA256? - [ ] Possible: full support for timelocked utxos? - [ ] MinFeePerNameclaimChar will go away. - [ ] 8k bytes name+data cap should go to 12k?
coveralls commented 2021-08-14 16:46:26 +02:00 (Migrated from github.com)

Pull Request Test Coverage Report for Build 1140666604

  • 35 of 304 (11.51%) changed or added relevant lines in 11 files are covered.
  • 2 unchanged lines in 1 file lost coverage.
  • Overall coverage decreased (-0.1%) to 24.973%

Changes Missing Coverage Covered Lines Changed/Added Lines %
blockchain/validate.go 0 1 0.0%
claimtrie/merkletrie/merkletrie.go 0 2 0.0%
claimtrie/node/node.go 8 10 80.0%
claimtrie/node/manager.go 1 7 14.29%
claimtrie/node/hashfunc.go 0 47 0.0%
claimtrie/merkletrie/ramtrie.go 0 48 0.0%
rpcclaimtrie.go 0 52 0.0%
blockchain/claimtrie.go 0 53 0.0%
claimtrie/node/hashfork_manager.go 0 58 0.0%
Files with Coverage Reduction New Missed Lines %
connmgr/connmanager.go 2 85.36%
Totals Coverage Status
Change from base Build 1140608981: -0.1%
Covered Lines: 10360
Relevant Lines: 41484

💛 - Coveralls
## Pull Request Test Coverage Report for [Build 1140666604](https://coveralls.io/builds/42216918) * **35** of **304** **(11.51%)** changed or added relevant lines in **11** files are covered. * **2** unchanged lines in **1** file lost coverage. * Overall coverage decreased (**-0.1%**) to **24.973%** --- | Changes Missing Coverage | Covered Lines | Changed/Added Lines | % | | :-----|--------------|--------|---: | | [blockchain/validate.go](https://coveralls.io/builds/42216918/source?filename=blockchain%2Fvalidate.go#L552) | 0 | 1 | 0.0% | [claimtrie/merkletrie/merkletrie.go](https://coveralls.io/builds/42216918/source?filename=claimtrie%2Fmerkletrie%2Fmerkletrie.go#L256) | 0 | 2 | 0.0% | [claimtrie/node/node.go](https://coveralls.io/builds/42216918/source?filename=claimtrie%2Fnode%2Fnode.go#L118) | 8 | 10 | 80.0% | [claimtrie/node/manager.go](https://coveralls.io/builds/42216918/source?filename=claimtrie%2Fnode%2Fmanager.go#L271) | 1 | 7 | 14.29% | [claimtrie/node/hashfunc.go](https://coveralls.io/builds/42216918/source?filename=claimtrie%2Fnode%2Fhashfunc.go#L59) | 0 | 47 | 0.0% | [claimtrie/merkletrie/ramtrie.go](https://coveralls.io/builds/42216918/source?filename=claimtrie%2Fmerkletrie%2Framtrie.go#L121) | 0 | 48 | 0.0% | [rpcclaimtrie.go](https://coveralls.io/builds/42216918/source?filename=rpcclaimtrie.go#L348) | 0 | 52 | 0.0% | [blockchain/claimtrie.go](https://coveralls.io/builds/42216918/source?filename=blockchain%2Fclaimtrie.go#L174) | 0 | 53 | 0.0% | [claimtrie/node/hashfork_manager.go](https://coveralls.io/builds/42216918/source?filename=claimtrie%2Fnode%2Fhashfork_manager.go#L35) | 0 | 58 | 0.0% <!-- | **Total:** | **35** | **304** | **11.51%** | --> | Files with Coverage Reduction | New Missed Lines | % | | :-----|--------------|--: | | [connmgr/connmanager.go](https://coveralls.io/builds/42216918/source?filename=connmgr%2Fconnmanager.go#L201) | 2 | 85.36% | <!-- | **Total:** | **2** | | --> | Totals | [![Coverage Status](https://coveralls.io/builds/42216918/badge)](https://coveralls.io/builds/42216918) | | :-- | --: | | Change from base [Build 1140608981](https://coveralls.io/builds/42216443): | -0.1% | | Covered Lines: | 10360 | | Relevant Lines: | 41484 | --- ##### 💛 - [Coveralls](https://coveralls.io)
coveralls commented 2021-08-23 19:11:51 +02:00 (Migrated from github.com)

Pull Request Test Coverage Report for Build 1225402214

  • 35 of 304 (11.51%) changed or added relevant lines in 11 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage decreased (-0.05%) to 30.225%

Changes Missing Coverage Covered Lines Changed/Added Lines %
blockchain/validate.go 0 1 0.0%
claimtrie/merkletrie/merkletrie.go 0 2 0.0%
claimtrie/node/node.go 8 10 80.0%
claimtrie/node/manager.go 1 7 14.29%
claimtrie/node/hashfunc.go 0 47 0.0%
claimtrie/merkletrie/ramtrie.go 0 48 0.0%
rpcclaimtrie.go 0 52 0.0%
blockchain/claimtrie.go 0 53 0.0%
claimtrie/node/hashfork_manager.go 0 58 0.0%
Totals Coverage Status
Change from base Build 1225378357: -0.05%
Covered Lines: 12571
Relevant Lines: 41592

💛 - Coveralls
## Pull Request Test Coverage Report for [Build 1225402214](https://coveralls.io/builds/42807783) * **35** of **304** **(11.51%)** changed or added relevant lines in **11** files are covered. * No unchanged relevant lines lost coverage. * Overall coverage decreased (**-0.05%**) to **30.225%** --- | Changes Missing Coverage | Covered Lines | Changed/Added Lines | % | | :-----|--------------|--------|---: | | [blockchain/validate.go](https://coveralls.io/builds/42807783/source?filename=blockchain%2Fvalidate.go#L551) | 0 | 1 | 0.0% | [claimtrie/merkletrie/merkletrie.go](https://coveralls.io/builds/42807783/source?filename=claimtrie%2Fmerkletrie%2Fmerkletrie.go#L257) | 0 | 2 | 0.0% | [claimtrie/node/node.go](https://coveralls.io/builds/42807783/source?filename=claimtrie%2Fnode%2Fnode.go#L118) | 8 | 10 | 80.0% | [claimtrie/node/manager.go](https://coveralls.io/builds/42807783/source?filename=claimtrie%2Fnode%2Fmanager.go#L272) | 1 | 7 | 14.29% | [claimtrie/node/hashfunc.go](https://coveralls.io/builds/42807783/source?filename=claimtrie%2Fnode%2Fhashfunc.go#L59) | 0 | 47 | 0.0% | [claimtrie/merkletrie/ramtrie.go](https://coveralls.io/builds/42807783/source?filename=claimtrie%2Fmerkletrie%2Framtrie.go#L115) | 0 | 48 | 0.0% | [rpcclaimtrie.go](https://coveralls.io/builds/42807783/source?filename=rpcclaimtrie.go#L349) | 0 | 52 | 0.0% | [blockchain/claimtrie.go](https://coveralls.io/builds/42807783/source?filename=blockchain%2Fclaimtrie.go#L189) | 0 | 53 | 0.0% | [claimtrie/node/hashfork_manager.go](https://coveralls.io/builds/42807783/source?filename=claimtrie%2Fnode%2Fhashfork_manager.go#L35) | 0 | 58 | 0.0% <!-- | **Total:** | **35** | **304** | **11.51%** | --> | Totals | [![Coverage Status](https://coveralls.io/builds/42807783/badge)](https://coveralls.io/builds/42807783) | | :-- | --: | | Change from base [Build 1225378357](https://coveralls.io/builds/42807773): | -0.05% | | Covered Lines: | 12571 | | Relevant Lines: | 41592 | --- ##### 💛 - [Coveralls](https://coveralls.io)
This pull request has changes conflicting with the target branch.
  • .github/workflows/basic-check.yml
  • .github/workflows/full-sync-part-1.yml
  • .github/workflows/full-sync-part-2.yml
  • .github/workflows/golangci-lint.yml
  • .github/workflows/release.yml
  • .gitignore
  • .goreleaser.yml
  • Dockerfile
  • README.md
  • blockchain/chain.go
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin WIP-HF-2022:WIP-HF-2022
git checkout WIP-HF-2022

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git checkout master
git merge --no-ff WIP-HF-2022
git checkout WIP-HF-2022
git rebase master
git checkout master
git merge --ff-only WIP-HF-2022
git checkout WIP-HF-2022
git rebase master
git checkout master
git merge --no-ff WIP-HF-2022
git checkout master
git merge --squash WIP-HF-2022
git checkout master
git merge --ff-only WIP-HF-2022
git checkout master
git merge WIP-HF-2022
git push origin master
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: LBRYCommunity/lbcd#5
No description provided.