Revise bug reporting instructions: add instructions and field for debug log, put less emphasis on dump files, request minimal reproducer, and reorder template

This commit is contained in:
JustAnotherArchivist
2023-03-15 01:14:12 +00:00
parent e47fbe3d1f
commit b93cf2640c
2 changed files with 21 additions and 7 deletions

View File

@@ -21,6 +21,7 @@ body:
label: How to reproduce
description: |
How to reproduce the problem.
This should be a minimal reproducible example, i.e. the shortest possible code or the smallest number of steps that still causes the error.
placeholder: e.g. I can reproduce this issue by scraping the textfiles user with the twitter-user scraper.
- type: textarea
validations:
@@ -58,12 +59,28 @@ body:
attributes:
label: Scraper
placeholder: e.g. twitter-user, reddit-search, TwitterSearchScraper, ...
- type: dropdown
validations:
required: true
attributes:
label: How are you using snscrape?
options: ['CLI (`snscrape ...` as a command, e.g. in a terminal)', 'Module (`import snscrape.modules.something` in Python code)']
- type: textarea
validations:
required: false
attributes:
label: Backtrace
description: What is the error snscrape gives you, if any?
- type: textarea
validations:
required: false
attributes:
label: Log output
description: |
Insert here the debug log of snscrape.
If you use the CLI, add the global options `-vv` to the command, e.g. `snscrape -vv twitter-search ...`.
If you use the module, set the debug level in your Python code before any use of snscrape: `import logging; logging.basicConfig(level = logging.DEBUG)`.
If you already use `logging` in your own code, you may need to adjust the level there instead.
- type: textarea
validations:
required: false
@@ -74,12 +91,6 @@ body:
Please note that it may contain identifying info such as IP address, if the website returns that.
You can also optionally request to exchange the file in private.
Finally, if snscrape didn't crash, leave this field blank.
- type: dropdown
validations:
required: true
attributes:
label: How are you using snscrape?
options: ['CLI (`snscrape ...` as a command, e.g. in a terminal)', 'Module (`import snscrape.modules.something` in Python code)']
- type: textarea
attributes:
label: Additional context

View File

@@ -59,7 +59,10 @@ To get the latest 100 tweets with the hashtag #archiveteam:
It is also possible to use snscrape as a library in Python, but this is currently undocumented.
## Issue reporting
If you discover an issue with snscrape, please report it at <https://github.com/JustAnotherArchivist/snscrape/issues>. If possible please run snscrape with `-vv` and `--dump-locals` and include the log output as well as the dump files referenced in the log in the issue. Note that the files may contain sensitive information in some cases and could potentially be used to identify you (e.g. if the service includes your IP address in its response). If you prefer to arrange a file transfer privately, just mention that in the issue.
If you discover an issue with snscrape, please report it at <https://github.com/JustAnotherArchivist/snscrape/issues>. If you use the CLI, please run snscrape with `-vv` and include the log output in the issue. If you use snscrape as a module, please enable debug-level logging using `import logging; logging.basicConfig(level = logging.DEBUG)` (before using snscrape at all) and include the log output in the issue.
### Dump files
In some cases, debugging may require more information than is available in the log. The CLI has a `--dump-locals` option that enables dumping all local variables within snscrape based on important log messages (rather than, by default, only on crashes). Note that the dump files may contain sensitive information in some cases and could potentially be used to identify you (e.g. if the service includes your IP address in its response). If you prefer to arrange a file transfer privately, just mention that in the issue.
## License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.