Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove compegps, cst, g7towin, gopal, gpsman, gpsutil, jogmap, jtr, maggeo, mapsend, nm4, pcx, pocketfms, skyforce, stmsdf, stmwpp, tiger, vpl, vidaone, vitosmt, vitovtt, wfff, and yahoo. #785

Merged
merged 19 commits into from
Dec 9, 2021

Conversation

GPSBabelDeveloper
Copy link
Collaborator

Merge reaper1201 into trunk.

Turn down several formats with no maintenance commits or evidence of users in many years. Those PocketPC-era formats have been a maintenance burden.

nm4, pcx, pocketfms, skyforce, stmsdf, stmwpp, tiger, vpl, wfff, and yahoo.
commit 40429dd
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Mon Dec 6 16:37:53 2021 -0700

    fix dotnet time conversion (#784)

commit 54b0136
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Mon Dec 6 07:13:44 2021 -0700

    Kill CarteSurTable format. (#783)

    Apparently it hasn't ever been used.  Our sample has coordinates in UTM,
    but we have been interpretting them as degrees/100000.  "Le pic du midi"
    referred to in the sample is The Pic du Midi de Bigorre.

commit 1ed5895
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sun Dec 5 15:30:05 2021 -0700

    harden gbfgetcstr, gbfgetpstr. (#782)

    Hangs were detected with afl and the gdb reader and gbfgetcstr.  One such
    hang reads a fuzzed 32 bit url count with FREAD_i32, and then proceeds
    to fetch that many strings with FREAD_CSTR_AS_QSTR.  This results in
    fetches from beyond EOF that are undetected.  gbfgetcstr_old is modified
    to throw a fatal error if reading is attempted beyond EOF.

    A similar failure was not detected with gbfgetpstr, but it is also
    modified to throw a fatal error if reading is attempted beyond EOF.

commit 85502cb
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Fri Dec 3 07:16:02 2021 -0700

    hopefully the real fix for garmin_xt tool issues. (#781)

    Fix LGTM detected "Comparison between i of type uint8_t and Count of
    wider type int."

    This latest find by LGTM is one in a long series of issue detections by
    various tools.  However, close analysis reveals the previous solutions
    to these deteced issues didn't find or fix the real root issues:

    commit 233f3c8, 10/22/2013, Pad
    internal buffer to appease -fsanitize=address.  While the fix appeased
    the sanitizer, it didn't fix the root problem.  The root problem was
    a bug in the original translation of format_garmin_xt_decrypt_trk_blk
    when converting to zero-based array indexing.

    commit dcf0dd8, 7/8/2015, A bunch of
    busy work to satisfy hyperactive warnings in newer GCC builds.  Again,
    the fix didn't fix the root problem.  The root problem was a bug in the
    original translation of format_garmin_xt_proc_strk.  This bug resulted
    in a mismatch between our test output and that of the original project.
    In our output the timestamp of the last two points in a track was
    identical.

    This fix results in our output matching the reference file of the original
    project (with allowances for precision).

commit 727df52
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Dec 1 17:17:40 2021 -0700

    retire cet (#777)

    * teach mkshort to split utf8 on grapheme boundaries.

    and retire some cet functions.

    * add the grapheme test.

    * wean gbfile from cet.

    * restore cet.cc, cet.h in prepare for deprecation.

    * retire cet.cc, cet.h

    * drop attempted support of \r line endings in gbfgetutf16str.

    * add test of surrogate pairs for gbfgetutf16str.

    * fix test

commit 2371d11
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Dec 1 13:11:33 2021 -0700

    add lgtm configuration file (#780)

commit 1682055
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Dec 1 12:40:38 2021 -0700

    move Qt6 CI builds to 6.2.2. (#779)

commit d377ef6
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Dec 1 06:26:08 2021 -0700

    convert arcdist, polygon, and xcsv to use gpsbabel::TextStream instead of gbfgetstr (#778)

    * read style files with a textstream.

    * use gpsbabel::textstream instead of gbfile.

commit f2da18d
Merge: 41cdf06 2341445
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Tue Nov 30 15:46:26 2021 -0700

    Merge pull request #776 from tsteven4/nits3

    miscellaneous minor fixes III

commit 41cdf06
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Mon Nov 29 07:29:41 2021 -0700

    move Qt 5.12 CI builds to 5.12.12 (#774)

commit 2341445
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sun Nov 28 07:44:28 2021 -0700

    remove support for non standard entity replacements.

    This was disabled in d47e364 August 29, 2005.

commit dd56f42
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sat Nov 27 23:37:59 2021 -0700

    fix lgtm detected ill-defined for loop.

commit 59a325d
Merge: 56c86e2 0769479
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sat Nov 27 17:45:30 2021 -0700

    Merge pull request #772 from tsteven4/lgtm

    miscellaneous minor fixes

commit 0769479
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Fri Nov 26 14:42:42 2021 -0700

    sequester temporary style files in TMPDIR

commit 3f38cef
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Thu Nov 25 10:09:04 2021 -0700

    prefer rte_waypt_ct() over waypoint_list.count().

    this provides some insulation from the underlying WaypointList
    container.

commit bdd7865
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Thu Nov 25 08:37:57 2021 -0800

    sort SOURCES and HEADERS in build.

    this gives a reasonable initial project view in Xcode.
    this gives a resaonable order to compilation.

commit dd735b6
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Nov 24 11:11:15 2021 -0800

    minor correction to resample doc.

commit f7d3d60
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Nov 24 10:30:58 2021 -0800

    further minimize xcsv_get_char_from_constant_table

commit f483fc3
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Nov 24 09:51:14 2021 -0800

    use list initialization to construct xcsv char map table.

commit d62f479
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Nov 24 08:52:22 2021 -0800

    more nits.

commit b2957b5
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Tue Nov 23 16:09:14 2021 -0800

    limit variable scope, found by LGTM.

    Poor global variable name 'ops'. Prefer longer, descriptive names for globals (eg. kMyGlobalConstant, not foo).

commit 56c86e2
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Tue Nov 23 09:40:30 2021 -0700

    fix parsing of nmea hms fields. (#770)

commit fa20976
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sun Nov 21 14:04:55 2021 -0700

    Introduce resampling filter and nvectors. (#763)

    * Introduce resampling filter and nvectors.

    * use ellipsoid model with nvectors.

    the code had been forcing a spherical earth model to match the
    existing grtcirc.cc calculations.

commit 1a422a6
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sun Nov 21 14:04:03 2021 -0700

    improve string handling, fix 9 year old FIXME. (#769)

commit e09f7fe
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sun Nov 21 13:34:23 2021 -0700

    support generation of xcode project files with qmake. (#760)

commit ff76e25
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Sat Nov 20 08:05:01 2021 -0700

    update fit locations test with improved sample (#767)

    * update fit test with improved sample.

    * reference file mode correction.

commit 67ad13d
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Fri Nov 19 06:48:53 2021 -0700

    Pick up fit locations test case (#766)

    * Add support for Locations.fit files

    * patch by tsteven4 to address review comments

    * Add a test case for Locations.fit files from Garmin devices

    Co-authored-by: Fabrizio Gennari <fabrizio.ge@tiscali.it>

commit 368ad39
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Thu Nov 18 16:40:49 2021 -0700

    add test for fit Locations(Lctns) files. (#765)

    * add test for fit Locations(Lctns) files.

    * fix new bug with change in Qt6 behavior for fit.

commit 871efe3
Author: fabzzap <fabrizio.ge@tiscali.it>
Date:   Thu Nov 18 22:07:59 2021 +0100

    Add support for Locations.fit files (#762)

    * Add support for Locations.fit files

    * patch by tsteven4 to address review comments

commit 2504d97
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Wed Nov 17 08:52:08 2021 -0700

    Eliminiate redundant route_head data member (#764)

    eliminate redundant route_head data member rte_waypt_ct, replacing it with a member function rte_waypt_ct() that gets the count from the waypoint_list container.

commit 0beebdd
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Mon Nov 8 05:22:30 2021 -0700

    kill xmap, xmap2006. (#758)

    * kill xmap, xmap2006.

    * dprecate obsolete readme.

commit 6593293
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Fri Nov 5 15:13:05 2021 -0600

    kill xmapwpt. (#757)

    note is was wounded previously, see #754.

commit 7b6235c
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Fri Nov 5 13:01:00 2021 -0600

    add fedora 35 to CI. (#756)

commit c3bc9c8
Author: tsteven4 <13596209+tsteven4@users.noreply.github.com>
Date:   Fri Nov 5 11:17:45 2021 -0600

    serial port names (#755)

    * try qserialportinfo again.

    * update docker images with qt serial port.

    * enhance windows device text to match device manager on windows.
@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 8, 2021

git mv yahoo.h deprecated

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

I don't see any need to maintain
DEPRECATED_FMTS
DEPRECATED_HEADERS
DEPRECATED_SHAPE
in GPSBabel.pro and CMakeLists.txt. I would vote to just delete those variables from the files.

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

I can use nmea to get the gbfile coverage back into gbfile.test that we lost with the deprecation of the pcx format.

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

please merge the current master so the changes are reasonable (not 227 files!)
git checkout master
git pull
git checkout reaper1201
git merge master

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

the gbfile test is updated in #786 to avoid the pcx format.

@GPSBabelDeveloper
Copy link
Collaborator Author

I've been battling Git tonight to get around that 277 file mess - and to understand how I keep doing this to myself.

I'll take out the MAXIMAL/MINIMAL/CSV stuff after landing this. I haven't heard from @viettaml and that's getting pretty obnoxious for us. If it's needed to keep that distinction, we can move to instantiation-based ctors that makes features appear only when certain modules are present. The days of kilobytes mattering are long gone once we added -lqtcore. :-)

I moved the gbfile compression test to NMEA (somewhere in those 277...) so this seems pretty natural.

Thanx,
RJL

@lgtm-com
Copy link

lgtm-com bot commented Dec 9, 2021

This pull request fixes 2 alerts when merging 468b2a1 into da7ae59 - view on LGTM.com

fixed alerts:

  • 1 for Resource not released in destructor
  • 1 for Multiplication result converted to larger type

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

Thanks for the merge. I found the following issues which we can fix in this PR or a subsequent one.

  1. vidaone was removed from GPSBabel.pro, CMakeLists.txt, the serialization reference files and testo. The source and documentation files are still present. Was the intent to retire vidaone?
  2. jogmap was removed from GPSBabel.pro, CMakeLists.txt, the serialization reference files and testo. The source and documentation files are still present. Was the intent to retire jogmap?
  3. yahoo was removed, except for yahoo.h which needs to be moved with git to deprecated.
  4. gpsman.test was modified. The original file should just be moved to testo.d/deprecated.
  5. I have gbfile.test modified to replace the coverage for the supplemental plane due to the retirement of pcx in switch gbfile supplemental plane test to nmea. #786

Please use the "Squash and merge" button to merge this PR instead of the "Create a merge commit" button. This will result in the master branch history just showing one commit for this PR instead of the 13 commits in this branch.

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

vitosmt is designated as a pocket pc format in our doc. If we are killing pocket pc related things it might be another one to consider.

@lgtm-com
Copy link

lgtm-com bot commented Dec 9, 2021

This pull request fixes 2 alerts when merging 17bb1aa into da7ae59 - view on LGTM.com

fixed alerts:

  • 1 for Resource not released in destructor
  • 1 for Multiplication result converted to larger type

@GPSBabelDeveloper GPSBabelDeveloper changed the title Remove compegps, cst, g7to2in, gopal, gpsutil, jtr, maggeo, mapsend, nm4, pcx, pocketfms, skyforce, stmsdf, stmwpp, tiger, vpl, wfff, and yahoo. Remove compegps, cst, g7to2in, gopal, gpsman, gpsutil, jogmap, jtr, maggeo, mapsend, nm4, pcx, pocketfms, skyforce, stmsdf, stmwpp, tiger, vpl, vidaone, vitosmt, vitovtt, wfff, and yahoo. Dec 9, 2021
@GPSBabelDeveloper GPSBabelDeveloper changed the title Remove compegps, cst, g7to2in, gopal, gpsman, gpsutil, jogmap, jtr, maggeo, mapsend, nm4, pcx, pocketfms, skyforce, stmsdf, stmwpp, tiger, vpl, vidaone, vitosmt, vitovtt, wfff, and yahoo. Remove compegps, cst, g7towin, gopal, gpsman, gpsutil, jogmap, jtr, maggeo, mapsend, nm4, pcx, pocketfms, skyforce, stmsdf, stmwpp, tiger, vpl, vidaone, vitosmt, vitovtt, wfff, and yahoo. Dec 9, 2021
@lgtm-com
Copy link

lgtm-com bot commented Dec 9, 2021

This pull request fixes 2 alerts when merging bf9eec3 into da7ae59 - view on LGTM.com

fixed alerts:

  • 1 for Resource not released in destructor
  • 1 for Multiplication result converted to larger type

@tsteven4
Copy link
Collaborator

tsteven4 commented Dec 9, 2021

jeeps/gpsutil.h should stay in GPSBabel.pro and CMakeLists.txt

@lgtm-com
Copy link

lgtm-com bot commented Dec 9, 2021

This pull request fixes 2 alerts when merging c1d78d1 into da7ae59 - view on LGTM.com

fixed alerts:

  • 1 for Resource not released in destructor
  • 1 for Multiplication result converted to larger type

@GPSBabelDeveloper
Copy link
Collaborator Author

GPSBabelDeveloper commented Dec 9, 2021 via email

@lgtm-com
Copy link

lgtm-com bot commented Dec 9, 2021

This pull request fixes 2 alerts when merging ceb9ea9 into da7ae59 - view on LGTM.com

fixed alerts:

  • 1 for Resource not released in destructor
  • 1 for Multiplication result converted to larger type

@GPSBabelDeveloper
Copy link
Collaborator Author

Lessons learned (OK, I already knew some of these, but this reinforced it) in this CL: juggling this many formats at once is too hard. Don't do this.

  • "Not all things worth automating are worth automating well". We have too many fiddly bits that look similar in too many places and many of them have obscure interactions. (e.g. main doc failing because an introduction chapter links to the format you just resolved) tools/nuke_format is as dumb as a rock, but it should make dropping a format possible to do in a minute and once per commit so that a revert should be possible, which should make our (somewhat overkill) deprecated/ not as tempting. Maybe we should leave deprecated/ to version control.
  • Changing the first line of the pull request breaks and restarts the thread in gmail. Not a bug, but it can make waiting for results frustrating when they show up in a different place.

@kermit-the-frog
Copy link

What's the reason for removing the support for CompeGPS?

@GPSBabelDeveloper
Copy link
Collaborator Author

GPSBabelDeveloper commented Jul 13, 2022 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants