Files
heuropt/.github/PULL_REQUEST_TEMPLATE.md
swaits fa3f2e8fb0 feat: v0.5.0 — comprehensive documentation release
Theme: documentation and project polish. No public-API changes; this
is the v0.5 release that elevates heuropt's docs/onboarding/governance
to bar-setting status.

Adds:
- mdbook user guide at docs/book/ with intro, getting-started,
  defining-problems, choosing-an-algorithm, cookbook (7 recipes),
  comparison vs other libraries, stability/SemVer, migration guides.
  Deploys to https://swaits.github.io/heuropt/ via .github/workflows/
  docs.yml.
- Runnable rustdoc examples on every algorithm (35 of them), all
  exercised by cargo test --doc.
- Three real-world examples: portfolio.rs (multi-obj with budget
  constraint), hyperparam_tuning.rs (BO + TPE), scheduling.rs
  (permutation via SA + SwapMutation against Smith's-rule oracle).
- Governance: CONTRIBUTING.md, SECURITY.md, CODE_OF_CONDUCT.md
  (adopting builderscode.org's Builder's Code of Conduct), GitHub
  issue templates, PR template.

Polishes:
- README hero with badges + user-guide link.
- lib.rs crate-level docs.
- CHANGELOG entry for 0.5.0.

Bumps Cargo.toml to 0.5.0.
2026-05-05 14:33:12 -06:00

33 lines
968 B
Markdown

<!--
Thanks for the contribution! Please skim CONTRIBUTING.md if you
haven't yet — it has the local-test checklist and the conventional-
commits requirement.
-->
## What
<One- or two-sentence summary. Focus on the *what* and *why*, not
the *how*.>
## Why
<Motivation. Link the issue this resolves with `Closes #N` if
applicable.>
## Checklist
- [ ] `cargo fmt --all`
- [ ] `cargo clippy --all-targets --all-features -- -D warnings`
- [ ] `cargo test` and `cargo test --all-features`
- [ ] `cargo doc --no-deps --all-features` (with `-D warnings`)
- [ ] Conventional-commit subject(s) (`<type>(<scope>): <summary>`)
- [ ] If touching algorithm output: confirmed bit-identical results
via `cargo run --release --example compare`
- [ ] If perf change: included gungraun before/after numbers in the
commit message
- [ ] Updated CHANGELOG.md under `[Unreleased]` if user-visible
## Anything else
<Caveats, follow-ups, screenshots, perf numbers, etc.>