Skip to content

Open-source prep: MIT relicense, templates, SPDX headers#43

Merged
siddhss5 merged 1 commit into
mainfrom
chore/open-source-prep
Apr 5, 2026
Merged

Open-source prep: MIT relicense, templates, SPDX headers#43
siddhss5 merged 1 commit into
mainfrom
chore/open-source-prep

Conversation

@siddhss5

@siddhss5 siddhss5 commented Apr 5, 2026

Copy link
Copy Markdown
Contributor

Summary

Prepares tsr for public release. Part of personalrobotics/robot-code#3.

Changes

Licensing

  • LICENSE: BSD-3 (CMU 2016) → MIT (Siddhartha Srinivasa, 2025).
  • pyproject.toml: license = "MIT", authors email → siddhartha.srinivasa@gmail.com, MIT classifier.
  • CONTRIBUTORS.md: credits Berenson/Srinivasa/Kuffner (IJRR 2011) and Michael Koval (CMU 2013).
  • SPDX + copyright header on every .py.

Templates (from robot-code/.github-templates/)

  • LICENSE, CONTRIBUTING.md, SECURITY.md, CODE_OF_CONDUCT.md, .github/CODEOWNERS, .github/pull_request_template.md, .github/ISSUE_TEMPLATE/{bug_report,improvement,task}.md + config.yml.
  • .github/workflows/ci.yml: ruff (check + format) + pytest matrix 3.10/3.11/3.12, astral-sh/setup-uv@v5, repository_dispatch notification step to robot-code on push-to-main.

Code cleanup

  • Removed scripts/migrate_templates.py — one-shot migration, self-documented as "intentionally NOT committed", had a sys.path hack.
  • Moved late import of TSRTemplate in sampling.py to the top (no actual circular dep).
  • Removed unused matplotlib.cm import in examples/mesh_placements.py.
  • Ran ruff check --fix --unsafe-fixes + ruff format across src/tests/examples.
  • Added [tool.ruff] config: 120 line length, F/E/W/I selects, per-file-ignore F401 on __init__.py (public-API re-exports).

Testing

  • uv run pytest tests/ -v — 307 passed
  • uv run ruff check . — All checks passed
  • uv run ruff format --check . — 41 files already formatted

Breaking changes

  • None. Public API unchanged.

Related issues

Part of personalrobotics/robot-code#3

Preparing tsr for public release (see personalrobotics/robot-code#3).

Licensing:
- LICENSE: relicensed to MIT, Copyright (c) 2025 Siddhartha Srinivasa.
- pyproject.toml: license = "MIT", authors email updated to
  siddhartha.srinivasa@gmail.com, classifier updated.
- CONTRIBUTORS.md: credits Berenson/Srinivasa/Kuffner (IJRR 2011) and
  Michael Koval (CMU 2013) for the original TSR work.
- SPDX-License-Identifier + Copyright header on every .py file.

Templates (synced from robot-code/.github-templates/):
- LICENSE, CONTRIBUTING, SECURITY, CODE_OF_CONDUCT (links to Contributor
  Covenant 2.1), .github/CODEOWNERS, pull_request_template,
  ISSUE_TEMPLATE/{bug_report,improvement,task}.md + config.yml,
  .github/workflows/ci.yml (ruff + pytest matrix 3.10/3.11/3.12).

Code cleanup:
- Removed scripts/migrate_templates.py (one-shot, dead, had sys.path hack).
- Moved late import in sampling.py to top of file (template -> TSR cycle
  is actually acyclic).
- Removed unused matplotlib.cm import in examples/mesh_placements.py.
- ruff check --fix + ruff format across src/, tests/, examples/.
- Added [tool.ruff] section to pyproject.toml with 120 line length and
  per-file-ignores for __init__.py F401 (public API re-exports).

Verified: 307 tests pass, ruff check clean, ruff format clean.
@siddhss5 siddhss5 merged commit f46df56 into main Apr 5, 2026
1 of 4 checks passed
@siddhss5 siddhss5 deleted the chore/open-source-prep branch April 5, 2026 23:21
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.

1 participant