MyTraL 1.57.0#130
Merged
Merged
Conversation
… to reasonable human muscle map (#125)
…arts page, adding tooltip w/ everest % to last vs. this; fixing cleanup on .deb build
Contributor
There was a problem hiding this comment.
Pull request overview
Release PR for MyTraL 1.57.0, updating packaging/distribution artifacts and shipping new user-facing functionality (bookmarks, elevation tracking, updated mannequin + calibrated muscle heatmap).
Changes:
- Bump versioning and distro packaging (Snap strict vs classic, Ubuntu PPA/deb tooling, updated install docs).
- Add activity bookmarks feature end-to-end (model, dataset persistence/cache, routes, templates, tests).
- Add elevation as a tracked/comparable aspect (stats, heatmaps, charts, UI, tests) and revamp mannequin/muscle heatmap calibration.
Reviewed changes
Copilot reviewed 69 out of 69 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| webs/www.mytral.fitness/index.html | Update Linux download links (Flatpak/Snap). |
| webs/www.mytral.fitness/.htaccess | Add hosting config + HTML cache revalidation headers. |
| tests/test_stats_elevation.py | New tests for cumulative elevation totals. |
| tests/test_settings_symptoms_bootstrap.py | Update symptom bootstrap test to new body-parts constant. |
| tests/test_run_desktop.py | New tests for portal-browser desktop mode selection. |
| tests/test_muscle_heatmap.py | New tests for calibrated muscle heatmap logic. |
| tests/test_bookmarks.py | New tests for activity bookmarks persistence and ordering. |
| tests/test_body_status.py | Tests for body-part mapping + validation helper. |
| tests/test_anatomy.py | New tests for generated anatomy geometry + mannequin macro. |
| snap/snapcraft.yaml | Bump version; switch to strict confinement and add plugs/env. |
| README.md | Update badges + installation links. |
| pyproject.toml | Ruff per-file ignore for generated anatomy SVG path literals. |
| mytral/views.py | Add elevation aggregation to calendar heatmap + weekly stats. |
| mytral/version.py | Bump app version to 1.57.0. |
| mytral/templates/this-vs-last.html | Add elevation aspect selectors + description update. |
| mytral/templates/macros/activity_list_table.html | New reusable activity list table macro (incl. bookmark mode). |
| mytral/templates/layout.html | Add “Bookmarks” navigation entry. |
| mytral/templates/day-get.html | Pass heatmap flag to mannequin macro. |
| mytral/templates/charts-year.html | Add elevation and cumulative elevation chart selectors. |
| mytral/templates/activity-list-year.html | Refactor year list/table view to use shared macro. |
| mytral/templates/activity-get.html | Add bookmark/unbookmark button to activity details page. |
| mytral/templates/activity-bookmarks.html | New bookmarks page template. |
| mytral/stats.py | Add elevation support to month/year totals. |
| mytral/static/mytral.css | Update mannequin styling and heatmap intensity palette. |
| mytral/static/documentation/licenses.html | Add react-native-body-highlighter license section. |
| mytral/static/documentation/installation.html | Update installation docs (strict snap + classic snap + flatpak). |
| mytral/static/documentation/credits.html | Add credit for react-native-body-highlighter. |
| mytral/settings.py | Public body-part mapping + validator; add UserBookmarks container. |
| mytral/run_desktop.py | Support portal browser mode for sandboxed packaging. |
| mytral/routes.py | Expose anatomy globals to templates; bookmarks routes; heatmap calibration wiring; elevation charts routing. |
| mytral/recordings/tcx_extractor.py | Rename avg-speed based activity type guessing call. |
| mytral/recordings/gpx_extractor.py | Rename avg-speed based activity type guessing call. |
| mytral/muscle_groups.py | Add calibrated daily muscle heatmap computation utilities. |
| mytral/integrations/polar_hrm.py | Rename avg-speed based activity type guessing call. |
| mytral/desktop_browser.py | New helper for portal-browser mode selection. |
| mytral/commons.py | Rename helper to avg-speed naming; add ELEVATION stats aspect. |
| mytral/charts.py | Add elevation chart type + Everesting reference line + tooltips. |
| mytral/blueprints/symptom_types_crud.py | Validate submitted body-part ids server-side. |
| mytral/blueprints/health_uri_space.py | Use centralized BODY_PARTS_BY_REGION mapping. |
| mytral/backends/datasets/dataset_json.py | Persist bookmarks JSON; self-heal missing file; clean stale bookmarks. |
| mytral/backends/dataset.py | Add bookmarks API to dataset facade. |
| mytral/backends/caches/_cache_passthrough.py | Add bookmarks cache pass-through methods. |
| mytral/backends/caches/_cache_inmemory.py | Add bookmarks cache storage + eviction + sizing. |
| mytral/backends/cache.py | Extend cache interface for bookmarks. |
| Makefile | Add UBUNTU_VERSION param; split strict vs classic snap targets; improve PPA targets. |
| make/anatomy/build_anatomy.py | New anatomy generator from upstream SVG path data. |
| licenses/react-native-body-highlighter.txt | Add MIT license text for upstream geometry source. |
| INSTALLATION.md | Update install/build instructions (snap store vs download, flatpak, etc.). |
| docs/LICENSES.md | Add react-native-body-highlighter license text. |
| docs/INSTALLATION.md | Mirror installation doc updates for docs site. |
| docs/CREDITS.md | Mirror credits update for docs site. |
| docs/CHANGELOG.md | Add 1.57.0 release notes. |
| CREDITS.md | Add react-native-body-highlighter contributor credit. |
| CHANGELOG.md | Add 1.57.0 release notes. |
| build/ubuntu/launchpad-release.sh | Support per-Ubuntu-version builds/uploads; rename DRY_RUN -> SKIP_UPLOAD. |
| build/ubuntu/debian/rules | Prevent dh_auto_clean from deleting tracked top-level build/ directory. |
| build/ubuntu/debian/postrm | Remove uv-managed runtime artifacts on package remove. |
| build/ubuntu/debian/postinst | Use uv to provision Python 3.12; checksum-verify uv download; clearer failures. |
| build/ubuntu/debian/control | Update arch + dependencies to match uv-based install. |
| build/snap/mytral-strict | New strict confinement launcher entrypoint. |
| build/snap/build-snap.sh | Build-copy version injection; add classic transform path. |
| build/snap/apply-classic.sh | Deterministic strict->classic snapcraft.yaml transformer. |
| .github/copilot-instructions.md | Convert wording to ASCII-only punctuation; update module map formatting. |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR brings MyTraL 1.57.0 release.