Pull requests#
This package has two pull-request classes. The first needs a discussion before code. The second can open a pull request directly.
Delivery style (one theme per PR, self-review as a draft, quote replies, keep follow-up ideas in a new issue) follows the Billinge group pull-request practices. The class rule below is the extra gate for widgets: not every change needs an issue first.
Discuss first#
Open an issue, or confirm with a maintainer, before writing the pull request when the change:
adds a new public widget
extracts shared helpers or refactors code that other widgets import
changes a public API, the comm protocol, or the tutorial-data contract
Those changes have side effects on other viewers, docs, release registration, and review load. The discussion decides whether the widget or abstraction belongs in this package, and what the smallest first pull request is.
A new widget then follows Creating a widget.
Incremental (no prior discussion)#
Open a pull request when the change stays inside one existing widget:
a bug fix
a control or option used only by that widget
docs or tests for that widget
Keep the branch to one problem. Use the pull-request template.