-
Notifications
You must be signed in to change notification settings - Fork 65
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: Feature/8.22.0 #63
Conversation
Testing RPC Commands in v 8.22 Blockchain RPCs
Contol RPC's
Generating RPCs
Mining RPCs
Network RPC's
|
Rawtransactions RPCs
Util RPCs
|
Wallet RPCs
|
TODO-001I finally found some time to validate the block heights for all buried deployments. This is what I came up with:
Preparing a commit now. As always, good took time to validate them. |
I pushed several commits this morning to fix the wrong Difficulty that was printed out when calling Also I fixed several other things such as incorrect computed block versions. Unfortunately, there is still one warning left (versionbit 12 is active and unknown). |
…lock algo version range
…erConfirmationWindow, Rever Changes
Fix "Unknown new rules activated" Error & Uninitialized Variable nMinerConfirmationWindow, Revert Changes
Dandelion removal
complete inv/hash rewrite with dandelion queues Signed-off-by: barrystyle <[email protected]>
…ot enter stempool and effects can be seen immediately
Reimplement Dandelion Transactions
is sufficient to prevent communications with older clients
Need to make sure local Python version matches this for Make Deploy to build the dmg
I have removed all the non-functioning seeders after testing all of them. The list is here: https://1drv.ms/w/s!AsTGLNLt5YBypgS8ljrD5-aSSqol Many of these were not actually DNS Seeders but full nodes. The plan is to replace all these with true DNS Seeders, with each one run by a different member of the community, distributed around the globe. Each person running a Seeder will be making their own PR to add theirs. All these should be DNS Seeders NOT full nodes. This is how Bitcoin does it: https://github.com/bitcoin/bitcoin/blob/07ce278455757fb46dab95fb9b97a3f6b1b84faf/src/chainparams.cpp#L132 I have also added some guidelines on how people should add their Seeder, including their name and Github URL so everyone knows who to contact in the event of a problem. I have also added the testnet seeders setup by myself and @j50ng since there are none working right now. Everyone else will make their own PR to add theirs. This is simply to get the testnet working again at least for this branch. The new list of Seeders can be seen here: https://1drv.ms/w/s!AsTGLNLt5YBypgadXSi16NEPaXes
…multiple boost versions
…s.py: -easypow parameter added for regtest transactions
… as tested in init_tests.cpp by walletinit_verify_walletdir_no_trailing2 and walletinit_verify_walletdir_no_trailing
Bitcoin Core completely ripped out SSL tests as OpenSSL3 changed a ton of stuff and broke many things in core tests.
Fixed remaining Functional tests for 8.22
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tACK. Now that we have the tests finished let's get this merged into develop. Continuing to create a PR into PR's is getting complicated.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tACK
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cACK
All four GitHub Actions finally ran through 🎉🥳
🔥 This is a huge milestone for this pull request (PR) 🔥
However, the PR is not fully finished yet. We have a bunch of things to test thoroughly and several changes to consensus critical parameters to double check.
Throughout the last weeks, while I was working on this PR, I noted down a bunch of different things that are critical to this release:
TODO-001
: Several deployments were moved to buried deployments. New values for the activation block heights were chosen by myself by looking up block heights in the block explorer. Example commit: JaredTate@3c7a7d3Required steps:
DEPLOYMENT_CSV
andDEPLOYMENT_NVERSIONBIPS
(4164302) was chosen correctlyDEPLOYMENT_SEGWIT
(4394880) was chosen correctlyDEPLOYMENT_RESERVEALGO
(7550000) was chosen correctlyTODO-002
: Throughout fixing the automated unit tests for Qt we noticed that the current fee model for DigiByte needed special care. The commit JaredTate@4c03608 increases the incremental relay fee for replacement transactions (BIP 125) by 200x that was required for Rbf. This shouldn't have an impact at all since Rbf is disabled for DigiByte currently.Required steps:
digibyte-tx
anddigibyte-qt
, validate the calculated fee is still correct and transactions will not be rejected by the networkTODO-003
: Validate thatdigibyte-qt
is working properly.Required steps:
digibyte-qt
shows the correct DigiByte network parametersdigibyte-qt
is not crashing when sending a regular transactionTODO-004
: The bitcoin upstream changes caused a big refactoring of internal classes, etc. This forced us to reintegrate Dandelion-specific code, which might have broken Dandelion.-disable-dandelion
arg and non-dandelion transactions can be crafted and broadcasted-disable-dandelion
argTODO-005
: Similar toTODO-004
we need to validate MultiAlgo is working properlyN
consecutive blocks should show the adapting difficulty.TODO-006
: During the merge, Taproot (🚀) was introduced into our codebase. The unit tests already validate that taproot is working as expected.Required steps:
TODO-007
: DigiByte Signet has been added. Validate signet parameters.TODO-008
: Perform a fresh sync in DigiByte Testnet. Ensure that no crashes, no weird warnings and no unexpected behavior occurs.TODO-009
: Perform a fresh sync in DigiByte Mainnet. Ensure that no crashes, no weird warnings and no unexpected behavior occurs. Ensure that the client is not forking.Not saying this list is complete, but it should serve as a perfect starting point.
When most of the tasks are completed, we could soon start the review and aim at an eventual approval.
From that point, we need to double test everything is working properly, add possibly create release candidates and finally distribute signed releases.
Theoretically, we can work on integrating additional features (sync improvements, new mining algorithms?) before creating an official release.