-
-
Notifications
You must be signed in to change notification settings - Fork 350
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upstreaming improvements from 42ity/nut fork #1316
Comments
Updated checklist above with achievements around PR #2275 which merged current master into FTY branch so it built green for the first time, and ported back the installer, |
Combine several small PRs for issue #1316 and their NEWS entries
Note: with recent cross-pollinated work about making DMF codebase viable on MacOS, there were quite a few general quality-of-life improvements for that platform and others. Some of it (not DMF-specific parts) fed back into master right away.
|
A lot of work on NUT was done under the auspices of Eaton-backed 42ity project, as well as some earlier bundled releases that became part of its codebase. While much of the development was cross-posted for PRs, some was only pursued in the fork to perfect there first. 42ity took the decision to eventually move from the burden of maintaining a separate fork (thereby regularly solving merge conflicts) towards using the "upstream NUT" codebase directly, so I imported the "FTY" branch and identified the largest differing subjects to reconcile between the two:
configure --with-docs=dist-auto
#2340, PR Upstream from FTY branch:make distcheck-light-man
and./confgure --with-doc=man=dist-auto
features #2473scripts/installer
… #2623 => https://github.com/networkupstools/nut/pulls?q=label%3Anutconfstr_concat
#2343 / PR common/str.c, include/str.h: introducestr_concat()
#2476libcommonstr.la
#2478 and Reviselibwincompat.la
vs.libcommonstr.la
helpers inlibnutscan
build recipe #2491libserial-nutscan.la
from DMF/FTY branch and clean up nut-scanner makefile #2490do_convert_deci
toggle was converted from boolean setting into a flag checked right inmge-xml.c
; will be posted in FTY remerge from master as of 2024-06-15 #2472 resyncauglenstest
bits #2341, PR Define anauglenstestsdir
to install the augeastest_nut.aug
file #2474Notes about known feature changes between the forks (as of comparison in early 2022, before some of these changes got upstreamed in e.g. #320):
** added "device.N.outlet.switchable" fields
** renamed the value of "ambient.contacts.N.status" from "opened" to "open"; note they are "opened" in other MIBs as seen below
** "device.N.input.feed.desc", "device.N.outlet.M.name", separated "device.N.outlet.group.M.name" vs. "device.N.outlet.group.M.desc" (also added "device.N.outlet.switchable")
** NOTE: compared to those master-branch builds, LOST phase info "outlet.group.N.phase" however maybe only for single-phase devices? seems there is a rename for three-phased ones:
...and in at least one case for one phase also (but that may be some experimental ePDU? its data dump includes three separate input phase data collections, but just one outlet group... can that be a three-phase outlet actually?):
** between 42ity/nut versions, iteratively added lots of info categories for ambient sensors; listing some unique-name samples here:
...and "outlet.N.status" and "outlet.switchable" where applicable (UPS):
** compared to upstream, added "ambient.contacts.N.status" status (note "opened" not "open" here, while "ambient.N.contacts.M.status" flip between "active"/"inactive") and changed "ups.type" reading, and added "outlet.N.status" and "outlet.switchable" for UPS:
** added "ambient.contacts.N.name" and "outlet.N.status"
** Compared to master builds (same for 20190711, 20211102_a12302c90ae) added more (note: "opened" not "open"):
** Compared to master builds, added "ambient.contacts.N.status" (note: "opened" not "open") and "device.contact"/"device.location":
** Compared to master builds, added device.contact and device.location like above
Also it would help migrations and refactoring with peace of mind, if the 42ity/nut codebase passed same CI requirements as the upstream NUT. Some notes in this regard:
...and read the warnings which pop up, fix them,
make
until the recipe looks okay.The few errors above are about definitions:
...and a large amount of same error with missing field initializers for
snmp_info_t
tables (DMF codebase has more fields there, aiming for more conversion function types; if that approach survives - an initialization macro may be due to substitute the NULLs where no value was given).The text was updated successfully, but these errors were encountered: