MyTraL 1.50.0
This MyTraL release is very special to me. After years of coding and hacking
together various versions of MyTraL I am moving to a brand-new Git repository on my 50th
birthday.
Sports have been my main hobby for 40 years - I have 30 years of training data scattered
across everything from paper logs to MyTraL. Today, I’m starting a fresh chapter - free
from hacks, sensitive data and the "sins of my youth."
Channeling Steve Prefontaine energy today - pure heart, max effort, FLOSS execution!
Added
- Added polyline with map background to the activity feed.
- Added rainbow polyline w/ running dot to the activity feed.
- Added elevation chart to the activity feed.
- Added "maximize map" action to the activity view page.
- Added description field to symptoms so that user can specify how to cure such injury
or illness. - Added import of Strava bulk user export ZIP archive (activities, GPX/TCX recordings,
photos). - Added TCX import (individual files and directory of recordings/archives).
- Added
genderfield to the athlete profile in order to calculate metrics like TRIMP
more accurately. - Added TRIMP calculation and chart to the
Progressmenu. - Added FIT directory import - import all FIT files from a local directory in one go,
with automatic conflict detection and parquet generation. - Bulldozer framework - a multiprocessing-based sandboxed job runner for
parallelizing CPU-bound import workloads across multiple cores. - GPX polyline encoding with 2 selectable methods: fast distance-based sampling
(default) and legacy RDP-based simplification for preview rendering. New GPX polyline
encoding is ~4000× faster with the new distance-based sampling method - the default
for all recording import paths. - Added meta sport taxonomy based lifetime totals insight page.
- Added new cards on the homepage indicating the risk of injury, gear needed service,
suggested activity and weight balance. - Added resting HR estimate to the athlete metrics page.
Changed
- Strava API import is not hidden behing feature flag (just inverse condition on FE).
- Refactored Predictions insight page to two pages - Predictions and Analytics.
- Rewritten task manager, tasks and tasks invocation - removed duplicated task manager
definitions, converged to MyTraL's task manager, typed tasks are used from now on. - Strava bulk ZIP archive import rewritten with Bulldozer framework for parallel
photo & recording upload, parquet conversion, and GPX map-data precomputation. - Polar Precision Performance import rewritten with Bulldozer framework - HRM blob
upload and parquet generation now run in .
Removed
- Removed
Suffer Scorefrom the ActivityEntity and related forms and HTML code.
Fixed
- Fixed blobstore logging message which no longer specifies wrong blob type.
- Polar HRM import conflict resolution no longer fails on missing year-cache entries.
fit_toolmonkeypatch tolerates non-UTF8 bytes in FIT string fields (Garmin
developer fields), preventing silent parse failures.- Fixed many problems in the Polar PPP import - from user forgetting to switch
the activity type, to the source of data (HRM vs. PDD) and the right units. - Fixed notifications decorator - it's newly tightly coupled w/ the icon.