Changelog
All notable changes to this project will be documented in this file.
[1.0.1] - 2026-04-15
Section titled “[1.0.1] - 2026-04-15”- README example —
DurninWomersleyquick-start usedskinfolds=keyword argument, which raisedTypeErroragainst the*argssignature. Switched to positional form. ActivityLeveldocumentation —docs-library/meal-planning.mdlisted"light"and"extra"as accepted values; only"sedentary","moderate", and"very"exist on the enum. Corrected the accepted-values table.
Changed
Section titled “Changed”- Author metadata updated to
jeffallan(https://jeffallan.github.io); removes stale attribution from the original v0.1.x package author. - Package description and marketing copy reframed from “ACSM-sourced equations” to “validated, research-backed equations” across README, PyPI description, marketplace metadata, and the docs site landing page. Deep scholarly references (equation-source citations in reference docs) kept intact.
- README header — new capsule-render banner (sky blue → amber gradient), stats line, and shields.io badge row (PyPI version, Python versions, license, Claude Code Plugin, stars, CI). Matches style of sibling repos.
- Docs-site landing page — real install commands (
/plugin marketplace add+npx skills add) replace the stubclaude installcommand. - Terminology unified on “Agent Skills” (capitalized) across README and docs site.
Infrastructure
Section titled “Infrastructure”- Release workflow —
actions/configure-pages@v5now passesenablement: trueso GitHub Pages auto-initializes on first run; future releases don’t require manual Pages-enable gymnastics. - CI now triggers on PRs to
develop(previously master-only) and declaresworkflow_callsorelease.ymlcan reuse it. - Package build config — explicit
[tool.setuptools.packages.find]ensures onlyfitness_tools/ships; preventssite/,skills/, anddocs-library/from confusing setuptools flat-layout auto-discovery.
[1.0.0] - 2026-02-27
Section titled “[1.0.0] - 2026-02-27”- Type system:
StrEnumenums (Sex,BodyType,ActivityLevel,Goal) replace raw strings - Frozen dataclasses:
BodyCompositionResult,MacroTargets,RepEstimatefor structured return values - Centralized validation module (
fitness_tools/validation.py) with shared input checks - CI pipeline: GitHub Actions with ruff linting, mypy strict type checking, and pytest matrix (Python 3.11/3.12/3.13)
- Claude skills plugin: 3 specialized skills (body-composition, rep-max, meal-planner) with YAML frontmatter and reference files
- Documentation site: Astro + Starlight on GitHub Pages, replacing Sphinx/Read the Docs
py.typedmarker for PEP 561 typed package support
- 11-rep bug:
RM_Estimatornow correctly handles 11 repetitions (was off-by-one in percentage table lookup)
Changed
Section titled “Changed”- Migrated build system from
setup.pytopyproject.toml - All documentation converted from RST to Markdown
- Minimum Python version raised to 3.11 (from 3.6)
- Package status promoted to “Production/Stable”
[0.1.1] - 2018-07-28
Section titled “[0.1.1] - 2018-07-28”- Links in README
[0.1.0] - 2018-07-27
Section titled “[0.1.0] - 2018-07-27”- Initial release
- Body composition calculations (Durnin-Womersley, Jackson-Pollock 3/4/7-site)
- Rep max estimation using ACSM percentage table
- Macronutrient meal planning by body type