GPSBabel 1.6.0 launch(ing) April, 2019.!

Hello, Babel-Heads!

It's admittedly been a long time since we released GPSBabel 1.5.4. That's on me, the Chief Babel-Head, for personal reasons.

This page is a work in progress while I'm scrambling to get 1.6 betas up and blowing dust out of the release process. We've done a LOT of behind-the-scenes work to improve stability and robustness. NOTE: this is a checkpoint. I intend to fix a lot of the links (they were copy-pasted) and reorder so all the garmin_fit traffic is together and such.

Gui
  • Use more native button handling when not on Windows
  • Major changes in map preview to work wiht WebEngine
  • Upgrade to Google Maps API v3
Internal developer notes
  • Remove Electric Fence and DEBUG_MEM support. Valgrind rocks!
  • Remove several obsolete MSVC proj files. They can be regenerated by qmake.
  • Major improvements in consistency of #include ordering
  • Added an appveyor build for Windows and MacOS. Handles debug/opt, msvc/gcc, 32/64 and such. #fixme more words
  • Hundreds and hundreds (really!) of fixes for warnings, const-correctness, more reliance on existing standardized library and template over home-grown data structures, such as our own linked list types, use more C++14 features that help us, clang-tidy use, and other general code hygeine improvements
  • make_windows_release generalized for MinGW and MSVC
  • Lots of meticulous cleanups preferring QLatin1Strings to bare char*
  • C++14 and Qt >= 5.9 (a LTS version) are now required. We test and ship some platforms with the nextLTS release, 5.12, so that seems a reasonable window.
  • Added Dockerfiles for building
  • Rely on a newer gperf to support C++.
  • Filters are now superclasses of a filter base class. Over time, the formats will move to a similar model.
  • Our linked-list data structure, central to so many of our larger data structures with unbounded length, have all been replaced with a normal STL or Qt container. This eliminates a whole class of bugs if an item is accidentally placed on a queue twice and generally makes the code more accessible to an experienced C++ programmer.
  • Something about CLion, codacy, appveyor, travis, clang-tidy, etc.BB

(Note to self: Talk about C++14, new Qt floor, new formats, automation, etc.)

For a more detailed list, see the changes in GPSBabel. For a mind-numbingly detailed list, see our source code.

Supporting the project

We get a constant stream of requests to support new hardware, adding support for new OSes, and such. It costs a lot of time and money to buy GPS receivers, programs, and computers for development. You can help fund the next generation (hey, someone funded what's there now...) by supporting the project with your time or your donation. If you have a way you'd like to see the money spent (i.e. improving Mac support, new GPS models, etc.) please mention that in your submission. We appreciate all the help we can get

Support GPSBabel Development!
PayPal Donation
We can accept credit cards via PayPal even if you do not have a PayPal account!
GPSBabel is free software that's immediately downloadable from this site. Thank you!

Enjoy

Robert Lipe,
Chief Babel-Head