Skip to content

Add bug issue templates (#758)#784

Merged
nothingmuch merged 1 commit intopayjoin:masterfrom
thebrandonlucas:issue-templates
Jul 2, 2025
Merged

Add bug issue templates (#758)#784
nothingmuch merged 1 commit intopayjoin:masterfrom
thebrandonlucas:issue-templates

Conversation

@thebrandonlucas
Copy link
Collaborator

@thebrandonlucas thebrandonlucas commented Jun 18, 2025

Copies and makes modifications to Bitcoin Core's
bug issue template where appropriate.

If we'd like I'll make a PR containing the following templates next. This does not take long and with the exception of SECURITY.md can mostly be adapted from Bitcoin Core:

Comment on lines 7 to 9
value: |
## This issue tracker is only for technical issues related to Payjoin Dev Kit.

Copy link
Collaborator Author

@thebrandonlucas thebrandonlucas Jun 18, 2025

Choose a reason for hiding this comment

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

Bitcoin Core's bug template has mentions of where to go for other issues (namely security & general questions/support) here. I think it would be good for us to have those as well, but I wanted to submit the most helpful template first. I think it would also be helpful to add "Good First Issue" template and "Feature Request" templates, all of which can be easily adapted from Bitcoin Core.

Regarding SECURITY.md, I'd need clarification on what info should go there if we're ready to do that. Payjoin seems like an important project to have that in but perhaps we want to have formal security reviews first.

When I do the SECURITY.md file, I'll put that and CONTRIBUTING.md in the root of the repo as initially requested, and to match Bitcoin Core.

@coveralls
Copy link
Collaborator

coveralls commented Jun 18, 2025

Pull Request Test Coverage Report for Build 15933192835

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 36 unchanged lines in 17 files lost coverage.
  • Overall coverage decreased (-0.6%) to 85.506%

Files with Coverage Reduction New Missed Lines %
payjoin-directory/src/lib.rs 1 75.0%
payjoin/src/ohttp.rs 1 70.97%
payjoin/src/receive/mod.rs 1 98.13%
payjoin/src/receive/multiparty/mod.rs 1 89.86%
payjoin/src/receive/v1/mod.rs 1 95.74%
payjoin/src/receive/v2/session.rs 1 94.02%
payjoin/src/send/v1.rs 1 94.7%
payjoin/src/send/v2/mod.rs 1 88.13%
payjoin-test-utils/src/lib.rs 1 94.41%
payjoin-cli/src/app/config.rs 2 81.58%
Totals Coverage Status
Change from base Build 15905219803: -0.6%
Covered Lines: 7262
Relevant Lines: 8493

💛 - Coveralls

Comment on lines 68 to 71
Run `payjoin-cli --version` or `payjoin-directory --version` for the binaries.
For the library crates (`payjoin`, `payjoin-test-utils`, and `payjoin-ffi`),
check your respective package manager file to see which version you have installed.
placeholder: e.g. payjoin-0.23.0 or master@ceef77b
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I could use clarifications on the best wording to put here.

@thebrandonlucas thebrandonlucas changed the title Add bug.yml issue template Add bug.yml issue template (#758) Jun 18, 2025
@thebrandonlucas thebrandonlucas requested a review from DanGould June 18, 2025 19:55
Copy link
Collaborator

@nothingmuch nothingmuch left a comment

Choose a reason for hiding this comment

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

Perhaps we should split this up into two bug templates, one for the payjoin crate, and one for everything else?

For the payjoin crate I think we want to know whether they're using FFI, and if so what host language, etc, what features flags they enabled on the crate, and the rust version.

For everything else, i think what primarily matters whether or not they built it themselves (and if so with what features) or if they're using a binary release or the docker image, and perhaps information about the machine or environment, but I suspect that most issues would be for the payjoin crate where that information is far less likely to be relevant.

@nothingmuch
Copy link
Collaborator

Oops I meant to post a comment review, not request changes since I didn't make concrete suggestions.

@thebrandonlucas
Copy link
Collaborator Author

Perhaps we should split this up into two bug templates, one for the payjoin crate, and one for everything else?

For the payjoin crate I think we want to know whether they're using FFI, and if so what host language, etc, what features flags they enabled on the crate, and the rust version.

For everything else, i think what primarily matters whether or not they built it themselves (and if so with what features) or if they're using a binary release or the docker image, and perhaps information about the machine or environment, but I suspect that most issues would be for the payjoin crate where that information is far less likely to be relevant.

Great points, I can modify it to have one for the payjoin crate and one for the others

@DanGould DanGould force-pushed the master branch 2 times, most recently from 61351cb to 9f403f1 Compare June 20, 2025 20:17
@thebrandonlucas thebrandonlucas force-pushed the issue-templates branch 3 times, most recently from ec8426e to dda9cb4 Compare June 27, 2025 17:16
@thebrandonlucas thebrandonlucas changed the title Add bug.yml issue template (#758) Add bug issue templates (#758) Jun 27, 2025
@thebrandonlucas thebrandonlucas force-pushed the issue-templates branch 2 times, most recently from ca61fac to ac3c9a4 Compare June 27, 2025 18:14
Copied and made modifications to Bitcoin Core's
[bug](https://github.com/bitcoin/bitcoin/blob/master/.github/ISSUE_TEMPLATE/bug.yml)
issue template where appropriate initially.

At @nothingmuch's suggestion, split this into two issue templates:
- `bug-payjoin-crate.yml`, for issues relating to the `payjoin` crate
- `bug-general.yml` for all other issues for other crates

The former focuses on knowing whether the user is using FFI, includes a
dropdown for language choice, asks what feature flags are enabled, etc.

The latter focuses more on how they obtained it (binary, compiled from
source, etc.) and information about the environment.
@thebrandonlucas
Copy link
Collaborator Author

@nothingmuch I split this into two as you suggested. One for the payjoin crate, one for the rest. Let me know what you think

@nothingmuch nothingmuch mentioned this pull request Jun 30, 2025
Copy link
Collaborator

@nothingmuch nothingmuch left a comment

Choose a reason for hiding this comment

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

ACK

I opened a new issue for the log question, I don't think it should block merging of this.

description: |
Please copy and paste any relevant log output. This can be enabled by prefixing `RUST_LOG=debug cargo run ...`

Please be aware that the log might contain personally identifying information.
Copy link
Collaborator

Choose a reason for hiding this comment

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

My main concern with this is that users might not understand the privacy consequences of certain log messages, maybe it's better to suggest info instead of debug until we've scrubbed those, and to warn specifically against trace which is not safe?

Also the RUST_LOG suggestion seems to apply to the tools crates too?

Copy link
Collaborator Author

@thebrandonlucas thebrandonlucas Jun 30, 2025

Choose a reason for hiding this comment

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

My main concern with this is that users might not understand the privacy consequences of certain log messages, maybe it's better to suggest info instead of debug until we've scrubbed those, and to warn specifically against trace which is not safe?

I like that suggestion and can modify that in a subsequent PR

Also the RUST_LOG suggestion seems to apply to the tools crates too?

I like this idea but not all crates are setup with logs. For example payjoin-directory does not output logs when prefixed this way, its' behavior is unmodified

Copy link
Collaborator

Choose a reason for hiding this comment

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

I like this idea but not all crates are setup with logs. For example payjoin-directory does not output logs when prefixed this way, its' behavior is unmodified

Hmm, are you sure? trace level outputs are definitely there, there's not many debug level calls though i think only a serve_payjoin_directory

Copy link
Collaborator

Choose a reason for hiding this comment

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

I forgot to say i created #821

Copy link
Collaborator Author

@thebrandonlucas thebrandonlucas Jul 2, 2025

Choose a reason for hiding this comment

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

Hmm, are you sure? trace level outputs are definitely there, there's not many debug level calls though i think only a serve_payjoin_directory

Ah, it appears I was tricked into this by not seeing any output when I used DEBUG (from this issue). My mistake.

@nothingmuch nothingmuch merged commit da49c64 into payjoin:master Jul 2, 2025
7 checks passed
@nothingmuch
Copy link
Collaborator

I'm in favor

(sorry for leaving this question in the merge commit message)

0xZaddyy pushed a commit to 0xZaddyy/rust-payjoin that referenced this pull request Jul 2, 2025
Copies and makes modifications to Bitcoin Core's

[bug](https://github.com/bitcoin/bitcoin/blob/master/.github/ISSUE_TEMPLATE/bug.yml)
issue template where appropriate.

If we'd like I'll make a PR containing the following templates next.
This does not take long and with the exception of SECURITY.md can mostly
be adapted from [Bitcoin
Core](https://github.com/bitcoin/bitcoin/issues/new/choose):

- [ ] [Feature
Request](https://github.com/bitcoin/bitcoin/blob/master/.github/ISSUE_TEMPLATE/feature_request.yml)
- [ ]
[SECURITY.md](https://github.com/bitcoin/bitcoin/blob/master/SECURITY.md)
- [ ] [Good First
Issue](https://github.com/bitcoin/bitcoin/blob/master/.github/ISSUE_TEMPLATE/good_first_issue.yml)
- [ ] General Question / Support
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.

3 participants