November 13, 2024
- Fixed a bug where v1.8.1 would not handle timeouts correctly using the Win32 API. macOS and Linux users are not affected.
- Fixed incorrect behavior in APRS server negotiation. The
vers
field expects the app name and version, separated by a space; however, I was separating it with a forward slash instead. I don't know if this matters or not, but it should still be fixed.
November 3, 2024
Fixed a bug where compilation would fail on armhf
platforms due to an improper cast when printf()
-ing a time_t
. It's a long long int
on that platform, while printf()
was expecting a long int
instead.
October 31, 2024
- Converted the APRS-IS socket from blocking to non-blocking, with a default timeout of 15 seconds before the connection is aborted. Thanks to DL9SEC for pointing this out.
- Added a new parameter,
--timeout
, to set how long the app will wait for the remote server before giving up. - Added support for ISO-compliant compilers (e.g.,
gcc -pedantic
). - Fixed a bug where
./configure --disable-aprs-is
was not honored. - Minor code cleanup.
September 23, 2024
- Fixed a bug that would prevent users from creating APRS packets with 100% relative humidity. Thanks to Jeff (N9CQS) for the bug report!
- Minor packaging improvements for Debian repositories.
November 30, 2023
This patch fixes a compile-time bug on armhf platforms. The format identifer %zu
is used to get around an error about the size of size_t
.
November 29, 2023
- The icon can now be changed from the default (WX) icon using the new
--icon
option. - Output of
snprintf()
is now better checked to make sure we haven't overflowed our buffer. - Fixed a compile-time error on armhf platforms.
October 26, 2022
- This app now runs on DOS systems! Added support for compiling with OpenWatcom, to target 16-bit targets and retro machines, all the way back to MS-DOS and the 8086 (without APRS-IS support). I've only tested it on FreeDOS 1.3 and an emulated 486 thus far.
- Custom comments can be added to packets! Use
--comment
to add your own notes to a packet. - When not using custom comments, the "X" in the comment field is removed. APRS packets rarely, if ever, use the operating system identifier these days, so there is no need to prefix the user agent or comment with it.
- Fixed a bug where minute values less than ten would result in invalid uncompressed positions. Thank you, ploeffler!
- Fixed a bug where the
--altitude
parameter was not being detected in its short form (-A
). - Worked around a bug with APRS.fi, where their site would reject packets with the temperature listed before the wind gust speeds. This was not a bug in this app. Thank you, Menno.
- Replace calls to
strncat()
with calls tostrcat()
. This eliminates on-by-default warnings in GCC 8.1., KR4DIO! - Removed dependency on
<assert.h>
.
August 4, 2022
- Fix a bug where the
--no-comment
flag accidentally did the opposite of what it was supposed to do. - Fix a bug where the short option
-Q
was not recognized. - Fix a bug where altitude reports (
/A=
) were always included in packets, even when no altitude was specified. - Small code change to allow this to compile on PowerPC (ppc64/ppc64le) and other non-x86 architectures.
June 8, 2022
- Completely rewrite the build script to have a standard
autogen
,configure
, andmake
. - Eliminate compiler errors when using
-Wextra
.
September 26, 2020
- Replace the Makefile with an Autoconf script.
- Replace the
-DNO_APRSIS
make option with the--disable-aprs-is
configure switch. - Add support for disabling assertions with the
--disable-assert
configure switch (though I recommend not using this). - Conform with GNU standards by adding a ChangeLog file (plain-text copy of GitHub's CHANGELOG.md), COPYING (a copy of LICENSE), NEWS, and README (a plaintext copy of GitHub's README.md).
- Add the
--no-comment
option to suppress this app's user agent in the comment section of the packet. - Add the
--altitude
(-A
) option to allow for reporting the location's altitude, in feet above mean sea level.
March 8, 2020
- Fixed a bug where latitudes and longitudes were not being converted into DMS exactly as they should be, which had been leading to minor position inaccuracies.
- Made uncompressed positions the default again, because APRS.fi does not support weather packets with compressed positions. This is a long-standing bug on their web site. The
-0
and--uncompressed-positions
options are still accepted for backwards compatibility, but no longer do anything. - Better documentation for the compression type byte.
- Changed the copyright date for the new year.
September 14, 2019
- Fixed a bug where uncompressed latitudes greater than 90° were truncated. This was not the default behavior. My apologies to anyone in Asia, Australia, Oceania, and most of the Americas.
July 31, 2019
- Added the compile-time option
NO_APRSIS
to strip all Internet-related functionality, just in case you're really low on space.
July 31, 2019
-
Added <stdint.h> to prevent compiler errors. (Thank you to UR3QJW for reporting this.)
-
Switched from ANSI C to the C99 standard, in order to keep using
snprintf()
. Some compilers are stricter than mine and refuse to compile K&R C with it. (Another thank you to UR3QJW.) -
Since we switched to C99, I added some tiny performance enhancements with
restrict
andinline
. -
Fixed a pair of bugs where uncompressed packets would fail to encode the location correctly.
-
Fixed a bug where wind speeds would not be reported properly in compressed packets, because math is hard.
-
Added linker options to the Makefile to fix linking errors with GCC 7.
-
Code cleanup. *Known issue: when compiling with GCC 7 and newer, there will be many warnings about formatting. These can be ignored. Adding
-Wno-format-detection
to the Makefile will quiet it down. This will be patched in a future release.
April 16, 2019
- Added preliminary support for compiling on Windows.
- Added the option of using APRS uncompressed positions at runtime with the
--uncompressed-position
switch, rather than a compile-time choice. - Removed a dependency on
stdint.h
. - Fixed a bug where impractically large APRS-IS packets would be truncated. This was unlikely to affect real-world use.
January 23, 2019 -- codename QLF
- Added support for reporting temperatures in degrees Celsius.
- Added a Makefile for POSIX systems.
- Added a man page.
- Fixed a bug where negative temperatures may cause the packet to fail to encode.
- Cleaned up some documentation.
January 21, 2019 -- codename QRV
- Added significant documentation.
January 20, 2019 -- codename QST
- Wrote help.
- Added support for actually sending the packet to an APRS-IS IGate.
- Changed the position and wind data to compressed from uncompressed. For now, this can only be undone at compile-time.
January 18, 2019 -- codename "Strings are hard"
- Added support for snowfall, as clarified in APRS 1.1's errata.
- Added support for the APRS 1.2 parameters: radiation, water level, and voltage.
January 14, 2019 -- codename Q
- Initial private release.