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 std::SystemTime from create_phantom_invoice, ref #1978 #1985

Merged

Conversation

Kurtsley
Copy link
Contributor

Also added the "can be used in no_std environment" to the comments above the functions.

@jkczyz
Copy link
Contributor

jkczyz commented Jan 25, 2023

@TheBlueMatt Do we still want a version that uses SystemTime?

@TheBlueMatt
Copy link
Collaborator

I don't have a super strong opinion. I'm pretty annoyed at how many util methods there are in this file, so I kinda like the idea of not adding new ones (and I expect phantom invoice users can figure out how to get the current time), but of course its also nice to not have to supply something that we can figure out for the user...absent a strong opinion I'm happy to move forward as-is.

@TheBlueMatt
Copy link
Collaborator

The #[cfg(feature = "std")] bound on the use...PhantomRouteHints needs to be removed.

@TheBlueMatt
Copy link
Collaborator

Please squash the fixup into the first commit as described at https://github.com/bitcoin/bitcoin/blob/master/CONTRIBUTING.md#squashing-commits While you're at it, it would be nice to have an explanation of why you're removing the SystemTime from create_phantom_invoice - something about nostd.

@codecov-commenter
Copy link

codecov-commenter commented Jan 26, 2023

Codecov Report

Base: 90.91% // Head: 90.91% // No change to project coverage 👍

Coverage data is based on head (d4de913) compared to base (d4de913).
Patch has no changes to coverable lines.

❗ Current head d4de913 differs from pull request most recent head afa0480. Consider uploading reports for the commit afa0480 to get more accurate results

📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1985   +/-   ##
=======================================
  Coverage   90.91%   90.91%           
=======================================
  Files          99       99           
  Lines       52505    52505           
  Branches    52505    52505           
=======================================
  Hits        47735    47735           
  Misses       4770     4770           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@TheBlueMatt TheBlueMatt linked an issue Jan 26, 2023 that may be closed by this pull request
@TheBlueMatt
Copy link
Collaborator

You need to replace the .current_timestamp call in _create_phantom_invoice as its not available in no-std.

@Kurtsley
Copy link
Contributor Author

I'm thinking of just adding another function called timestamp_no_std or something and basically copying the current timestamp function over minus SystemTime. I'm obviously having trouble testing this in a no_std environment. My apologies.

…it#1978

Replace current_timestamp call with no-std duration_from_epoch
Comment on lines +44 to +46
///
/// ['std::time::SystemTime'] has been removed to allow this function to be used in a 'no_std' environment,
/// where [`std::time::SystemTime`] is not available and the current time is supplied by the caller.
Copy link
Contributor

Choose a reason for hiding this comment

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

Can this (and the one below) not just be part of the release notes?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Yea, good point, we shouldn't phrase docs in terms of "changes made", they should describe what the function does now.

Copy link
Collaborator

@TheBlueMatt TheBlueMatt left a comment

Choose a reason for hiding this comment

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

LGTM aside from @dunxen's comment about docs referring to changes. Happy to land as-is if you prefer and we can clean up the docs later, just let me know what you prefer @Kurtsley.

@Kurtsley
Copy link
Contributor Author

I say merge this and I can open a seperate PR to deal with the docs. Should be able to deal with that tonight.

@TheBlueMatt TheBlueMatt merged commit 437cc69 into lightningdevkit:main Jan 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

no-std version of create_phantom_invoice
5 participants