Skip to content

Latest commit

 

History

History
45 lines (33 loc) · 2.1 KB

File metadata and controls

45 lines (33 loc) · 2.1 KB

Contributing to BoardOp

Thanks for your interest in improving BoardOp. This is a small, single-maintainer project; issues, bug reports, and pull requests are all welcome.

Before you open a PR

  • File an issue first for anything non-trivial. A quick discussion up front saves rework — especially for changes to the safety gates, the console/OSC contract, or the base rulesets.
  • Say how you tested it. Describe what you ran and, where it applies, what the console actually reported. BoardOp is validated against real grandMA3 behavior, so a note that a command or plugin was confirmed on a desk or on onPC is genuinely useful review material.
  • Don't hand-edit the base rulesets (ma3_ruleset.txt, plugin_ruleset.txt, gui_ruleset.txt) or the harvested corpora under tools/tree/ without saying so in the PR — they are verified against real console behavior and have their own review process.
  • Never commit secrets. config.py is gitignored; only config.example.py is tracked.

Contributions and licensing

BoardOp is released under the Functional Source License 1.1 (FSL-1.1-ALv2). Contributions are accepted under that same license — inbound matches outbound — including the automatic conversion to Apache 2.0 that takes effect two years after each release.

There is no CLA to sign. Instead, certify that you wrote the contribution, or that you otherwise have the right to submit it, by signing off your commits under the Developer Certificate of Origin:

git commit -s -m "your message"

That appends a Signed-off-by: line using the name and email in your git config. You keep the copyright to your own work.

Console-side plugins

The grandMA3 plugins under ma3_plugins/ are licensed under the more permissive MIT License, separately from the rest of the repository, because they are imported into showfiles that users share. Contributions to that directory are accepted under MIT.

Questions

Open an issue — that's the best place for anything that isn't a code change yet.