4.9 KiB
name, about
| name | about |
|---|---|
| Bug Report | If something isn't working as expected. |
Bug Report
Steps to Reproduce:
Please provide a full reproduction of the issue. There are three ways we accept repros:
-
If the issue you are reporting is a UX/UI issue which can be recreated by visiting a Perspective demo hosted by the project itself, and any dataset required to reproduce the error can be included in the report. In this case, please provide detailed step-by-step instructions on how to reproduce, including any screenshots which help illustrate, as well as including any fully-encoded test data we may need.
-
If you are reporting a build or installation issue with the library itself, which can be recreated from a shell. In this case, please provided detailed code blocks describing how you tried to install, which commands were issued, including and dependencies you needed to install and hwo you installed them.
-
If you are reporting a anything else, including but not limited to:
- Build issues which require any metadata files e.g. a
package.json,Cargo.toml, etc - Bundler or packaging errors with JavaScript
- Library functions which return the wrong results or error
- CPU or memory usage performance regressions, or regressions in thread utilization
In this case, we require a complete reproduction of the issue in the form of a repository. Quoting this exceptional definition from @Rich-Harris's micro-essay on Repros, please follow these guidelines:
- Create a sample repo on GitHub (or wherever)
- Demonstrate the problem, and nothing but the problem. If the app where you're experiencing the issue happens to use Gulp, I don't care, unless the problem involves Gulp. Remove that stuff. Whittle it down to the bare minimum of code that reliably demonstrates the issue. Get rid of any dependencies that aren't directly related to the problem.
- Install all your dependencies to
package.json. If I can't clone the repo and donpm install && npm run build(or similar – see point 4) to see the problem, because I need some globally installed CLI tool or whatever, then you've made it harder to get to the bottom of the issue. - Include instructions in the repo, along with a description of the
expected and actual behaviour. Obviously the issue should include
information about the bug as well, but it's really helpful if
README.mdincludes that information, plus a link back to the issue. If there are any instructions beyondnpm install && npm run build, they should go here.
Some examples which do not qualify as complete and are mostly useless to us for debugging:
- Instructions which ask us to visit a website or download an application, even if it is completely open source (and expecially if it is not)
- Instructions which just describe how to create a project, e.g. with a specific build tool or template
- Screenshots of exceptions
- Screenshots of code
- Code snippets copied from a larger application context
- Build issues which require any metadata files e.g. a
Expected Result:
Describe what you expected to see. If you are reporting a UX/UI error, this may include screenshots with annotations.
Actual Result:
Describe what actually happened, with special attention to the errant behavior. Always include:
- OS and version
- Platform/language + version
If you are reporting a UX/UI error:
- (if websocket) Platform/language + version of remote perspective server.
- Full exception/error message if applicable.
- Any potentially relevent JavaScript developer console error logs.
- Screenshots of the UI in an obviously broken state. (but please try to avoid screenshots of your code, see below)
If you are reporting a library error:
- (if websocket) Platform/language + version of remote perspective server.
- Full exception error capture (please include the entire stack trace, including "caused by" entries), log entries, etc. where appropriate. Please avoid posting screenshots of code (which we may need to debug).
If you are reporting a build or install error:
- Full error output from running your repro, formatted as a code block (please do not include screenshots of build logs).
Environment:
For JavaScript (browser):
@perspective-dev/clientversion- Browser and version
- OS
- (if websocket) Language/version/OS of perspective server
For Node.js:
nodeversion- OS
For Python
pythoninterpreter version (Only CPython).- package manager and version (conda/pip/*)
- Are you compiling from an sdist of wheel?
- Platform and version (Jupyter/tornado/lib/*)
- OS
Additional Context:
Add any other context about the problem here.