2. Very detailed Change Log

This document intends to detail the change log for relatively recent work (roughly since the source code was tracked in Git).

Note

This change log section represents git commits in range v2.8.4..HEAD (commits 434cb36a3..8d5e54347).

2.1. 2025-09-10 Jim Klimov <jimklimov+nut@gmail.com>

  • scripts/python/module/Makefile.am: emit log note that .pypi-dist-pip-wheel goal does not produce sdist archives [#3056]
  • scripts/python/module/Makefile.am: fix typo in comment
  • NEWS.adoc: fixed PyPI publication to include sdist tarball [#3056]
  • .github/workflows/PyNUTClient.yml: fix shell markup [#3056]
  • .github/workflows/PyNUTClient.yml: actually install "setuptools" module with "pip" [#3056]
  • .github/workflows/PyNUTClient.yml: allow manually running the GHA task

2.2. 2025-09-08 Jim Klimov <jimklimov+nut@gmail.com>

  • docs/hid-subdrivers.txt, docs/nut.dict: docs/hid-subdrivers.txt: updating existing drivers: suggest newly logged discrepancies of "seen vs. used" data [#3082]
  • drivers/nutdrv_atcl_usb.c: when suggesting other drivers and configs, refer to build-aware man page sections
  • docs/hid-subdrivers.txt: fix a bit of markup
  • clients/upslog.c, NEWS.adoc: update help() and failure messages to suggest -m *,-
  • drivers/usbhid-ups.c: process_boolean_info(): handle OB=!OL and OL=!OB here (when the bit is being set) [#3080]
  • drivers/usbhid-ups.c: upsdrv_initups(): upsdebugx() at verbosity 0 (always) if there are too few mappings known or used via USB HID [#3082]
  • drivers/apc-hid.c, NEWS.adoc, scripts/upower/95-upower-hid.hwdb: declare support for APC 0x051d:0x0005 as a USB HID device [#3047]
  • drivers/nutdrv_atcl_usb.c: upsdrv_initups() failure mode: suggest using nutdrv_qx(8) or blazer_usb(8) driver instead [#1021, #2152 follow-up]
  • data/driver.list.in: add Voltronic Power USB ID 0665:5161 as nutdrv_qx supported (per driver source comments)
  • data/driver.list.in: add "Various" USB interface chip names or IDs 0665:5161 and 0001:0000 as nutdrv_qx or rarely nutdrv_atcl_usb supported
  • data/driver.list.in: add Salicru SPS 500 ONE USB ID 0665:5161 as nutdrv_qx supported [#3079]
  • data/driver.list.in: add Belkin USB ID 0665:5161 as nutdrv_qx supported (per driver source comments)
  • drivers/usbhid-ups.c: upsdrv_initups(): fix variable name for the snprintf() return value [#3083]
  • drivers/usbhid-ups.c: upsdrv_initups(): also report how many hid2nut mappings are known vs. how many were used using USB HID [#3082]
  • drivers/usbhid-ups.c: upsdrv_initups(): generalize the report of unused report descriptor entries to "completely unused" vs. "partially unused" (e.g. Feature vs Input) [#3082]
  • drivers/usbhid-ups.c, drivers/hidtypes.h, NEWS.adoc: check if the subdriver code (mappings) and the device report sit together well [#3082]
  • drivers/usbhid-ups.c: callback(): update logged message that not only Manufacturer, but possibly an explicit Model, may be not-supported
  • NEWS.adoc: update about usbhid-ups suggestion to iterate "subdriver" values
  • drivers/usbhid-ups.c: upsdrv_initups(): check that if no ups_status bit was set, suggest that wrong "subdriver" is used then [#3080, #3061, #2058]
  • drivers/usbhid-ups.c: callback(): add log messages to stress that the dump of Report Descriptor actually seen, and its later hid_ups_walk() with a particular subdriver, may not match up well [#3061]
  • drivers/usbhid-ups.c: upsdrv_initups(): add log messages to help trace logical progress through the code [#3061]
  • drivers/usbhid-ups.c: possibly_supported(): suggest iterating "subdriver" values [#2058]
  • NEWS.adoc, drivers/usbhid-ups.c, drivers/usbhid-ups.h: drivers/usbhid-ups.c: do not assume that "!online"=="offline" [#3080]
  • drivers/usbhid-ups.c: fix indentation (cosmetic)
  • drivers/usbhid-ups.c: ups_status_set(): revise code markup/style

2.3. 2025-09-07 Jim Klimov <jimklimov+nut@gmail.com>

  • drivers/mge-hid.c, NEWS.adoc: Improved support for Eaton 5S1500LCD (US version). [#2380]
  • NEWS.adoc, docs/config-prereqs.txt, docs/configure.txt, docs/developers.txt, docs/download.txt, docs/maintainer-guide.txt, docs/man/apcsmart.txt, docs/man/belkin.txt, docs/man/genericups.txt, docs/man/mge-shut.txt, docs/man/upsdrvsvcctl.txt, docs/man/upsmon.conf.txt, docs/man/upssched.conf.txt, docs/man/upsset.cgi.txt, docs/man/usbhid-ups.txt, docs/new-drivers.txt, docs/outlets.txt, docs/packager-guide.txt, docs/scheduling.txt, scripts/Windows/README.adoc, scripts/external_apis/enphase/README.adoc: Reword multiple docs to avoid admonition blocks with invalid sentences
  • docs/Makefile.am: spellcheck: help avoid admonition blocks with invalid sentences (after rendering as a box)
  • docs/download.txt: revise markup for Windows downloads
  • docs/download.txt: revise info about/from Repology
  • docs/download.txt: revise note about official releases
  • docs/download.txt: revise part about source archives from github

2.4. 2025-09-06 desertwitch <24509509+desertwitch@users.noreply.github.com>

  • drivers/nutdrv_qx_megatec.c: trim battery.runtime variable

2.5. 2025-09-05 Jim Klimov <jimklimov+nut@gmail.com>

  • .github/workflows/codeql.yml: fix syntax for codeql queries

2.6. 2025-09-04 Jim Klimov <jimklimov+nut@gmail.com>

  • .github/workflows/codeql.yml: Revert ".github/workflows/codeql.yml: use modern "language" ID "c-cpp"" This reverts commit 972358ec7663007419f0b1926d30f9f5a494d910.
  • .github/workflows/codeql.yml: enable ccache per scenario, follow experience from wmnut#24
  • .github/workflows/codeql.yml: enable more codeql queries
  • .github/workflows/codeql.yml: relocate comments, drop dead code
  • .github/workflows/codeql.yml: avoid man-db update in APT actions
  • .github/workflows/codeql.yml: report the location and version of compiler used
  • .github/workflows/codeql.yml: add a way to vary matrix.build-mode for codeql
  • .github/workflows/codeql.yml: only init CodeQL just before the actual build, not before other filesystem changes
  • .github/workflows/codeql.yml: use modern "language" ID "c-cpp" "c" and "cpp" are older names, now aliases to this one
  • .github/workflows/codeql.yml: revise markup and comments of the matrix definition
  • .github/workflows/codeql.yml: Allow manually running the action, e.g. if disabled after some quietness in the source

2.7. 2025-09-03 Laurent Bigonville <bigon@bigon.be>

  • docs/Makefile.am: Fix installation of the pdf files

2.8. 2025-09-03 Jim Klimov <jimklimov+nut@gmail.com>

  • docs/developers.txt: clarify use of "void" argument lists

2.9. 2025-09-02 Jim Klimov <jimklimov+nut@gmail.com>

  • ci_build.sh: when reporting host envvars, use backslashes to facilitate copy-paste reproduction of CI builds
  • ci_build.sh: when reporting CONFIGURING NUT, use backslashes to facilitate copy-paste reproduction of CI builds
  • configure.ac, docs/configure.txt, m4/nut_check_python.m4, NEWS.adoc: allow to configure Python module install location more generally [#3062]
  • scripts/python/app/NUT-Monitor-py2gtk2.in, scripts/python/app/NUT-Monitor-py3qt5.in, scripts/python/app/NUT-Monitor-py3qt6.in: scripts/python/app/NUT-Monitor-py*.in: try to honour a customized PyNUT(Client) module path [#3062]

2.10. 2025-09-02 Hector Martin <marcan@marcan.st>

  • drivers/apc_modbus.c: apc_modbus: Fix invalid memory access for USB vendor/product/serial

2.11. 2025-08-31 Jim Klimov <jimklimov+nut@gmail.com>

  • configure.ac, docs/configure.txt, m4/nut_check_python.m4, NEWS.adoc: allow to configure PyNUT(Client) install location [#3062]

2.12. 2025-08-09 Colin Dean <colindean@users.noreply.github.com>

  • docs/download.txt, docs/nut.dict: Include macOS with Mac OS X Apple shortened the name to "OS X" in 2011 and then changed it to "macOS" in 2016 to align with the branding of Apple’s other operating systems. https://en.wikipedia.org/w/index.php?title=MacOS&oldid=1304698699
  • docs/download.txt: Update download.txt with link to Homebrew formula for macOS nut has been in Homebrew since 2014.

2.13. 2025-08-08 Jim Klimov <jimklimov+nut@gmail.com>

  • NEWS.adoc, UPGRADING.adoc: prepare for v2.8.5.x iterations
  • NEWS.adoc, UPGRADING.adoc, docs/docinfo.xml.in: Revert "NEWS.adoc, UPGRADING.adoc, docs/docinfo.xml.in: finalize text before NUT v2.8.4 release" This reverts commit 8f14140bbc395baa108bd06a9f664bd0a6f00bc8.
  • tools/gitlog2version.sh: for development, set fallback NUT_VERSION_DEFAULT=2.8.4.1
  • configure.ac: for now do not require (pre-)release tagged commits to build changelog by default - keep doing it on systems where we can though
  • configure.ac: rephrase the message about --enable-docs-changelog [#3019, #3053]
  • ci_build.sh: limit default "configure --enable-docs-changelog=no" for CI builds on systems where CANBUILD_DOCS_ALL!=yes
  • ci_build.sh: add support for WITH_CHANGELOG envvar to pass down as configure --enable-docs-changelog=…
  • .github/workflows/codeql.yml: configure --disable-docs-changelog in CI builds
  • configure.ac: for (pre-)release builds we default nut_enable_docs_changelog auto⇒yes - do so loudly, and default --with-doc man⇒auto as well for all builds to have a chance to try this
  • docs/maintainer-guide.txt: update the guide
  • docs/maintainer-guide.txt: commit that in tools/gitlog2version.sh: for development, set fallback NUT_VERSION_DEFAULT=X.Y.Z.1