More things filled in

Add links to issues(with URLs)
Add table of structures/include files/macros
pull/1883/head
George Baltz N3GB 2025-07-31 21:38:53 -04:00
rodzic fa7ca3415d
commit dfad2a788b
2 zmienionych plików z 30 dodań i 9 usunięć

Wyświetl plik

@ -1,4 +1,4 @@
# HAMLIB 4.7 - Release Notes # HAMLIB 4.7 - Release Notes (WIP) 2025-12-01(?)
This release brings new equipment support, bug fixes/code cleanups, and some This release brings new equipment support, bug fixes/code cleanups, and some
changes to ease transition to 5.0 changes to ease transition to 5.0
@ -13,8 +13,9 @@ changes to ease transition to 5.0
## Bug Fixes & Code cleanups ## Bug Fixes & Code cleanups
- Codebase conforms to ISO/IEC 9899:2024 (-std=c23) - Codebase conforms to ISO/IEC 9899:2024 (-std=c23)
- Reduce gripes from cppcheck and other static analyzers - Reduce gripes from cppcheck and other static analyzers
- Functions rig_get_conf(), rot_get_conf() and amp_get_conf() are deprecated and - Functions `rig_get_conf()`, `rot_get_conf()` and `amp_get_conf()` are deprecated and
will be removed in 5.0. Use xyz_get_conf2() instead. See issue #924 will be removed in 5.0. Use `..._get_conf2()` instead. See issue
[#924](https://github.com/Hamlib/Hamlib/issues/924).
- (TBD) - (TBD)
## Build/install Changes ## Build/install Changes
@ -30,9 +31,12 @@ with 4.7, making the transition much easier. The Application Programming Interfa
does not change. does not change.
### Storage restructuring ### Storage restructuring
HAMLIB 5.0 will move many data items/structures out of rig_struct into separate, HAMLIB 5.0 will move many data items/structures out of rig_struct into separate heap
calloc'ed buffers. This changes many of the methods for accessing HAMLIB internal buffers. See issues [#487](https://github.com/Hanlib/Hamlib/issues/487),
data. It also removes some obsolete items, and restructures/resizes others. [#1445](https://github.com/Hamlib/Hamlib/issues/1445), and
[#1420](https://github.com/Hamlib/Hamlib/issues/1420). This changes many of
the methods for accessing HAMLIB internal data. It also removes some obsolete
items, and restructures/resizes others.
### Include files ### Include files
Along with the moves to separate storage, the definitions of these data structures Along with the moves to separate storage, the definitions of these data structures

Wyświetl plik

@ -1,4 +1,4 @@
# HAMLIB 5.0 - Release Notes (DRAFT) # HAMLIB 5.0 - Release Notes (DRAFT) 2026-12-01(target)
This major release includes a restructuring of HAMLIB internal storage, forcing This major release includes a restructuring of HAMLIB internal storage, forcing
changes to the Application Binary Interface(ABI). changes to the Application Binary Interface(ABI).
@ -9,7 +9,24 @@ changes to the Application Binary Interface(ABI).
## Build changes ## Build changes
- No more K&R C - C compiler needs at least c11 capability. - No more K&R C - C compiler needs at least c11 capability.
- Functions rig_get_conf(), rot_get_conf() and amp_get_conf() have been removed. - Functions rig_get_conf(), rot_get_conf() and amp_get_conf() have been removed.
See issue #924. See [issue #924](https://github.com/Hamlib/Hamlib/issues/924).
- shortfreq_t changed to int? - shortfreq_t changed to int32?
## Application changes ## Application changes
Many of the internal HAMLIB data structures have been moved out of the rig_struct
area into their own heap buffers, and are addressed by pointers. Any application that
wishes to access these structure will have to add a new `#include` statement and
use a macro defined in that `.h` file to obtain the address.
| Structure | Old reference | Include file | New Pointer |
| --------- | ---------------- | ----------------- | ------------ |
| Rig state | `rig->state` | `<hamlib/rig_state.h>` | `HAMLIB_STATE(rig)` |
| Rig CAT port | `rig->state.rigport` | `<hamlib/port.h>` | `HAMLIB_RIGPORT(rig)` |
| Rig PTT port | `rig->state.pttport` | `<hamlib/port.h>` | `HAMLIB_PTTPORT(rig)` |
| Rig DCD port | `rig->state.dcdport` | `<hamlib/port.h>` | `HAMLIB_DCDPORT(rig)` |
| Amplifier state | `amp->state` | `<hamlib/amp_state.h>` | `HAMLIB_AMPSTATE(amp)` |
| Amplifier port | `amp->state.ampport` | `<hamlib/port.h>` | `HAMLIB_AMPPORT(amp)` |
| Rotator state | `rot->state` | `<hamlib/rot_state.h>` | `HAMLIB_ROTSTATE(rot)` |
| Rotator port | `rot->state.rotport` | `<hamlib/port.h>` | `HAMLIB_ROTPORT(rot)` |
| Rotator port2 | `rot->state.rotport2` | `<hamlib/port.h>` | `HAMLIB_ROTPORT2(rot)` |