Skip to content
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

Remove BIP70 payment requests #3466

Open
wants to merge 3 commits into
base: 1.15.0-dev
Choose a base branch
from

Conversation

patricklodder
Copy link
Member

@patricklodder patricklodder commented Mar 2, 2024

Removes:

  • all BIP70 functionality, while fully retaining BIP21 functionality
  • all BIP70 tests and the compatibility test for protobuf's bswap_16, bswap_32 and bswap_64
  • protobuf as a compile-time requirement

This does not (yet) change:

  • the depends system
  • documentation

Besides CI targets, I've tested this extensively on macOS and some Ubuntu Jammy with Qt 5.12.

Should get extensive review, and it would be good to wait a little with moving forward with this in case we get any feedback re: BIP70 removal from the 1.14.7 release.

@patricklodder patricklodder requested a review from a team March 2, 2024 22:17
@patricklodder patricklodder force-pushed the 1.15.0-remove-bip70 branch 2 times, most recently from 279baa3 to 4a352ad Compare March 9, 2024 00:08
@patricklodder patricklodder marked this pull request as ready for review March 9, 2024 00:09
@patricklodder patricklodder added this to the 1.15.0 milestone Mar 9, 2024
@patricklodder patricklodder added this to 🚀 needs review in Review & merge board Mar 9, 2024
@patricklodder
Copy link
Member Author

patricklodder commented Mar 9, 2024

Found 3 issues with remaining OpenSSL/proxy includes while cleaning up depends. Added these separately.

Completely removes BIP70 support from Dogecoin Qt code.

Also removes protobuf-compatibility tests as these rely on
paymentserverplus code and any TLS related configuration.
Protobuf was only needed for BIP70 payment requests
@patricklodder
Copy link
Member Author

Squashed the additional commits. The pre-squash version of this PR can be found at patricklodder:3466-iter-1.

I think this is as ready for review as it will get, assuming 3 PRs:

  1. changing code and build system (this PR)
  2. depends system (depends: remove bip70-related artifacts from depends #3474)
  3. docs (tbd)

Comment on lines -351 to +350
paymentServer = new PaymentServer(this, true, GetBoolArg("-enable-bip70", false));
paymentServer = new PaymentServer(this, true);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not for now, but we'll want to remember we once supported this flag when we move to 1.21 or reimplement/cherry-pick the code that checks for unsupported CLI arguments.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added your note to #1313

Comment on lines +280 to +285
if (rcp.label.length() > CHARACTERS_DISPLAY_LIMIT_IN_LABEL)
{
recipientElement = tr("%1 to %2").arg(amount, address);
displayedLabel = displayedLabel.left(CHARACTERS_DISPLAY_LIMIT_IN_LABEL).append("..."); // limit the amount of characters displayed in label
}
recipientElement = tr("%1 to %2").arg(amount, GUIUtil::HtmlEscape(displayedLabel));
recipientElement.append(QString(" (%1)").arg(address));
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a chance the length of the recipient element will exceed the display limit after the substitution?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We lowered the limit to fit the .... Note that this is move-only (indentation) for this PR

@chromatic
Copy link
Member

All tests pass on x86-64. Conditional approval, provided an answer to the question about label length and the removal of --enable-bip70 from src/init.cpp's help message.

@patricklodder
Copy link
Member Author

the removal of --enable-bip70 from src/init.cpp

Thanks! Removed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Review & merge board
🚀 needs review
Development

Successfully merging this pull request may close these issues.

None yet

2 participants