[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gpsd-dev] ✘GPSD_API
From: |
Bernd Zeimetz |
Subject: |
Re: [gpsd-dev] ✘GPSD_API |
Date: |
Wed, 13 Apr 2016 22:04:56 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.6.0 |
hi,
> I've been looking at gps.h and at these two constants:
>
> #define GPSD_API_MAJOR_VERSION 6 /* bump on incompatible changes */
> #define GPSD_API_MINOR_VERSION 1 /* bump on compatible changes */
>
> It is not clear to me what constitutes a compatible channge and
> what is an incompatible change.
I understand it as in:
- stuff that only adds symbols to libgps and/or adding stuff to the api
without breaking it: compatible change
- removing or changing symbols in libgps: incompatible change
> For example, was the recent addition of oscillator_t osc to gps_data_t
> a compatible change that should have incremented the minor rev?
I'm pretty sure that breaks the abi as you are chaging the size of structs.
> I'm guessing that if I added a field to satellite_t skyview, which is in
> gps_data_t, that would be an incompatible change?o
same here.
Also you might want to look into
/* FIXME! next lib rev need to add a place to put PPS precision */
> I also have some other changes that likely need to go in gpsdata_t. For
> example, there are two distinct types of satellites_used and
> satellites_visible. One type is the number reported by the GPS and the
> other is a could of sats seen so far in sucessive GPGSA dn GPGSV. But
> gpsdata_t has place for only one type and they keep over-wrting each
> other...
you also might want to read
http://www.catb.org/esr/structure-packing/
--
Bernd Zeimetz Debian GNU/Linux Developer
http://bzed.de http://www.debian.org
GPG Fingerprint: ECA1 E3F2 8E11 2432 D485 DD95 EB36 171A 6FF9 435F
signature.asc
Description: OpenPGP digital signature
Re: [gpsd-dev] ✘GPSD_API, Eric S. Raymond, 2016/04/14