-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Change litemode from disabling all Dash specific features to disabling governance validation #3488
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
Conversation
src/rpc/privatesend.cpp
Outdated
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.
code reading suggestion: use gArgs.GetBoolArg("-enableprivatesend", false) as this example:
https://github.com/dashpay/dash/blob/develop/src/wallet/wallet.cpp#L906
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.
this shouldn't be the case. That second argument is the default, what this line is saying is if "-enableprivatesend" isn't specified, assume that privatesend is enabled, so that someone would have to specifically disable privatesend with "-enableprivatesend=0"
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.
you are right, i thought that was comparing but the second argument is the default value indeed
UdjinM6
left a comment
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.
See below + should tweak few lines with !fLiteMode && settings.value("fShowMasternodesTab").toBool() (drop !fLiteMode && part) in src/qt/bitcoingui.cpp and rc/qt/walletview.cpp.
|
see latest commits: have not tested yet |
thephez
left a comment
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.
If this PR renders #3478 changes inaccurate those messages (re: litemode) should be removed.
|
Excellent PR, thank you Pasta for looking into this. Not only would this benefit normal users on the desktop, the breakthrough here could show the way forward for privatesend on native mobile apps. 0.15 Lite mode downloads full blockchain. #3341 |
|
I think all has been resolved |
Signed-off-by: Pasta <[email protected]>
…must be MN, so must have litemode off already Signed-off-by: Pasta <[email protected]>
…er dash features Signed-off-by: Pasta <[email protected]>
Signed-off-by: Pasta <[email protected]>
Signed-off-by: Pasta <[email protected]>
Signed-off-by: Pasta <[email protected]>
Signed-off-by: Pasta <[email protected]>
Signed-off-by: pasta <[email protected]>
Signed-off-by: pasta <[email protected]>
Signed-off-by: pasta <[email protected]>
8ebbf9b to
299e6d3
Compare
|
A couple more fixes are needed imo, pls see https://github.com/UdjinM6/dash/commits/pr3488 |
|
Looks good, cherry-picked |
UdjinM6
left a comment
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.
Seems to be working as expected 👍
Slightly tested ACK
xdustinface
left a comment
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.
Looks good 👍
utACK
|
Is there any chance this could be included in 0.16? I think it could be useful to allow us to use it as beta testers, then maybe make a bigger announcement for it in 0.17. |
|
Hmm, yeah. I think it probably makes sense to include in 0.16 now... Thoughts @UdjinM6? |
Agree, changes look trivial-ish. Tweaked the milestone. |
…g governance validation (dashpay#3488) * enable privatesend by default in litemode Signed-off-by: Pasta <[email protected]> * remove useless litemode check in CPrivateSendServer::ProcessMessage, must be MN, so must have litemode off already Signed-off-by: Pasta <[email protected]> * change litemode to mean, doesn't validate governance, but has all other dash features Signed-off-by: Pasta <[email protected]> * litemode must be off for MNs cont Signed-off-by: Pasta <[email protected]> * change litemode help text Signed-off-by: Pasta <[email protected]> * don't skip MN sync in litemode Signed-off-by: Pasta <[email protected]> * drop fLiteMode in bitcoingui.cpp Signed-off-by: Pasta <[email protected]> * skip governance sync in litemode Signed-off-by: pasta <[email protected]> * remove fLiteMode in walletview.cpp Signed-off-by: pasta <[email protected]> * add back Signed-off-by: pasta <[email protected]> * fix comments * fix cache loading * fix scheduled tasks * Fix help text for some rpcs (revert what's left of 3478) Co-authored-by: UdjinM6 <[email protected]>
|
backported in #3670 |
…g governance validation (dashpay#3488) * enable privatesend by default in litemode Signed-off-by: Pasta <[email protected]> * remove useless litemode check in CPrivateSendServer::ProcessMessage, must be MN, so must have litemode off already Signed-off-by: Pasta <[email protected]> * change litemode to mean, doesn't validate governance, but has all other dash features Signed-off-by: Pasta <[email protected]> * litemode must be off for MNs cont Signed-off-by: Pasta <[email protected]> * change litemode help text Signed-off-by: Pasta <[email protected]> * don't skip MN sync in litemode Signed-off-by: Pasta <[email protected]> * drop fLiteMode in bitcoingui.cpp Signed-off-by: Pasta <[email protected]> * skip governance sync in litemode Signed-off-by: pasta <[email protected]> * remove fLiteMode in walletview.cpp Signed-off-by: pasta <[email protected]> * add back Signed-off-by: pasta <[email protected]> * fix comments * fix cache loading * fix scheduled tasks * Fix help text for some rpcs (revert what's left of 3478) Co-authored-by: UdjinM6 <[email protected]>
This does a couple of things, it's an alternative to #3484, and works on #3485.
This changes litemode from "disable almost all Dash stuff" to "disable governance validation"
With this change I was able to start a node with
./src/qt/dash-qt --testnet --litemode --txindex=0 --prune=945allowing me to mix, have IS/CL stuff and do almost full validation, all while not needing txindex and while not saving the whole chain on disk.