Skip to content

v1.0.0

Choose a tag to compare

@tsubotti63 tsubotti63 released this 22 Jul 14:18

Garmin Running Data Normalizer v1.0.0

v1.0.0 is the first stable release of the local-first Garmin Account Export
normalization workflow. It keeps source data local, produces deterministic
outputs with provenance and QA, and uses only Python's standard library at
runtime.

Highlights

  • Stable activities-only Golden Path and multi-family Run-All CLI.
  • Required Activities plus optional Gear, Personal Records, and bounded FIT
    session/lap normalization.
  • Fixed Run-All output layout, explicit exit statuses, completion marker,
    deterministic digests, provenance, and privacy-safe console errors.
  • Library-level Sleep, HRV, and Health Status normalization backed by synthetic
    tests without expanding the Run-All output contract.
  • Apache-2.0 licensing, synthetic public examples, Analysis Handoff guidance,
    and a reproducible case study.

Install and run

git clone https://github.com/tsubotti63/garmin-running-data-normalizer.git
cd garmin-running-data-normalizer
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -e .
python -m garmin_running_data_normalizer --version
python -m garmin_running_data_normalizer run-all \
  --input examples/synthetic/garmin_export \
  --output workspace/run-all

Compatibility boundary

The documented CLI and versioned Run-All output contract are stable for 1.x.
Sleep, HRV, Health Status, and Analysis Pack remain library-level interfaces and
are not Run-All outputs in this release.

Security and privacy

Real Garmin exports and generated results contain personal data and must remain
in ignored local storage. No real export, identifier, coordinate, private path,
or generated personal artifact is included in the repository or Release assets.

Known limitations

Complete FIT CRC validation, multi-session FIT identity, PyPI publication,
hosted processing, Open-Meteo, and Parquet output are not included. See the
tag-pinned limitations
and
supported datasets.

No binary assets are attached to the GitHub Release. The source archives are
generated by GitHub from the reviewed tag.