We are proud to announce the release of version 3.7 of GoldenCheetah.
A maintenance release focused on base code migration to Qt 6 preserving Qt 5 compatibility, including some long awaited features s.t. filtering and classification of workouts, selective BTLE sensor pairing, drag-n-drop of activity images, and semi-automatic CP detection for power zones, settings and config harmonization and a lot of small improvements and bug fixes for a better user experience.
Summary of changes from v3.6 release
GUI
- New graphical splash screen with version and load progress indications.
- Ctrl+q for Quit on Linux, command+Q on macOS and Alt+F4 on Windows.
- Drag and Drop Images onto a ride, Images gallery Python chart available for download from CloudDB.
- Main Window gets drag/drop from Overview
- Context help for Create/Edit User Metrics
- Batch Processing now includes metadata update
- Improved search/filter box drop down menu icon and color theme fixes
- Updated Zones config dialogs with in-place edition
- Updated Athlete config and new athlete dialogs
- Updated global config dialogs
- Improved Data Processors config with automatic-only setting
- Edit menu renamed as Process honors automatic-only setting
CHARTS
- Overview Chart - Enhanced drag and drop item placement with preview
- Overview Chart - Edit content button for metadata tiles
- Compare mode for Map chart
- Configurable grayscale filter for Map chart
- Ignore zeros option for curves in Metrics Trends charts (this makes the charts saved by this version incompatible with previous ones)
- Zoom & Pan for the Performance chart using +mouse wheel and mouse wheel click and drag
- PfPv Plot (QA) and Scatter Plot (2d) - allow vertical scales up to 2500N
- Fixed Weekly tiles in default Trends layouts
- Map chart - Added interactivity to the Smallplot
- Better user experience when drawing segments on the map
- Python Chart Editor Cosmetics
- Enabled old Calendar and Navigator charts for Trends
- Table tile in Overview chart - colorize scalar values
- Enable Performance Tests for CV charts
FILE FORMATS
- Support for the new FIT structure used by latest Garmin units, fixes the no-laps problem, but still doesn’t work with multisport files.
- Read and write XData developer fields to FIT files, previously imported developer data is now preserved on FIT export.
- Generic Support for Session and Lap in FIT files
- Decode cyclist position from FIT files
- GPX parser - support ns3 TrackPointExtension name and uses speed data when available
- Consolidate consecutive rest lengths in a single interval for lap swim fit files
- Fix lap swim allows to filter min rest lengths
- Update FITmetadata.json to FIT SDK v21.158
METRICS
- Semi automatic creation of ranges for power zones
- Enable Pace metric for Walking (this will trigger a full metric re-computation o the first start)
- Rename fatigue zones for consistency
- DataFilter - isAero
- Interval Metadata
- Datafilter xdataseries(), xdataunits() and xdatavalues()
- User defined relative date ranges in Trends
- Swim Stroke (0 - rest, 1 - free, 2 - back, 3 - breast, 4 - fly, 5 - drill, 6 - mixed)
TRAIN
- New icons for the bottom bar honor light and dark themes
- Improved the selection of workouts using filters in the toolbar with named workout filters
- Added Bluetooth pairing to the device wizard and BTLE support on macOS versions from 12.x
- Workout Editor supports MRC flavored qwkcode (Watts as percentages of CP)
- Download Strava Routes as Workouts
- Download workouts from TrainerDay (previously ErgDB) using the query API with duration and dominantzone operators.
- New zoomed elevation widget for slope/distance workouts with video
- New zoomed elevation chart for slope/distance workout without video
- Option for coalescing neighboring sections with the same watts in ERG mode workouts
- Workout Plot - realtime curves honor FFWD/RWND and lap F/B
- Coloring by powerzones in ErgFilePlot
- Added support for old Daum devices before 2001
- Workout editor: preferences are persistent between sessions and line width honors appearance settings
- Cycling dynamics in train mode
- Add tempe ANT+ sensor support
- Add of CoreTemp sensor support
- Add Zoom property to Live map chart
- Enable VideoSync and Overlay Widgets for QT6 Video Window
CLOUD
- CloudDB - Fallback to local cache when server is not available
- Adapt CloudServiceSyncDialog with service capabilities
- Athlete level WebEngineProfile for cookies and storage, disabled for OAuth workflow.
Python API
- GC.deleteXDataSeries(xdata, series) to remove existing XData series
- GC.deleteXData(xdata) to remove existing XData
TRANSLATIONS
- Updated German translation
- Updated Spanish translation
- Updated French translation
- Updated Italian translation
BUG FIXES
- Fix crash on invalid perspective filter
- Fixed rounding error on loading and saving erg files
- Enable Multiple custom power curves for virtual power
- Fix memory leak in Split Activity Wizard
- Bluetooth FTMS fix to get device speed
- Cursor in text workout editor was invisible
- Fix crash on metadata config
- Fix some non-translatable strings and update ts files
- Fix lap data auto-reset in slope workouts
- Fix broken workout directory check for the first start
- Fix shortcuts not available due to translations
- Fix issues after perspective switch
- Ignore dot folders on athlete open/backup/delete
- Fix imperial units labels in AeroLab
- Fix Ride Cache remove 1 sec intervals
- Fix intervals in Compare Pane are 1 sample short
- Avoid crash when users try to create a virtual power curve with a single point
DEPRECATED FEATURES
- Deprecate Today's Plan integration
- Deprecate export to KML files
TECHNICAL CHANGES
- Upgraded Qwt to 6.4 (branch: qwt-multiaxes)
- Upgrade Travis-ci builds to macOS 12.6 with Qt5.15
- Upgrade Travis-ci Linux version to Ubuntu 22.04, AppImage now works with fuse3
- Qt6 and Qt6 video support up to latest Qt 6.8.3, updated WebEngine embedded browser fixes login issues on external websites s.t. Garmin Connect and Strava.