Rework Software Expiry #134
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As an alternative to #124.
bitcoind
andbitcoin-qt
.bitcoind
startup failure message for expired software.bitcoin-qt
startup error message for expired software with an input box requiring the user to typeI accept this software may be unsafe.
to continue (overriding expiry this way updates configuration).bitcoind
orbitcoin-qt
expire at runtime, rather than silently rejecting blocks.The rationale for these changes is largely explained by my comments on the above-linked PR. I considered using the same prompt at runtime as at startup for
bitcoin-qt
, but the churn required was much higher with minimal benefit (as it stands, the software pops up a dialog telling the user the software is expired, on closing,bitcoin-qt
exits, and if the user tries to start it again, they get the override prompt).As a brief summary:
bitcoind
, shutting down with an error message telling the user how to override is effectively identical to pushing a prompt for continued operation when running attached to a terminal and, when not running attached to a terminal (eg disowned, or under a service manager), a prompt cannot be displayed anyway.bitcoin-qt
now gives the user the opportunity to override without going and manually editing the configuration files, without simply showing them a dialog they can hit yes on to continue without thinking about anything.