[Hamlib-developer] [Hamlib/Hamlib] 26b1ac: fix(cache): synchronize cache and routing state
Library to control radio transceivers and receivers
Brought to you by:
n0nb
|
From: Nate B. <no...@gi...> - 2026-09-17 10:54:42
|
Branch: refs/heads/master Home: https://github.com/Hamlib/Hamlib Commit: 26b1ac26478eb99b8980d24362da378717a6285a https://github.com/Hamlib/Hamlib/commit/26b1ac26478eb99b8980d24362da378717a6285a Author: David Christle <dch...@us...> Date: 2026-09-17 (Thu, 17 Sep 2026) Changed paths: M bindings/python/test_startup.py M include/hamlib/rig_state.h M rigs/dummy/aclog.c M rigs/dummy/dummy.c M rigs/dummy/flrig.c M rigs/dummy/gqrx.c M rigs/dummy/netrigctl.c M rigs/dummy/quisk.c M rigs/dummy/sdrsharp.c M rigs/dummy/tci1x.c M rigs/dummy/trxmanager.c M rigs/elad/elad.c M rigs/guohetec/guohetec.h M rigs/guohetec/pmr171.c M rigs/guohetec/q900.c M rigs/icom/ic7300.c M rigs/icom/ic821h.c M rigs/icom/icf8101.c M rigs/icom/icom.c M rigs/icom/id5100.c M rigs/icom/xiegu.c M rigs/jrc/jst145.c M rigs/kenwood/elecraft.c M rigs/kenwood/flex6xxx.c M rigs/kenwood/ic10.c M rigs/kenwood/k3.c M rigs/kenwood/kenwood.c M rigs/kenwood/th.c M rigs/kenwood/thd72.c M rigs/kenwood/thd74.c M rigs/kenwood/tmd710.c M rigs/kenwood/transfox.c M rigs/kenwood/ts2000.c M rigs/kenwood/ts480.c M rigs/kenwood/ts590.c M rigs/kenwood/ts890s.c M rigs/kenwood/ts990s.c M rigs/kenwood/xg3.c M rigs/tci/tci2.c M rigs/tentec/orion.c M rigs/yaesu/ft100.c M rigs/yaesu/ft1000d.c M rigs/yaesu/ft1000mp.c M rigs/yaesu/ft736.c M rigs/yaesu/ft747.c M rigs/yaesu/ft817.c M rigs/yaesu/ft857.c M rigs/yaesu/ft891.c M rigs/yaesu/ft991.c M rigs/yaesu/ftx1/ftx1.h M rigs/yaesu/ftx1/ftx1_clarifier.c M rigs/yaesu/ftx1/ftx1_scan.c M rigs/yaesu/ftx1/ftx1_vfo.c M rigs/yaesu/newcat.c M rigs/yaesu/vx1700.c M src/cache.c M src/cache.h M src/conf.c M src/event.c M src/event.h M src/mem.c M src/misc.c M src/misc.h M src/rig.c M src/settings.c M src/snapshot_data.c M src/stream.c M src/tones.c M test/test_stream_api.c M tests/Makefile.am M tests/rigctlcom.c A tests/testcachemode.c A tests/testcacherouting.c A tests/testcachethread.c A tests/testcachevfo.c M tests/testid5100.c A tests/testpoll.c A tests/testroutingaccess.sh Log Message: ----------- fix(cache): synchronize cache and routing state CAT requests, backend state changes, and poll publication accessed shared cache and VFO routing fields without common synchronization. Make the rig cache opaque and publish current, RX, TX, and split state under one mutex. Use synchronized accessors and coherent snapshots throughout compiled frontends and backends, separate assumed routing from observed VFO freshness, and invalidate ambiguous operation results. Keep publication cadence independent from cache freshness while preserving the historical 1000 ms cache default. Add focused concurrency regressions and an architectural guard against direct cache or routing state access. Commit: 131c92592fa4501bac29a9a082abc78b1f354fc6 https://github.com/Hamlib/Hamlib/commit/131c92592fa4501bac29a9a082abc78b1f354fc6 Author: David Christle <dch...@us...> Date: 2026-09-17 (Thu, 17 Sep 2026) Changed paths: M src/cache.h Log Message: ----------- docs(cache): document coherent snapshot semantics Describe the consistency and freshness boundaries of full cache snapshots and distinguish the routing-only snapshot from the complete cached state. Commit: 424dfa92ece338d0a3ec9669d3421123abd21447 https://github.com/Hamlib/Hamlib/commit/424dfa92ece338d0a3ec9669d3421123abd21447 Author: David Christle <dch...@us...> Date: 2026-09-17 (Thu, 17 Sep 2026) Changed paths: M tests/testelecraftvfo.c M tests/testicomfallback.c Log Message: ----------- fix(cache): use synchronized routing accessors in tests Keep the architectural guard passing with current-master test harnesses. Commit: bb6484154e4540edfe326a32dd66bfee15221ab7 https://github.com/Hamlib/Hamlib/commit/bb6484154e4540edfe326a32dd66bfee15221ab7 Author: David Christle <dch...@us...> Date: 2026-09-17 (Thu, 17 Sep 2026) Changed paths: M rigs/guohetec/guohetec.h M rigs/guohetec/pmr171.c M rigs/guohetec/q900.c M src/cache.c M src/cache.h Log Message: ----------- fix(guohetec): read cache before rig open Add a synchronized internal cache getter that does not require an open communication state. Use it for Guohetec fallback and paired-VFO reads while preserving validation on the public cache API. Commit: 336346f135e302efadb7e9541ad8b56dbf30d7e4 https://github.com/Hamlib/Hamlib/commit/336346f135e302efadb7e9541ad8b56dbf30d7e4 Author: Nate Bargmann <n0...@n0...> Date: 2026-09-17 (Thu, 17 Sep 2026) Changed paths: M NEWS Log Message: ----------- Update NEWS for Synchronize cache and routing state fix Compare: https://github.com/Hamlib/Hamlib/compare/8580f2e2469a...336346f135e3 To unsubscribe from these emails, change your notification settings at https://github.com/Hamlib/Hamlib/settings/notifications |