Skip to content

MyTraL 1.50.0

Choose a tag to compare

@dvorka dvorka released this 13 Jun 16:24
· 98 commits to main since this release
e17105c

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 gender field to the athlete profile in order to calculate metrics like TRIMP
    more accurately.
  • Added TRIMP calculation and chart to the Progress menu.
  • 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 Score from 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_tool monkeypatch 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.