---
search:
  exclude: true
---

## 23.11.0
*(2023-11-17)*

A big thank you to the following 37 contributors this last month:

- [murrant](https://github.com/murrant) (26)
- [PipoCanaja](https://github.com/PipoCanaja) (5)
- [jepke](https://github.com/jepke) (3)
- [peelman](https://github.com/peelman) (3)
- [dependabot](https://github.com/apps/dependabot) (2)
- [Galileo77](https://github.com/Galileo77) (2)
- [tim427](https://github.com/tim427) (2)
- [ottorei](https://github.com/ottorei) (2)
- [eskyuu](https://github.com/eskyuu) (1)
- [arjenz](https://github.com/arjenz) (1)
- [electrocret](https://github.com/electrocret) (1)
- [GramThanos](https://github.com/GramThanos) (1)
- [bnerickson](https://github.com/bnerickson) (1)
- [peejaychilds](https://github.com/peejaychilds) (1)
- [laf](https://github.com/laf) (1)
- [luttermann](https://github.com/luttermann) (1)
- [helppp](https://github.com/helppp) (1)
- [slalomsk8er](https://github.com/slalomsk8er) (1)
- [VirTechSystems](https://github.com/VirTechSystems) (1)
- [westerterp](https://github.com/westerterp) (1)
- [cmadamsgit](https://github.com/cmadamsgit) (1)
- [lhwolfarth](https://github.com/lhwolfarth) (1)
- [webtroter](https://github.com/webtroter) (1)
- [fbouynot](https://github.com/fbouynot) (1)
- [Wooboy](https://github.com/Wooboy) (1)
- [kmodzel](https://github.com/kmodzel) (1)
- [jaannnis](https://github.com/jaannnis) (1)
- [Fehler12](https://github.com/Fehler12) (1)
- [not-known](https://github.com/not-known) (1)
- [drykov-ttc](https://github.com/drykov-ttc) (1)
- [tydal-borge](https://github.com/tydal-borge) (1)
- [iNuc1ear](https://github.com/iNuc1ear) (1)
- [mpikzink](https://github.com/mpikzink) (1)
- [WilliamDEdwards](https://github.com/WilliamDEdwards) (1)
- [RandGH](https://github.com/RandGH) (1)
- [underscoredje](https://github.com/underscoredje) (1)
- [Schouwenburg](https://github.com/Schouwenburg) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (40)
- [Jellyfrog](https://github.com/Jellyfrog) (10)
- [electrocret](https://github.com/electrocret) (9)
- [laf](https://github.com/laf) (2)
- [ottorei](https://github.com/ottorei) (2)
- [kwangsing3](https://github.com/kwangsing3) (1)

#### Feature
* Mail Transport: option to use BCC ([#15554](https://github.com/librenms/librenms/pull/15554)) - [murrant](https://github.com/murrant)
* New command: lnms report:devices ([#15539](https://github.com/librenms/librenms/pull/15539)) - [murrant](https://github.com/murrant)

#### Breaking Change
* Plugin update (breaking) ([#15498](https://github.com/librenms/librenms/pull/15498)) - [murrant](https://github.com/murrant)

#### Security
* Fix a few XSS vulnerabilities in device group popups ([#15581](https://github.com/librenms/librenms/pull/15581)) - [murrant](https://github.com/murrant)
* Disable GET login by default ([#15558](https://github.com/librenms/librenms/pull/15558)) - [murrant](https://github.com/murrant)
* Use GitHub for vulnerability reporting ([#15555](https://github.com/librenms/librenms/pull/15555)) - [murrant](https://github.com/murrant)

#### Device
* [APC sensor] Actual state of alarm contact beside config state ([#15576](https://github.com/librenms/librenms/pull/15576)) - [jepke](https://github.com/jepke)
* Vertiv PDU show power graph in mouesover and device overview ([#15543](https://github.com/librenms/librenms/pull/15543)) - [Galileo77](https://github.com/Galileo77)
* Cisco WLC: fetch LWAPP SSIDs for client counts ([#15531](https://github.com/librenms/librenms/pull/15531)) - [murrant](https://github.com/murrant)
* Add sysObjectIDs for other models of PSS shelves ([#15525](https://github.com/librenms/librenms/pull/15525)) - [peelman](https://github.com/peelman)
* Added values from SFP DDM values for awplus switches ([#15522](https://github.com/librenms/librenms/pull/15522)) - [luttermann](https://github.com/luttermann)
* Add support for Nokia 1830 PSS Optical gear ([#15516](https://github.com/librenms/librenms/pull/15516)) - [peelman](https://github.com/peelman)
* Add Support for Samlex America PSR-1200-48 Inverters ([#15515](https://github.com/librenms/librenms/pull/15515)) - [peelman](https://github.com/peelman)
* TrueNAS no longer supports zpool space usage ([#15490](https://github.com/librenms/librenms/pull/15490)) - [murrant](https://github.com/murrant)
* Vertiv pdu mg02e4w1 ([#15484](https://github.com/librenms/librenms/pull/15484)) - [Galileo77](https://github.com/Galileo77)
* Add FortiGate Environment stats ([#15464](https://github.com/librenms/librenms/pull/15464)) - [westerterp](https://github.com/westerterp)
* Add support for FiberStore "data center" switches ([#15445](https://github.com/librenms/librenms/pull/15445)) - [cmadamsgit](https://github.com/cmadamsgit)
* Adding basic support for Datacom DmOS devices. ([#15436](https://github.com/librenms/librenms/pull/15436)) - [lhwolfarth](https://github.com/lhwolfarth)
* Apc ap 7900b ([#15392](https://github.com/librenms/librenms/pull/15392)) - [webtroter](https://github.com/webtroter)
* Add definition fujifilmprinter ([#15381](https://github.com/librenms/librenms/pull/15381)) - [Wooboy](https://github.com/Wooboy)
* Initial support for Moxa EDS-4000 Series switches ([#15293](https://github.com/librenms/librenms/pull/15293)) - [kmodzel](https://github.com/kmodzel)
* Cisco SB Switch Temp and Fanspeed fix ([#15225](https://github.com/librenms/librenms/pull/15225)) - [Fehler12](https://github.com/Fehler12)
* Add support eltex more devices ([#15108](https://github.com/librenms/librenms/pull/15108)) - [drykov-ttc](https://github.com/drykov-ttc)
* Add support for Security Radar ([#15053](https://github.com/librenms/librenms/pull/15053)) - [tydal-borge](https://github.com/tydal-borge)
* Add disk sensors for Oceanstor ([#15010](https://github.com/librenms/librenms/pull/15010)) - [iNuc1ear](https://github.com/iNuc1ear)
* Fix Fortinet HA-status polling state translations ([#14921](https://github.com/librenms/librenms/pull/14921)) - [ottorei](https://github.com/ottorei)
* Add Quantum Scalar I6000 Tape Library ([#14915](https://github.com/librenms/librenms/pull/14915)) - [mpikzink](https://github.com/mpikzink)
* Add liebert detailsv2 ([#14746](https://github.com/librenms/librenms/pull/14746)) - [RandGH](https://github.com/RandGH)
* Zyxel AP  wireless  client discovery enhancement ([#14704](https://github.com/librenms/librenms/pull/14704)) - [underscoredje](https://github.com/underscoredje)
* Dantherm hostname ([#14223](https://github.com/librenms/librenms/pull/14223)) - [Schouwenburg](https://github.com/Schouwenburg)
* Add Panorama log collection write rate ([#13864](https://github.com/librenms/librenms/pull/13864)) - [ottorei](https://github.com/ottorei)

#### Webui
* Device links formatting changes ([#15580](https://github.com/librenms/librenms/pull/15580)) - [eskyuu](https://github.com/eskyuu)
* Only set user roles if they are defined ([#15577](https://github.com/librenms/librenms/pull/15577)) - [murrant](https://github.com/murrant)
* Fix Down/Up time error if device is unpolled ([#15545](https://github.com/librenms/librenms/pull/15545)) - [murrant](https://github.com/murrant)
* Fix health temperature degree display ([#15541](https://github.com/librenms/librenms/pull/15541)) - [murrant](https://github.com/murrant)
* Fixed BGP Remote peer link and graph in Routing Overview, or just static text when not a device in LibreNMS ([#15535](https://github.com/librenms/librenms/pull/15535)) - [tim427](https://github.com/tim427)
* Added BGP Remote peer link and graph in Routing Overview ([#15532](https://github.com/librenms/librenms/pull/15532)) - [tim427](https://github.com/tim427)
* Respect web_mouseover setting in popup component ([#15530](https://github.com/librenms/librenms/pull/15530)) - [murrant](https://github.com/murrant)
* Prefetch devices in group to avoid cost of subquery ([#15511](https://github.com/librenms/librenms/pull/15511)) - [slalomsk8er](https://github.com/slalomsk8er)

#### Alerting
* Give reason for alert template fallback ([#15583](https://github.com/librenms/librenms/pull/15583)) - [murrant](https://github.com/murrant)
* Add option to disable the send of acknowledgement alerts. ([#15208](https://github.com/librenms/librenms/pull/15208)) - [not-known](https://github.com/not-known)

#### Applications
* [bugfix] Passing $device into data_update_helper functions instead of declaring it as global. ([#15542](https://github.com/librenms/librenms/pull/15542)) - [bnerickson](https://github.com/bnerickson)

#### Api
* API Oxidized http source optimization ([#15560](https://github.com/librenms/librenms/pull/15560)) - [murrant](https://github.com/murrant)
* Get poller group ([#15493](https://github.com/librenms/librenms/pull/15493)) - [VirTechSystems](https://github.com/VirTechSystems)

#### Discovery
* UCD buffers and cache discovered with inverted free/used values ([#15538](https://github.com/librenms/librenms/pull/15538)) - [murrant](https://github.com/murrant)

#### Polling
* Prevent non-unicode characters in ifAlias ([#15585](https://github.com/librenms/librenms/pull/15585)) - [murrant](https://github.com/murrant)
* BGP-peers if no data, skip ([#15548](https://github.com/librenms/librenms/pull/15548)) - [murrant](https://github.com/murrant)
* UCD-MIB polling check isset ([#15547](https://github.com/librenms/librenms/pull/15547)) - [murrant](https://github.com/murrant)
* Fix Ciscowlc error when bsnApIfNoOfUsers is not present ([#15529](https://github.com/librenms/librenms/pull/15529)) - [murrant](https://github.com/murrant)

#### Authentication
* Add auth_ldap_cacertfile and auth_ldap_ignorecert options ([#15526](https://github.com/librenms/librenms/pull/15526)) - [peejaychilds](https://github.com/peejaychilds)

#### Bug
* Bug - Fix API Content-Type Header handling ([#15574](https://github.com/librenms/librenms/pull/15574)) - [PipoCanaja](https://github.com/PipoCanaja)
* Huawei Controllers - Exception removed and changed OID for AP Type ([#15564](https://github.com/librenms/librenms/pull/15564)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix graphs device check before auth ([#15551](https://github.com/librenms/librenms/pull/15551)) - [murrant](https://github.com/murrant)
* Prometheus on failure, disable for rest of run ([#15546](https://github.com/librenms/librenms/pull/15546)) - [murrant](https://github.com/murrant)
* Bug - Fix missing device_id in NAC tab view ([#15534](https://github.com/librenms/librenms/pull/15534)) - [PipoCanaja](https://github.com/PipoCanaja)
* Bug - string VS array ([#15533](https://github.com/librenms/librenms/pull/15533)) - [PipoCanaja](https://github.com/PipoCanaja)
* OSPF tables fix integer types ([#15528](https://github.com/librenms/librenms/pull/15528)) - [murrant](https://github.com/murrant)
* Fixed the wrong field being used for join ([#15524](https://github.com/librenms/librenms/pull/15524)) - [laf](https://github.com/laf)
* Dark mode fix routing tabs & pages ([#15485](https://github.com/librenms/librenms/pull/15485)) - [jepke](https://github.com/jepke)
* Minor fix and tweak for graylog integration ([#15455](https://github.com/librenms/librenms/pull/15455)) - [jepke](https://github.com/jepke)
* Smokeping menu and title use device displayname ([#15387](https://github.com/librenms/librenms/pull/15387)) - [fbouynot](https://github.com/fbouynot)
* Increase max package name length to 128 characters ([#14895](https://github.com/librenms/librenms/pull/14895)) - [WilliamDEdwards](https://github.com/WilliamDEdwards)

#### Cleanup
* Remove api_demo config setting ([#15563](https://github.com/librenms/librenms/pull/15563)) - [electrocret](https://github.com/electrocret)
* Wifi module does not exist anymore ([#15549](https://github.com/librenms/librenms/pull/15549)) - [murrant](https://github.com/murrant)
* Misc device column cleanups ([#15518](https://github.com/librenms/librenms/pull/15518)) - [murrant](https://github.com/murrant)

#### Documentation
* Update Docker docs ([#15556](https://github.com/librenms/librenms/pull/15556)) - [GramThanos](https://github.com/GramThanos)
* Changed log item, source(s_sys) to source(s_src) ([#15521](https://github.com/librenms/librenms/pull/15521)) - [helppp](https://github.com/helppp)

#### Translation
* Change spelling disc -\> disk ([#15569](https://github.com/librenms/librenms/pull/15569)) - [arjenz](https://github.com/arjenz)

#### Misc
* Update renamehost to include more logging if a folder already exists# ([#15280](https://github.com/librenms/librenms/pull/15280)) - [jaannnis](https://github.com/jaannnis)

#### Internal Features
* Print stack trace in error dumps ([#15514](https://github.com/librenms/librenms/pull/15514)) - [murrant](https://github.com/murrant)
* SnmpQuery runtime cache ([#15512](https://github.com/librenms/librenms/pull/15512)) - [murrant](https://github.com/murrant)

#### Dependencies
* Bump axios from 0.25.0 to 1.6.0 ([#15571](https://github.com/librenms/librenms/pull/15571)) - [dependabot](https://github.com/apps/dependabot)
* Bump browserify-sign from 4.2.1 to 4.2.2 ([#15510](https://github.com/librenms/librenms/pull/15510)) - [dependabot](https://github.com/apps/dependabot)


## 23.10.0
*(2023-10-26)*

A big thank you to the following 30 contributors this last month:

- [murrant](https://github.com/murrant) (84)
- [SourceDoctor](https://github.com/SourceDoctor) (6)
- [tim427](https://github.com/tim427) (4)
- [electrocret](https://github.com/electrocret) (3)
- [dependabot](https://github.com/apps/dependabot) (3)
- [noaheroufus](https://github.com/noaheroufus) (3)
- [PipoCanaja](https://github.com/PipoCanaja) (3)
- [Galileo77](https://github.com/Galileo77) (2)
- [fbouynot](https://github.com/fbouynot) (2)
- [Jellyfrog](https://github.com/Jellyfrog) (2)
- [peejaychilds](https://github.com/peejaychilds) (1)
- [cwispy](https://github.com/cwispy) (1)
- [qwerin](https://github.com/qwerin) (1)
- [lhwolfarth](https://github.com/lhwolfarth) (1)
- [CTV-2023](https://github.com/CTV-2023) (1)
- [barryodonovan](https://github.com/barryodonovan) (1)
- [MrShunz](https://github.com/MrShunz) (1)
- [brointhemix](https://github.com/brointhemix) (1)
- [I-FGSD](https://github.com/I-FGSD) (1)
- [Ac0lyte](https://github.com/Ac0lyte) (1)
- [Jimmy-Cl](https://github.com/Jimmy-Cl) (1)
- [waddles](https://github.com/waddles) (1)
- [bnerickson](https://github.com/bnerickson) (1)
- [netravnen](https://github.com/netravnen) (1)
- [jepke](https://github.com/jepke) (1)
- [TheMysteriousX](https://github.com/TheMysteriousX) (1)
- [rolfbergheim](https://github.com/rolfbergheim) (1)
- [VVelox](https://github.com/VVelox) (1)
- [davromaniak](https://github.com/davromaniak) (1)
- [metrojworthington](https://github.com/metrojworthington) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (30)
- [Jellyfrog](https://github.com/Jellyfrog) (23)
- [electrocret](https://github.com/electrocret) (21)
- [PipoCanaja](https://github.com/PipoCanaja) (2)
- [RafalNiewinski](https://github.com/RafalNiewinski) (1)
- [rcmcronny](https://github.com/rcmcronny) (1)

#### Feature
* Muteable acknowledged alert notifications ([#15456](https://github.com/librenms/librenms/pull/15456)) - [SourceDoctor](https://github.com/SourceDoctor)
* Throttle error reporting ([#15391](https://github.com/librenms/librenms/pull/15391)) - [murrant](https://github.com/murrant)
* Deprecate poller.php ([#15370](https://github.com/librenms/librenms/pull/15370)) - [murrant](https://github.com/murrant)

#### Security
* Fix MAC search sql injection ([#15402](https://github.com/librenms/librenms/pull/15402)) - [murrant](https://github.com/murrant)
* Validate secure cookies ([#15401](https://github.com/librenms/librenms/pull/15401)) - [murrant](https://github.com/murrant)
* Fix xss in device groups overview ([#15399](https://github.com/librenms/librenms/pull/15399)) - [murrant](https://github.com/murrant)
* Update Tnmsne table backend ([#15384](https://github.com/librenms/librenms/pull/15384)) - [murrant](https://github.com/murrant)
* Fix unescaped output in ipv6 search page ([#15327](https://github.com/librenms/librenms/pull/15327)) - [murrant](https://github.com/murrant)

#### Device
* Fix websensor temp user_func ([#15492](https://github.com/librenms/librenms/pull/15492)) - [murrant](https://github.com/murrant)
* Discover AEN with sysobjectid instead of sysdescr ([#15482](https://github.com/librenms/librenms/pull/15482)) - [fbouynot](https://github.com/fbouynot)
* Huawei VRP AP controller fixes ([#15450](https://github.com/librenms/librenms/pull/15450)) - [murrant](https://github.com/murrant)
* Timos MPLS nullables round 2 ([#15448](https://github.com/librenms/librenms/pull/15448)) - [murrant](https://github.com/murrant)
* Fortimail add mail queues message count ([#15444](https://github.com/librenms/librenms/pull/15444)) - [cwispy](https://github.com/cwispy)
* Fix timos mpls, add checks ([#15430](https://github.com/librenms/librenms/pull/15430)) - [murrant](https://github.com/murrant)
* Fix VRP polling ([#15428](https://github.com/librenms/librenms/pull/15428)) - [murrant](https://github.com/murrant)
* Updating Datacom logo ([#15427](https://github.com/librenms/librenms/pull/15427)) - [lhwolfarth](https://github.com/lhwolfarth)
* Moxa EDS improve discovery ([#15375](https://github.com/librenms/librenms/pull/15375)) - [murrant](https://github.com/murrant)
* Fix Raisecom devices having not increasing OIDs on snmpwalk ([#15365](https://github.com/librenms/librenms/pull/15365)) - [MrShunz](https://github.com/MrShunz)
* Aviat svg logos ([#15360](https://github.com/librenms/librenms/pull/15360)) - [murrant](https://github.com/murrant)
* Add Fortinet logo ([#15359](https://github.com/librenms/librenms/pull/15359)) - [murrant](https://github.com/murrant)
* Added support for Cambium cnWave60 gear ([#15358](https://github.com/librenms/librenms/pull/15358)) - [noaheroufus](https://github.com/noaheroufus)
* Added support for Cambium cnMatrix switches ([#15351](https://github.com/librenms/librenms/pull/15351)) - [noaheroufus](https://github.com/noaheroufus)
* Update Windows version naming ([#15350](https://github.com/librenms/librenms/pull/15350)) - [I-FGSD](https://github.com/I-FGSD)
* Calix logo update ([#15348](https://github.com/librenms/librenms/pull/15348)) - [murrant](https://github.com/murrant)
* Calix AXOS Sensor Changes ([#15343](https://github.com/librenms/librenms/pull/15343)) - [noaheroufus](https://github.com/noaheroufus)
* Adding Active Power in Watts to APCs ([#15337](https://github.com/librenms/librenms/pull/15337)) - [Jimmy-Cl](https://github.com/Jimmy-Cl)
* Device stulz WIB8000 ([#15271](https://github.com/librenms/librenms/pull/15271)) - [jepke](https://github.com/jepke)
* Added some groups and corrected some references ([#15129](https://github.com/librenms/librenms/pull/15129)) - [rolfbergheim](https://github.com/rolfbergheim)
* Add model for Christie Digital projectors ([#15088](https://github.com/librenms/librenms/pull/15088)) - [davromaniak](https://github.com/davromaniak)
* Vmware vminfo modernize ([#15008](https://github.com/librenms/librenms/pull/15008)) - [murrant](https://github.com/murrant)
* Mcc valere ([#14753](https://github.com/librenms/librenms/pull/14753)) - [metrojworthington](https://github.com/metrojworthington)

#### Webui
* Do not update device IP when DNS resolution fails ([#15499](https://github.com/librenms/librenms/pull/15499)) - [murrant](https://github.com/murrant)
* Fix FDB table ip addresses missing ([#15481](https://github.com/librenms/librenms/pull/15481)) - [murrant](https://github.com/murrant)
* Fix bug saving snmpv3 device changes ([#15419](https://github.com/librenms/librenms/pull/15419)) - [murrant](https://github.com/murrant)
* Fix graph errors ([#15407](https://github.com/librenms/librenms/pull/15407)) - [murrant](https://github.com/murrant)
* Calculate downtime from device_outages table ([#15397](https://github.com/librenms/librenms/pull/15397)) - [murrant](https://github.com/murrant)
* Sort services by type and name ([#15367](https://github.com/librenms/librenms/pull/15367)) - [SourceDoctor](https://github.com/SourceDoctor)
* Vertically center device icons ([#15361](https://github.com/librenms/librenms/pull/15361)) - [murrant](https://github.com/murrant)
* Fix BGP peer IP missing in Routing page ([#15352](https://github.com/librenms/librenms/pull/15352)) - [tim427](https://github.com/tim427)
* Fix incorrect pages offset on app ntp page ([#15349](https://github.com/librenms/librenms/pull/15349)) - [Ac0lyte](https://github.com/Ac0lyte)
* Show Temperature Graphs on Smart App Overview ([#15342](https://github.com/librenms/librenms/pull/15342)) - [SourceDoctor](https://github.com/SourceDoctor)
* Show never polled Information on Widget and in Device itself ([#15341](https://github.com/librenms/librenms/pull/15341)) - [SourceDoctor](https://github.com/SourceDoctor)
* Show device group on device overview ([#15338](https://github.com/librenms/librenms/pull/15338)) - [SourceDoctor](https://github.com/SourceDoctor)
* FDB Tables improve performance ([#15333](https://github.com/librenms/librenms/pull/15333)) - [murrant](https://github.com/murrant)
* Fix some issues with admin self settings ([#15332](https://github.com/librenms/librenms/pull/15332)) - [murrant](https://github.com/murrant)
* Fix eventlog debug code left in ([#15331](https://github.com/librenms/librenms/pull/15331)) - [murrant](https://github.com/murrant)
* Device NAC page to Laravel Blade ([#15329](https://github.com/librenms/librenms/pull/15329)) - [PipoCanaja](https://github.com/PipoCanaja)

#### Alerting
* Send event log when alert rule fails ([#15440](https://github.com/librenms/librenms/pull/15440)) - [murrant](https://github.com/murrant)
* Fix Linemessagingapi class name ([#15356](https://github.com/librenms/librenms/pull/15356)) - [murrant](https://github.com/murrant)
* Fix alerting find owner contacts on old SQL server versions ([#15355](https://github.com/librenms/librenms/pull/15355)) - [murrant](https://github.com/murrant)
* Add alert transport for Grafana Oncall ([#15330](https://github.com/librenms/librenms/pull/15330)) - [waddles](https://github.com/waddles)
* Show which host marked a device as down. ([#15209](https://github.com/librenms/librenms/pull/15209)) - [TheMysteriousX](https://github.com/TheMysteriousX)

#### Graphs
* Fix rrd exists check ([#15466](https://github.com/librenms/librenms/pull/15466)) - [murrant](https://github.com/murrant)
* Scale disk spezific SMART Graph from 0 ([#15339](https://github.com/librenms/librenms/pull/15339)) - [SourceDoctor](https://github.com/SourceDoctor)

#### Applications
* Unix Agent and Application fixes ([#15460](https://github.com/librenms/librenms/pull/15460)) - [murrant](https://github.com/murrant)
* Adding Socket Statistics Application Support ([#15307](https://github.com/librenms/librenms/pull/15307)) - [bnerickson](https://github.com/bnerickson)
* Update docs for osupdate when being used as a script for the agent ([#15099](https://github.com/librenms/librenms/pull/15099)) - [VVelox](https://github.com/VVelox)

#### Api
* Fix API get_location by ID ([#15506](https://github.com/librenms/librenms/pull/15506)) - [murrant](https://github.com/murrant)
* Allow add device to set location ([#15469](https://github.com/librenms/librenms/pull/15469)) - [murrant](https://github.com/murrant)

#### Settings
* Rearrange AD auth settings ([#15363](https://github.com/librenms/librenms/pull/15363)) - [murrant](https://github.com/murrant)

#### Polling
* IS-IS polling handle missing data ([#15491](https://github.com/librenms/librenms/pull/15491)) - [murrant](https://github.com/murrant)
* Fix polling down retry (and other items) ([#15483](https://github.com/librenms/librenms/pull/15483)) - [murrant](https://github.com/murrant)
* Ports min polled period of 1 ([#15472](https://github.com/librenms/librenms/pull/15472)) - [murrant](https://github.com/murrant)
* Ports module: fix nulls not updating ([#15467](https://github.com/librenms/librenms/pull/15467)) - [murrant](https://github.com/murrant)
* Always create rrd folder on localhost ([#15457](https://github.com/librenms/librenms/pull/15457)) - [murrant](https://github.com/murrant)
* Fix port module wrong null ([#15431](https://github.com/librenms/librenms/pull/15431)) - [murrant](https://github.com/murrant)
* Fix an agent bug if a process ran more than 999 days ([#15411](https://github.com/librenms/librenms/pull/15411)) - [murrant](https://github.com/murrant)
* Type safety check ([#15409](https://github.com/librenms/librenms/pull/15409)) - [murrant](https://github.com/murrant)
* Add rewrites include for legacy modules ([#15405](https://github.com/librenms/librenms/pull/15405)) - [murrant](https://github.com/murrant)
* Fix last polled in wrong column ([#15398](https://github.com/librenms/librenms/pull/15398)) - [murrant](https://github.com/murrant)
* Fix last polled ([#15396](https://github.com/librenms/librenms/pull/15396)) - [murrant](https://github.com/murrant)
* Availability module fixes ([#15369](https://github.com/librenms/librenms/pull/15369)) - [murrant](https://github.com/murrant)

#### Bug
* Add Wrong Type work around to snmp_get function ([#15509](https://github.com/librenms/librenms/pull/15509)) - [peejaychilds](https://github.com/peejaychilds)
* Ospf metrics fix ([#15508](https://github.com/librenms/librenms/pull/15508)) - [murrant](https://github.com/murrant)
* IP::fromHexString handle ascii ([#15504](https://github.com/librenms/librenms/pull/15504)) - [murrant](https://github.com/murrant)
* Fix poller perf graph time ([#15500](https://github.com/librenms/librenms/pull/15500)) - [murrant](https://github.com/murrant)
* Fix auth_ad_url validation ([#15487](https://github.com/librenms/librenms/pull/15487)) - [murrant](https://github.com/murrant)
* Fix regression causing wall of ping latency ([#15486](https://github.com/librenms/librenms/pull/15486)) - [fbouynot](https://github.com/fbouynot)
* Fix Device ip address mutator ([#15480](https://github.com/librenms/librenms/pull/15480)) - [murrant](https://github.com/murrant)
* Fix Typo in FdbTablesController ([#15477](https://github.com/librenms/librenms/pull/15477)) - [electrocret](https://github.com/electrocret)
* Allow inserting null values for sensors ([#15470](https://github.com/librenms/librenms/pull/15470)) - [Jellyfrog](https://github.com/Jellyfrog)
* Never set bgp and ports delta fields to unsigned ([#15468](https://github.com/librenms/librenms/pull/15468)) - [murrant](https://github.com/murrant)
* Error when device is not found ([#15459](https://github.com/librenms/librenms/pull/15459)) - [murrant](https://github.com/murrant)
* Restore _delta fields to signed ([#15458](https://github.com/librenms/librenms/pull/15458)) - [murrant](https://github.com/murrant)
* Change port and BGP stats fields to unsigned ([#15449](https://github.com/librenms/librenms/pull/15449)) - [murrant](https://github.com/murrant)
* Fix Top menu search on mobile respo ([#15439](https://github.com/librenms/librenms/pull/15439)) - [qwerin](https://github.com/qwerin)
* Packages fixes (+pacman) ([#15415](https://github.com/librenms/librenms/pull/15415)) - [murrant](https://github.com/murrant)
* Fix bug in graphite ([#15393](https://github.com/librenms/librenms/pull/15393)) - [murrant](https://github.com/murrant)
* Fixing Private eBGP visualization, corrected 16bit ASN private range, added 32bit ASN range ([#15357](https://github.com/librenms/librenms/pull/15357)) - [tim427](https://github.com/tim427)
* Improve "count" graphs for F5OS ([#15335](https://github.com/librenms/librenms/pull/15335)) - [PipoCanaja](https://github.com/PipoCanaja)

#### Refactor
* Refactor MAC utilities into a single class ([#15379](https://github.com/librenms/librenms/pull/15379)) - [murrant](https://github.com/murrant)
* Refactor discovery-protocols with SnmpQuery ([#15324](https://github.com/librenms/librenms/pull/15324)) - [PipoCanaja](https://github.com/PipoCanaja)

#### Cleanup
* ARP Discovery use MacHelper ([#15479](https://github.com/librenms/librenms/pull/15479)) - [electrocret](https://github.com/electrocret)
* Ports ifPhysAddress use MAC helper ([#15478](https://github.com/librenms/librenms/pull/15478)) - [murrant](https://github.com/murrant)
* Module status cleanups ([#15461](https://github.com/librenms/librenms/pull/15461)) - [murrant](https://github.com/murrant)
* Use modern device attrib handling ([#15429](https://github.com/librenms/librenms/pull/15429)) - [murrant](https://github.com/murrant)
* Remove some lightly used or unused dbFacile functions ([#15418](https://github.com/librenms/librenms/pull/15418)) - [murrant](https://github.com/murrant)
* Misc fixes 42 ([#15413](https://github.com/librenms/librenms/pull/15413)) - [murrant](https://github.com/murrant)
* Remove snmp functions that are barely used ([#15377](https://github.com/librenms/librenms/pull/15377)) - [murrant](https://github.com/murrant)
* Remove legacy addhost code ([#15376](https://github.com/librenms/librenms/pull/15376)) - [murrant](https://github.com/murrant)
* Remove unused functions ([#15371](https://github.com/librenms/librenms/pull/15371)) - [murrant](https://github.com/murrant)

#### Documentation
* Redirect old install docs ([#15505](https://github.com/librenms/librenms/pull/15505)) - [murrant](https://github.com/murrant)
* Update supported OS list ([#15426](https://github.com/librenms/librenms/pull/15426)) - [Jellyfrog](https://github.com/Jellyfrog)
* Documentation - Smokeping Integration in Centos - Update Smokeping.md ([#15390](https://github.com/librenms/librenms/pull/15390)) - [CTV-2023](https://github.com/CTV-2023)
* Specify radius attributes for auth roles ([#15374](https://github.com/librenms/librenms/pull/15374)) - [barryodonovan](https://github.com/barryodonovan)
* Add unzip to all install docs dependencies ([#15354](https://github.com/librenms/librenms/pull/15354)) - [brointhemix](https://github.com/brointhemix)
* Docs security secure session cookie ([#15328](https://github.com/librenms/librenms/pull/15328)) - [murrant](https://github.com/murrant)
* Stable release update clarification ([#15326](https://github.com/librenms/librenms/pull/15326)) - [murrant](https://github.com/murrant)
* Bird2 set timeformat protocols ([#15292](https://github.com/librenms/librenms/pull/15292)) - [netravnen](https://github.com/netravnen)

#### Translation
* German and English typo correction ([#15503](https://github.com/librenms/librenms/pull/15503)) - [Galileo77](https://github.com/Galileo77)
* German translation corrected and some visual improvements added. ([#15502](https://github.com/librenms/librenms/pull/15502)) - [Galileo77](https://github.com/Galileo77)
* Missing device ip translation ([#15465](https://github.com/librenms/librenms/pull/15465)) - [murrant](https://github.com/murrant)

#### Tests
* Exclude availability module from default testing ([#15462](https://github.com/librenms/librenms/pull/15462)) - [murrant](https://github.com/murrant)

#### Misc
* Fixes check_dns against localhost when a search-domain is configured ([#15373](https://github.com/librenms/librenms/pull/15373)) - [tim427](https://github.com/tim427)
* Added extra ASN-range comments, added Priv eBGP on host details, changed color to light-blue instead of red ([#15372](https://github.com/librenms/librenms/pull/15372)) - [tim427](https://github.com/tim427)

#### Internal Features
* Add application metrics model and relationships ([#15417](https://github.com/librenms/librenms/pull/15417)) - [murrant](https://github.com/murrant)
* Error Reporting: Log instead of dump ([#15412](https://github.com/librenms/librenms/pull/15412)) - [murrant](https://github.com/murrant)

#### Dependencies
* Bump @babel/traverse from 7.16.10 to 7.23.2 ([#15473](https://github.com/librenms/librenms/pull/15473)) - [dependabot](https://github.com/apps/dependabot)
* Bump postcss from 8.4.19 to 8.4.31 ([#15380](https://github.com/librenms/librenms/pull/15380)) - [dependabot](https://github.com/apps/dependabot)
* Bump composer/composer from 2.5.8 to 2.6.4 ([#15364](https://github.com/librenms/librenms/pull/15364)) - [dependabot](https://github.com/apps/dependabot)


## 23.9.0
*(2023-09-15)*

A big thank you to the following 16 contributors this last month:

- [murrant](https://github.com/murrant) (33)
- [SourceDoctor](https://github.com/SourceDoctor) (3)
- [VVelox](https://github.com/VVelox) (3)
- [eskyuu](https://github.com/eskyuu) (2)
- [PipoCanaja](https://github.com/PipoCanaja) (2)
- [MrMoCoDev](https://github.com/MrMoCoDev) (1)
- [electrocret](https://github.com/electrocret) (1)
- [Pelt10](https://github.com/Pelt10) (1)
- [LoveSkylark](https://github.com/LoveSkylark) (1)
- [slashdoom](https://github.com/slashdoom) (1)
- [jepke](https://github.com/jepke) (1)
- [hanserasmus](https://github.com/hanserasmus) (1)
- [adamsweet](https://github.com/adamsweet) (1)
- [fbourqui](https://github.com/fbourqui) (1)
- [fbouynot](https://github.com/fbouynot) (1)
- [Fehler12](https://github.com/Fehler12) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (10)
- [Jellyfrog](https://github.com/Jellyfrog) (9)
- [electrocret](https://github.com/electrocret) (8)
- [PipoCanaja](https://github.com/PipoCanaja) (3)
- [VVelox](https://github.com/VVelox) (1)
- [cltnoc](https://github.com/cltnoc) (1)
- [ottorei](https://github.com/ottorei) (1)

#### Feature
* Additional contact options for email transports ([#15266](https://github.com/librenms/librenms/pull/15266)) - [murrant](https://github.com/murrant)
* Implement RBAC (only built in roles) ([#15212](https://github.com/librenms/librenms/pull/15212)) - [murrant](https://github.com/murrant)

#### Security
* Fix injection vulnerability in fdb search page ([#15315](https://github.com/librenms/librenms/pull/15315)) - [murrant](https://github.com/murrant)
* Fix injection vulnerability in ports pages ([#15314](https://github.com/librenms/librenms/pull/15314)) - [murrant](https://github.com/murrant)
* Fix another addcslashes incorrect escape in eventlog ([#15313](https://github.com/librenms/librenms/pull/15313)) - [murrant](https://github.com/murrant)
* Fix another injection in ipv4 search page ([#15312](https://github.com/librenms/librenms/pull/15312)) - [murrant](https://github.com/murrant)
* Fix injection in search pages ipv4, etc ([#15311](https://github.com/librenms/librenms/pull/15311)) - [murrant](https://github.com/murrant)
* Fix improperly escaped output in outages page ([#15310](https://github.com/librenms/librenms/pull/15310)) - [murrant](https://github.com/murrant)

#### Device
* Fix smartos-dcp-m.yaml ([#15295](https://github.com/librenms/librenms/pull/15295)) - [electrocret](https://github.com/electrocret)
* Use mtxrGaugeTable instead of mtxrHealthGroup ([#15289](https://github.com/librenms/librenms/pull/15289)) - [murrant](https://github.com/murrant)
* Added support for Nutanix VM count, disk state, CPU usage and RAM usage ([#15252](https://github.com/librenms/librenms/pull/15252)) - [eskyuu](https://github.com/eskyuu)
* Initial support for f5os ([#15241](https://github.com/librenms/librenms/pull/15241)) - [fbouynot](https://github.com/fbouynot)

#### Webui
* Fix login page HTML ([#15321](https://github.com/librenms/librenms/pull/15321)) - [murrant](https://github.com/murrant)
* Fix device display name in top interfaces widget ([#15319](https://github.com/librenms/librenms/pull/15319)) - [murrant](https://github.com/murrant)
* Timezone, fix user set no timezone ([#15296](https://github.com/librenms/librenms/pull/15296)) - [murrant](https://github.com/murrant)
* Availability Map: Show ignored device up when up ([#15283](https://github.com/librenms/librenms/pull/15283)) - [SourceDoctor](https://github.com/SourceDoctor)
* Custom ssh,telnet port with oxidized ([#15255](https://github.com/librenms/librenms/pull/15255)) - [jepke](https://github.com/jepke)
* WebUI Services, generate more compact table ([#15243](https://github.com/librenms/librenms/pull/15243)) - [fbourqui](https://github.com/fbourqui)
* Added empty string check ([#15235](https://github.com/librenms/librenms/pull/15235)) - [Fehler12](https://github.com/Fehler12)
* Use full name for vendor_oui ([#15234](https://github.com/librenms/librenms/pull/15234)) - [PipoCanaja](https://github.com/PipoCanaja)
* Add global NAC page ([#15228](https://github.com/librenms/librenms/pull/15228)) - [PipoCanaja](https://github.com/PipoCanaja)

#### Alerting
* Fix error when mail-contact is missing ([#15305](https://github.com/librenms/librenms/pull/15305)) - [murrant](https://github.com/murrant)
* Hide token, keys and passwords in Transports ([#15274](https://github.com/librenms/librenms/pull/15274)) - [LoveSkylark](https://github.com/LoveSkylark)

#### Applications
* For the applications table set the defaults for app_instance and app_instance to '' ([#15278](https://github.com/librenms/librenms/pull/15278)) - [VVelox](https://github.com/VVelox)
* Application Soft Delete ([#15270](https://github.com/librenms/librenms/pull/15270)) - [VVelox](https://github.com/VVelox)

#### Api
* Allow port search API to search ifAlias again ([#15320](https://github.com/librenms/librenms/pull/15320)) - [murrant](https://github.com/murrant)
* Fix API availability graph duration ([#15250](https://github.com/librenms/librenms/pull/15250)) - [murrant](https://github.com/murrant)

#### Settings
* Add ui description for reporting dump_errors ([#15264](https://github.com/librenms/librenms/pull/15264)) - [murrant](https://github.com/murrant)

#### Polling
* Fix port ifAlias polling ([#15279](https://github.com/librenms/librenms/pull/15279)) - [murrant](https://github.com/murrant)
* Fix ifSpeed override not being applied ([#15237](https://github.com/librenms/librenms/pull/15237)) - [murrant](https://github.com/murrant)

#### Authentication
* ADAuthorizer auth skip count entry ([#15322](https://github.com/librenms/librenms/pull/15322)) - [murrant](https://github.com/murrant)
* Radius enforce roles ([#15294](https://github.com/librenms/librenms/pull/15294)) - [murrant](https://github.com/murrant)

#### Bug
* FIX TP-Link JetStream 3.0.0 Build 20180511 Rel.36491(s) T1500-28PCT 3.0 ([#15318](https://github.com/librenms/librenms/pull/15318)) - [MrMoCoDev](https://github.com/MrMoCoDev)
* Fix issue with rrdcached application and bad input ([#15301](https://github.com/librenms/librenms/pull/15301)) - [murrant](https://github.com/murrant)
* Fix .env quoting issue ([#15298](https://github.com/librenms/librenms/pull/15298)) - [murrant](https://github.com/murrant)
* Fix typo in default mibs for SnmpQuery ([#15297](https://github.com/librenms/librenms/pull/15297)) - [murrant](https://github.com/murrant)
* Readd missing key ([#15291](https://github.com/librenms/librenms/pull/15291)) - [SourceDoctor](https://github.com/SourceDoctor)
* Fix missing keys for new status ([#15284](https://github.com/librenms/librenms/pull/15284)) - [SourceDoctor](https://github.com/SourceDoctor)
* Revert "Added empty string check" ([#15249](https://github.com/librenms/librenms/pull/15249)) - [murrant](https://github.com/murrant)
* Fix manual port speed storage ([#15238](https://github.com/librenms/librenms/pull/15238)) - [murrant](https://github.com/murrant)
* Make the service template controller re-evaluate dynamic membership when apply all button is pushed ([#15214](https://github.com/librenms/librenms/pull/15214)) - [eskyuu](https://github.com/eskyuu)

#### Cleanup
* Return an 5XX error when an exception is raise ([#15285](https://github.com/librenms/librenms/pull/15285)) - [Pelt10](https://github.com/Pelt10)

#### Documentation
* Note the package install command for dhcpd-pools for FreeBSD ([#15247](https://github.com/librenms/librenms/pull/15247)) - [VVelox](https://github.com/VVelox)
* Update severity colours in SNMP-Traps.md ([#15244](https://github.com/librenms/librenms/pull/15244)) - [adamsweet](https://github.com/adamsweet)

#### Misc
* Another OR statement in GrayLog API ([#15246](https://github.com/librenms/librenms/pull/15246)) - [hanserasmus](https://github.com/hanserasmus)
* Dispatcher option to log output ([#15230](https://github.com/librenms/librenms/pull/15230)) - [murrant](https://github.com/murrant)


## 23.8.0
*(2023-08-19)*

A big thank you to the following 32 contributors this last month:

- [murrant](https://github.com/murrant) (31)
- [VVelox](https://github.com/VVelox) (5)
- [Jellyfrog](https://github.com/Jellyfrog) (4)
- [electrocret](https://github.com/electrocret) (4)
- [santiag0z](https://github.com/santiag0z) (3)
- [laf](https://github.com/laf) (3)
- [viptampa](https://github.com/viptampa) (3)
- [arjenz](https://github.com/arjenz) (2)
- [knpo](https://github.com/knpo) (1)
- [WhiteyDude](https://github.com/WhiteyDude) (1)
- [jacobw](https://github.com/jacobw) (1)
- [jepke](https://github.com/jepke) (1)
- [sjtarik](https://github.com/sjtarik) (1)
- [pjordanovic](https://github.com/pjordanovic) (1)
- [Schouwenburg](https://github.com/Schouwenburg) (1)
- [eggbeater98](https://github.com/eggbeater98) (1)
- [i4networks](https://github.com/i4networks) (1)
- [fbourqui](https://github.com/fbourqui) (1)
- [hirose003](https://github.com/hirose003) (1)
- [richard-ririe](https://github.com/richard-ririe) (1)
- [robje](https://github.com/robje) (1)
- [peejaychilds](https://github.com/peejaychilds) (1)
- [bonzo81](https://github.com/bonzo81) (1)
- [slashdoom](https://github.com/slashdoom) (1)
- [eskyuu](https://github.com/eskyuu) (1)
- [j796160836](https://github.com/j796160836) (1)
- [TheMysteriousX](https://github.com/TheMysteriousX) (1)
- [VirTechSystems](https://github.com/VirTechSystems) (1)
- [fufroma](https://github.com/fufroma) (1)
- [zappiehost](https://github.com/zappiehost) (1)
- [jgelinas](https://github.com/jgelinas) (1)
- [mwobst](https://github.com/mwobst) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (26)
- [Jellyfrog](https://github.com/Jellyfrog) (25)
- [electrocret](https://github.com/electrocret) (23)
- [PipoCanaja](https://github.com/PipoCanaja) (3)
- [laf](https://github.com/laf) (2)
- [VVelox](https://github.com/VVelox) (2)
- [ottorei](https://github.com/ottorei) (1)
- [streamthing](https://github.com/streamthing) (1)

#### Feature
* Add FDB table vendor search drop down ([#15072](https://github.com/librenms/librenms/pull/15072)) - [bonzo81](https://github.com/bonzo81)
* Port_error_perc macro ([#15016](https://github.com/librenms/librenms/pull/15016)) - [electrocret](https://github.com/electrocret)

#### Security
* Fix unsanitized input injection ([#15184](https://github.com/librenms/librenms/pull/15184)) - [murrant](https://github.com/murrant)
* Fix some xss injection for sysLocation and some other fields ([#15183](https://github.com/librenms/librenms/pull/15183)) - [murrant](https://github.com/murrant)

#### Device
* Fix version comparison for RouterOS ([#15227](https://github.com/librenms/librenms/pull/15227)) - [knpo](https://github.com/knpo)
* Netscaler, don't use 0 divisor ([#15204](https://github.com/librenms/librenms/pull/15204)) - [murrant](https://github.com/murrant)
* Update Alpine Linux logos to SVG ([#15185](https://github.com/librenms/librenms/pull/15185)) - [murrant](https://github.com/murrant)
* APC new sensors and fix ([#15179](https://github.com/librenms/librenms/pull/15179)) - [jepke](https://github.com/jepke)
* Add SHARP BP series of devices ([#15169](https://github.com/librenms/librenms/pull/15169)) - [pjordanovic](https://github.com/pjordanovic)
* Fix Timos SAR Cellular RSRP and RSSI sensors ([#15163](https://github.com/librenms/librenms/pull/15163)) - [Schouwenburg](https://github.com/Schouwenburg)
* Update bgp-peers.inc.php for timos ([#15154](https://github.com/librenms/librenms/pull/15154)) - [i4networks](https://github.com/i4networks)
* Fortigate ipv6 ipsec ([#15150](https://github.com/librenms/librenms/pull/15150)) - [fbourqui](https://github.com/fbourqui)
* Add Calix E7 (EXA) PON port sensors ([#15145](https://github.com/librenms/librenms/pull/15145)) - [murrant](https://github.com/murrant)
* Add os check in discovery for aix/freenas storage and cisco cdp ([#15104](https://github.com/librenms/librenms/pull/15104)) - [peejaychilds](https://github.com/peejaychilds)
* Add VLAN Discovery for arubaos-cx ([#15055](https://github.com/librenms/librenms/pull/15055)) - [slashdoom](https://github.com/slashdoom)
* Openmanage enterprise modular ([#14408](https://github.com/librenms/librenms/pull/14408)) - [jgelinas](https://github.com/jgelinas)

#### Webui
* Fixed CSS error causing generic image widgets not to do height correctly ([#15220](https://github.com/librenms/librenms/pull/15220)) - [WhiteyDude](https://github.com/WhiteyDude)
* Fix error when there is an untranslated sensor type ([#15176](https://github.com/librenms/librenms/pull/15176)) - [murrant](https://github.com/murrant)
* Fix select2 search field focus ([#15171](https://github.com/librenms/librenms/pull/15171)) - [murrant](https://github.com/murrant)
* Update text color in dark.css ([#15155](https://github.com/librenms/librenms/pull/15155)) - [eggbeater98](https://github.com/eggbeater98)

#### Alerting
* Discord Transport user configurable embed fields ([#15068](https://github.com/librenms/librenms/pull/15068)) - [murrant](https://github.com/murrant)
* Implement LINE Messaging API ([#14867](https://github.com/librenms/librenms/pull/14867)) - [j796160836](https://github.com/j796160836)

#### Graphs
* Fix Memmory spelling ([#15231](https://github.com/librenms/librenms/pull/15231)) - [arjenz](https://github.com/arjenz)
* Add generic stats graph munging support and make uptime display as days again ([#15097](https://github.com/librenms/librenms/pull/15097)) - [VVelox](https://github.com/VVelox)

#### Applications
* Add the Mojo CAPE Submit app ([#15140](https://github.com/librenms/librenms/pull/15140)) - [VVelox](https://github.com/VVelox)
* Logsize monitoring for LibreNMS ([#15137](https://github.com/librenms/librenms/pull/15137)) - [VVelox](https://github.com/VVelox)
* Update SMART monitoring to the use JSON ([#15132](https://github.com/librenms/librenms/pull/15132)) - [VVelox](https://github.com/VVelox)
* Add a flag for adding app data to tests generated via scripts/json-app-tool.php ([#15080](https://github.com/librenms/librenms/pull/15080)) - [VVelox](https://github.com/VVelox)
* Add BIRD2 BGP Peers application support ([#14466](https://github.com/librenms/librenms/pull/14466)) - [zappiehost](https://github.com/zappiehost)

#### Billing
* Fixed a zero value data insertion for billing ([#15194](https://github.com/librenms/librenms/pull/15194)) - [laf](https://github.com/laf)
* Updated poll-billing.php to only query for data via snmp when the device and port are both up ([#15164](https://github.com/librenms/librenms/pull/15164)) - [laf](https://github.com/laf)
* Added basic support for distributing billing ([#15156](https://github.com/librenms/librenms/pull/15156)) - [laf](https://github.com/laf)

#### Api
* Add API endpoint to get service graphs ([#15138](https://github.com/librenms/librenms/pull/15138)) - [richard-ririe](https://github.com/richard-ririe)
* API get_location ([#14779](https://github.com/librenms/librenms/pull/14779)) - [VirTechSystems](https://github.com/VirTechSystems)

#### Discovery
* Always mark device last_discovered ([#15218](https://github.com/librenms/librenms/pull/15218)) - [murrant](https://github.com/murrant)

#### Polling
* Allow dispatcher service master timeout to be set ([#15161](https://github.com/librenms/librenms/pull/15161)) - [murrant](https://github.com/murrant)
* Fix fping 4.0+ prefers IPv6 ([#14825](https://github.com/librenms/librenms/pull/14825)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Add module support for wrapper script calls ([#14055](https://github.com/librenms/librenms/pull/14055)) - [mwobst](https://github.com/mwobst)

#### Authentication
* Remove user_id cast to int ([#15205](https://github.com/librenms/librenms/pull/15205)) - [jacobw](https://github.com/jacobw)

#### Bug
* Print a useful error if logfile is not writable ([#15233](https://github.com/librenms/librenms/pull/15233)) - [murrant](https://github.com/murrant)
* Make the installer use the schema dump ([#15211](https://github.com/librenms/librenms/pull/15211)) - [Jellyfrog](https://github.com/Jellyfrog)
* Change leaflet.default_zoom to Float ([#15207](https://github.com/librenms/librenms/pull/15207)) - [electrocret](https://github.com/electrocret)
* Handle empty dbSchema table ([#15198](https://github.com/librenms/librenms/pull/15198)) - [murrant](https://github.com/murrant)
* Fix timezone controller bad return ([#15191](https://github.com/librenms/librenms/pull/15191)) - [murrant](https://github.com/murrant)
* Graylog API properly throw errors ([#15188](https://github.com/librenms/librenms/pull/15188)) - [murrant](https://github.com/murrant)
* Fixing the mac/vendor database download from wireshark, updated file … ([#15175](https://github.com/librenms/librenms/pull/15175)) - [sjtarik](https://github.com/sjtarik)
* Fix alert.macros.rule ([#15172](https://github.com/librenms/librenms/pull/15172)) - [electrocret](https://github.com/electrocret)
* Miscellaneous fixes ([#15162](https://github.com/librenms/librenms/pull/15162)) - [murrant](https://github.com/murrant)
* Change display query of list_devices to pattern match ([#15147](https://github.com/librenms/librenms/pull/15147)) - [hirose003](https://github.com/hirose003)
* Change rrd_prune find command to exlcude `.gitignore` ([#15134](https://github.com/librenms/librenms/pull/15134)) - [robje](https://github.com/robje)
* Apply service templates on a per-device basis ([#15024](https://github.com/librenms/librenms/pull/15024)) - [eskyuu](https://github.com/eskyuu)
* RFC1628 - Force cast on some values before doing arithmetic ([#14613](https://github.com/librenms/librenms/pull/14613)) - [fufroma](https://github.com/fufroma)

#### Refactor
* Fix sensor discovery fetch issue ([#15193](https://github.com/librenms/librenms/pull/15193)) - [murrant](https://github.com/murrant)
* MAC Vendor OUI use scheduler ([#15187](https://github.com/librenms/librenms/pull/15187)) - [murrant](https://github.com/murrant)

#### Cleanup
* Misc fixes 2 ([#15190](https://github.com/librenms/librenms/pull/15190)) - [murrant](https://github.com/murrant)
* Severity Enum ([#14620](https://github.com/librenms/librenms/pull/14620)) - [murrant](https://github.com/murrant)

#### Documentation
* [DOC] Added social links in footer ([#15195](https://github.com/librenms/librenms/pull/15195)) - [santiag0z](https://github.com/santiag0z)
* OS discovery clarification ([#15182](https://github.com/librenms/librenms/pull/15182)) - [murrant](https://github.com/murrant)
* [DOC] Remove ~$ from BIND9 code block aka named ([#15181](https://github.com/librenms/librenms/pull/15181)) - [santiag0z](https://github.com/santiag0z)
* Fix settings titles in dark mode ([#15174](https://github.com/librenms/librenms/pull/15174)) - [murrant](https://github.com/murrant)
* Update Routeros.md ([#15165](https://github.com/librenms/librenms/pull/15165)) - [viptampa](https://github.com/viptampa)
* Update Routeros.md ([#15160](https://github.com/librenms/librenms/pull/15160)) - [viptampa](https://github.com/viptampa)
* RouterOS Vlan agent script clarification ([#15158](https://github.com/librenms/librenms/pull/15158)) - [viptampa](https://github.com/viptampa)
* Fix bad link in Install-LibreNMS.md ([#15152](https://github.com/librenms/librenms/pull/15152)) - [arjenz](https://github.com/arjenz)

#### Tests
* Only dump snmp logs on failure ([#15200](https://github.com/librenms/librenms/pull/15200)) - [murrant](https://github.com/murrant)

#### Misc
* Use Laravel schema migration command directly ([#14039](https://github.com/librenms/librenms/pull/14039)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Internal Features
* Set mibs explicitly in SnmpQuery ([#15199](https://github.com/librenms/librenms/pull/15199)) - [murrant](https://github.com/murrant)
* Editor yaml indent fine tuning ([#15189](https://github.com/librenms/librenms/pull/15189)) - [murrant](https://github.com/murrant)

#### Dependencies
* Update composer dependencies ([#15167](https://github.com/librenms/librenms/pull/15167)) - [Jellyfrog](https://github.com/Jellyfrog)
* Update Ziggy ([#15151](https://github.com/librenms/librenms/pull/15151)) - [murrant](https://github.com/murrant)
* Dependency Updates ([#15149](https://github.com/librenms/librenms/pull/15149)) - [murrant](https://github.com/murrant)


## 23.7.0
*(2023-07-16)*

A big thank you to the following 19 contributors this last month:

- [peejaychilds](https://github.com/peejaychilds) (4)
- [tuxgasy](https://github.com/tuxgasy) (3)
- [murrant](https://github.com/murrant) (3)
- [jepke](https://github.com/jepke) (2)
- [VVelox](https://github.com/VVelox) (2)
- [laf](https://github.com/laf) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [eggbeater98](https://github.com/eggbeater98) (1)
- [illogik](https://github.com/illogik) (1)
- [elianmanzueta](https://github.com/elianmanzueta) (1)
- [peelman](https://github.com/peelman) (1)
- [Blinq-SanderBlom](https://github.com/Blinq-SanderBlom) (1)
- [vincent5753](https://github.com/vincent5753) (1)
- [electrocret](https://github.com/electrocret) (1)
- [mtentilucci](https://github.com/mtentilucci) (1)
- [edgesite](https://github.com/edgesite) (1)
- [davromaniak](https://github.com/davromaniak) (1)
- [TheMysteriousX](https://github.com/TheMysteriousX) (1)
- [sjtarik](https://github.com/sjtarik) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (12)
- [electrocret](https://github.com/electrocret) (6)
- [Jellyfrog](https://github.com/Jellyfrog) (6)
- [ottorei](https://github.com/ottorei) (4)
- [laf](https://github.com/laf) (3)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [FadhliRais](https://github.com/FadhliRais) (1)
- [VVelox](https://github.com/VVelox) (1)
- [PJGuyTen](https://github.com/PJGuyTen) (1)

#### Device
* Fix MPLS Tab Display for Nokia devices using LDP and not RSVP ([#15128](https://github.com/librenms/librenms/pull/15128)) - [peelman](https://github.com/peelman)
* Change state value for unplugged linecard ([#15126](https://github.com/librenms/librenms/pull/15126)) - [Blinq-SanderBlom](https://github.com/Blinq-SanderBlom)
* Convert several JunOS sensors to yaml ([#15118](https://github.com/librenms/librenms/pull/15118)) - [murrant](https://github.com/murrant)
* Update Trellix NSP discovery ([#15117](https://github.com/librenms/librenms/pull/15117)) - [mtentilucci](https://github.com/mtentilucci)
* APC new sensors ([#15090](https://github.com/librenms/librenms/pull/15090)) - [jepke](https://github.com/jepke)
* Add regex for Supermicro switches running firmware 2.0 or newer, now called "SuperSwitch" ([#15083](https://github.com/librenms/librenms/pull/15083)) - [davromaniak](https://github.com/davromaniak)
* Add support for PrimeKey Software Appliance ([#15059](https://github.com/librenms/librenms/pull/15059)) - [TheMysteriousX](https://github.com/TheMysteriousX)

#### Webui
* Update Dark theme for readability on availability map ([#15141](https://github.com/librenms/librenms/pull/15141)) - [eggbeater98](https://github.com/eggbeater98)
* Add Oxidized search clarification ([#15124](https://github.com/librenms/librenms/pull/15124)) - [electrocret](https://github.com/electrocret)
* Sort port by interface name while list ports. ([#15093](https://github.com/librenms/librenms/pull/15093)) - [edgesite](https://github.com/edgesite)

#### Alerting
* Alert transport slack config fixes ([#15131](https://github.com/librenms/librenms/pull/15131)) - [illogik](https://github.com/illogik)
* Transport Messagebird voice message API ([#15115](https://github.com/librenms/librenms/pull/15115)) - [jepke](https://github.com/jepke)

#### Applications
* Add Privoxy stats support ([#15114](https://github.com/librenms/librenms/pull/15114)) - [VVelox](https://github.com/VVelox)
* Add Suricata Extract submission stats app ([#15105](https://github.com/librenms/librenms/pull/15105)) - [VVelox](https://github.com/VVelox)

#### Api
* Adding human readable version of /api/v0/fdb/{mac}/detail ([#15045](https://github.com/librenms/librenms/pull/15045)) - [sjtarik](https://github.com/sjtarik)

#### Discovery
* Fix bogus reply from snmpwalk in ipNetToPhysicalPhysAddress ([#15142](https://github.com/librenms/librenms/pull/15142)) - [PipoCanaja](https://github.com/PipoCanaja)

#### Polling
* Fix for hrStorageIndex agility ([#15028](https://github.com/librenms/librenms/pull/15028)) - [peejaychilds](https://github.com/peejaychilds)

#### Bug
* Skip hostnames which are blank when generating the smokeping config ([#15144](https://github.com/librenms/librenms/pull/15144)) - [laf](https://github.com/laf)
* Change chunk to chunkById ([#15139](https://github.com/librenms/librenms/pull/15139)) - [peejaychilds](https://github.com/peejaychilds)
* Use lock ports_purge in ports_purge rather than syslog_purge lock ([#15135](https://github.com/librenms/librenms/pull/15135)) - [peejaychilds](https://github.com/peejaychilds)
* Fix validation: memcached required only if it is configured in .env ([#15122](https://github.com/librenms/librenms/pull/15122)) - [tuxgasy](https://github.com/tuxgasy)
* Exit non-zero if composer bin not found ([#15120](https://github.com/librenms/librenms/pull/15120)) - [tuxgasy](https://github.com/tuxgasy)

#### Documentation
* Update openwrt doc following PR #15096 ([#15119](https://github.com/librenms/librenms/pull/15119)) - [tuxgasy](https://github.com/tuxgasy)

#### Translation
* Fix typo in delhost.inc.php ([#15130](https://github.com/librenms/librenms/pull/15130)) - [elianmanzueta](https://github.com/elianmanzueta)
* Added missing zh-tw translation. ([#15125](https://github.com/librenms/librenms/pull/15125)) - [vincent5753](https://github.com/vincent5753)

#### Internal Features
* Yaml value filling improvements ([#15116](https://github.com/librenms/librenms/pull/15116)) - [murrant](https://github.com/murrant)


## 23.6.0
*(2023-06-23)*

A big thank you to the following 14 contributors this last month:

- [VVelox](https://github.com/VVelox) (4)
- [Jellyfrog](https://github.com/Jellyfrog) (4)
- [murrant](https://github.com/murrant) (2)
- [si458](https://github.com/si458) (1)
- [netravnen](https://github.com/netravnen) (1)
- [tuxgasy](https://github.com/tuxgasy) (1)
- [jepke](https://github.com/jepke) (1)
- [ajsiersema](https://github.com/ajsiersema) (1)
- [wrongecho](https://github.com/wrongecho) (1)
- [peejaychilds](https://github.com/peejaychilds) (1)
- [tim427](https://github.com/tim427) (1)
- [kg6uyz](https://github.com/kg6uyz) (1)
- [d-k-7](https://github.com/d-k-7) (1)
- [electrocret](https://github.com/electrocret) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [Jellyfrog](https://github.com/Jellyfrog) (9)
- [murrant](https://github.com/murrant) (6)
- [electrocret](https://github.com/electrocret) (4)
- [ottorei](https://github.com/ottorei) (2)

#### Feature
* Alert transport cleanup, no_proxy support and other proxy cleanups ([#14763](https://github.com/librenms/librenms/pull/14763)) - [murrant](https://github.com/murrant)

#### Device
* Improve OpenWRT detection ([#15096](https://github.com/librenms/librenms/pull/15096)) - [tuxgasy](https://github.com/tuxgasy)
* TEG-S50ES and TPE-P521ES device detection ([#15052](https://github.com/librenms/librenms/pull/15052)) - [kg6uyz](https://github.com/kg6uyz)
* Add sensor support for cefcModuleOperStatus ([#15026](https://github.com/librenms/librenms/pull/15026)) - [d-k-7](https://github.com/d-k-7)
* Extend Avocent Support ([#14914](https://github.com/librenms/librenms/pull/14914)) - [electrocret](https://github.com/electrocret)

#### Alerting
* Messagebird transport ([#15079](https://github.com/librenms/librenms/pull/15079)) - [jepke](https://github.com/jepke)
* Remove asterisk from recurring input ([#15074](https://github.com/librenms/librenms/pull/15074)) - [wrongecho](https://github.com/wrongecho)
* Fix syslog transport output format ([#15070](https://github.com/librenms/librenms/pull/15070)) - [peejaychilds](https://github.com/peejaychilds)
* Fixed Markdown/Parse mode for Telegram ([#15066](https://github.com/librenms/librenms/pull/15066)) - [tim427](https://github.com/tim427)

#### Applications
* Add ZFS L2 support ([#15095](https://github.com/librenms/librenms/pull/15095)) - [VVelox](https://github.com/VVelox)
* Add Linux Softnet Stat app ([#15094](https://github.com/librenms/librenms/pull/15094)) - [VVelox](https://github.com/VVelox)
* Add Sneck support, making it very trivial to use Nagios style checks in a NRPE like manner ([#13954](https://github.com/librenms/librenms/pull/13954)) - [VVelox](https://github.com/VVelox)

#### Bug
* Fixes #14975 Services in Device Groups not displayed correctly in Availability widget ([#15076](https://github.com/librenms/librenms/pull/15076)) - [ajsiersema](https://github.com/ajsiersema)
* Fix Dusk tests after 13626 ([#15057](https://github.com/librenms/librenms/pull/15057)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Cleanup
* Add AllowDynamicProperties to DynamicConfigItem ([#15058](https://github.com/librenms/librenms/pull/15058)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Documentation
* Add archlinux example ([#15113](https://github.com/librenms/librenms/pull/15113)) - [si458](https://github.com/si458)
* Fix minor typo in Applications.md ([#15111](https://github.com/librenms/librenms/pull/15111)) - [VVelox](https://github.com/VVelox)

#### Mibs
* Update MIKROTIK-MIB to v7.10 release ([#15110](https://github.com/librenms/librenms/pull/15110)) - [netravnen](https://github.com/netravnen)

#### Dependencies
* Laravel 10.x Shift ([#14995](https://github.com/librenms/librenms/pull/14995)) - [Jellyfrog](https://github.com/Jellyfrog)


## 23.5.0
*(2023-05-19)*

A big thank you to the following 37 contributors this last month:

- [murrant](https://github.com/murrant) (29)
- [Jellyfrog](https://github.com/Jellyfrog) (6)
- [mtentilucci](https://github.com/mtentilucci) (5)
- [peelman](https://github.com/peelman) (4)
- [electrocret](https://github.com/electrocret) (4)
- [laf](https://github.com/laf) (3)
- [cjsoftuk](https://github.com/cjsoftuk) (3)
- [alchemyx](https://github.com/alchemyx) (2)
- [Bierchermuesli](https://github.com/Bierchermuesli) (2)
- [bakerds](https://github.com/bakerds) (2)
- [mpikzink](https://github.com/mpikzink) (2)
- [TheMysteriousX](https://github.com/TheMysteriousX) (2)
- [QuadPiece](https://github.com/QuadPiece) (1)
- [elipsion](https://github.com/elipsion) (1)
- [etiennewan](https://github.com/etiennewan) (1)
- [jlo-lirmm](https://github.com/jlo-lirmm) (1)
- [dscw](https://github.com/dscw) (1)
- [fbouynot](https://github.com/fbouynot) (1)
- [santiag0z](https://github.com/santiag0z) (1)
- [dependabot](https://github.com/apps/dependabot) (1)
- [VoipTelCH](https://github.com/VoipTelCH) (1)
- [otkd](https://github.com/otkd) (1)
- [ajsiersema](https://github.com/ajsiersema) (1)
- [JStandiford](https://github.com/JStandiford) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [arjenz](https://github.com/arjenz) (1)
- [maticomba](https://github.com/maticomba) (1)
- [SourceDoctor](https://github.com/SourceDoctor) (1)
- [pjroehl](https://github.com/pjroehl) (1)
- [cjwbath](https://github.com/cjwbath) (1)
- [MajesticFalcon](https://github.com/MajesticFalcon) (1)
- [bnerickson](https://github.com/bnerickson) (1)
- [bestlong](https://github.com/bestlong) (1)
- [Olen](https://github.com/Olen) (1)
- [mboehn](https://github.com/mboehn) (1)
- [ollb](https://github.com/ollb) (1)
- [eskyuu](https://github.com/eskyuu) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (47)
- [electrocret](https://github.com/electrocret) (18)
- [Jellyfrog](https://github.com/Jellyfrog) (16)
- [ottorei](https://github.com/ottorei) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [JohnnyBBravo](https://github.com/JohnnyBBravo) (1)

#### Feature
* Set focus to Global Search on Ctrl-F ([#14947](https://github.com/librenms/librenms/pull/14947)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Add link to hosts mgmt (ipmi) interface ([#14905](https://github.com/librenms/librenms/pull/14905)) - [mpikzink](https://github.com/mpikzink)
* Implement authentication for Redis/Sentinel ([#14805](https://github.com/librenms/librenms/pull/14805)) - [TheMysteriousX](https://github.com/TheMysteriousX)

#### Security
* Convert the inventory page to Laravel ([#15004](https://github.com/librenms/librenms/pull/15004)) - [murrant](https://github.com/murrant)

#### Device
* Add RoomAlert 12E Switch Sensors, fix Humidity Sensor ([#15049](https://github.com/librenms/librenms/pull/15049)) - [peelman](https://github.com/peelman)
* Fix WISI over graphs ([#15040](https://github.com/librenms/librenms/pull/15040)) - [peelman](https://github.com/peelman)
* Fix inventory display for Calix AXOS devices ([#15039](https://github.com/librenms/librenms/pull/15039)) - [peelman](https://github.com/peelman)
* Map GPS lat and lon to os module ([#15033](https://github.com/librenms/librenms/pull/15033)) - [QuadPiece](https://github.com/QuadPiece)
* Firebrick CPU Monitoring ([#15030](https://github.com/librenms/librenms/pull/15030)) - [cjsoftuk](https://github.com/cjsoftuk)
* Fix Firebrick mempool polling ([#15022](https://github.com/librenms/librenms/pull/15022)) - [cjsoftuk](https://github.com/cjsoftuk)
* Add support for memory monitoring on Firebrick platform ([#15021](https://github.com/librenms/librenms/pull/15021)) - [cjsoftuk](https://github.com/cjsoftuk)
* Fix vsolution discovery yaml ([#14970](https://github.com/librenms/librenms/pull/14970)) - [murrant](https://github.com/murrant)
* Fix tait tnadmin processors ([#14969](https://github.com/librenms/librenms/pull/14969)) - [murrant](https://github.com/murrant)
* Fix Raisecom Processor ([#14968](https://github.com/librenms/librenms/pull/14968)) - [murrant](https://github.com/murrant)
* Fix Raisecom ROS processor collection ([#14966](https://github.com/librenms/librenms/pull/14966)) - [murrant](https://github.com/murrant)
* Add support for Trellix ATD devices ([#14965](https://github.com/librenms/librenms/pull/14965)) - [mtentilucci](https://github.com/mtentilucci)
* Add support for Trellix NSP devices ([#14964](https://github.com/librenms/librenms/pull/14964)) - [mtentilucci](https://github.com/mtentilucci)
* Cisco QFP polling fixes ([#14961](https://github.com/librenms/librenms/pull/14961)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Add version, hardware and serial collection ([#14956](https://github.com/librenms/librenms/pull/14956)) - [JStandiford](https://github.com/JStandiford)
* Add Rubrik Discovery ([#14951](https://github.com/librenms/librenms/pull/14951)) - [mtentilucci](https://github.com/mtentilucci)
* Add Nutanix AOS discovery ([#14950](https://github.com/librenms/librenms/pull/14950)) - [mtentilucci](https://github.com/mtentilucci)
* RouterOS runtime quirk on first discovery ([#14945](https://github.com/librenms/librenms/pull/14945)) - [murrant](https://github.com/murrant)
* Added sensor support for older APC InfraStruXure PDUs ([#14944](https://github.com/librenms/librenms/pull/14944)) - [bakerds](https://github.com/bakerds)
* Expand discovery of gigavue os ([#14933](https://github.com/librenms/librenms/pull/14933)) - [mtentilucci](https://github.com/mtentilucci)
* Add discovery of NVT Phybridge FLEX24 ([#14913](https://github.com/librenms/librenms/pull/14913)) - [pjroehl](https://github.com/pjroehl)
* Add initial OS detection for LoadBalancer.org ([#14902](https://github.com/librenms/librenms/pull/14902)) - [cjwbath](https://github.com/cjwbath)
* Added graphing of DDoS-protection related OIDs for PAN-OS ([#14847](https://github.com/librenms/librenms/pull/14847)) - [bakerds](https://github.com/bakerds)
* Add support for Alpha CXC HP Controller ([#14829](https://github.com/librenms/librenms/pull/14829)) - [MajesticFalcon](https://github.com/MajesticFalcon)
* Change ESXi port naming to be stable ([#14639](https://github.com/librenms/librenms/pull/14639)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Add advantech icr-os for advantech routers ([#14171](https://github.com/librenms/librenms/pull/14171)) - [mboehn](https://github.com/mboehn)
* Fix cisco dbm sensors port link on discovery (NCS55A2) ([#13965](https://github.com/librenms/librenms/pull/13965)) - [ollb](https://github.com/ollb)

#### Webui
* Ondemand popup graphs ([#15050](https://github.com/librenms/librenms/pull/15050)) - [murrant](https://github.com/murrant)
* Add a global setting for Ctrl-F focus (improve #14947) ([#15023](https://github.com/librenms/librenms/pull/15023)) - [etiennewan](https://github.com/etiennewan)
* [About] Link to LinkedIn ([#14991](https://github.com/librenms/librenms/pull/14991)) - [santiag0z](https://github.com/santiag0z)
* Clarify Alert Notify Settings ([#14974](https://github.com/librenms/librenms/pull/14974)) - [electrocret](https://github.com/electrocret)
* Fix Legacy vars Processing ([#14967](https://github.com/librenms/librenms/pull/14967)) - [murrant](https://github.com/murrant)
* Correct PowerConsumed SI Units in Overview ([#14425](https://github.com/librenms/librenms/pull/14425)) - [mpikzink](https://github.com/mpikzink)
* Added support for user timezones and user browser timezone by default (incomplete) ([#13626](https://github.com/librenms/librenms/pull/13626)) - [eskyuu](https://github.com/eskyuu)

#### Alerting
* Fix undefined array key ([#15025](https://github.com/librenms/librenms/pull/15025)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Graphs
* Php implode arg mismatch ([#15014](https://github.com/librenms/librenms/pull/15014)) - [jlo-lirmm](https://github.com/jlo-lirmm)
* Fix availability graphs to 100% ([#15013](https://github.com/librenms/librenms/pull/15013)) - [laf](https://github.com/laf)
* Fix scale_rigid accidentally being set to false ([#14992](https://github.com/librenms/librenms/pull/14992)) - [murrant](https://github.com/murrant)
* Set device ping_perf scale_min to 0 ([#14989](https://github.com/librenms/librenms/pull/14989)) - [murrant](https://github.com/murrant)
* Poller perf: add per device average ([#14940](https://github.com/librenms/librenms/pull/14940)) - [murrant](https://github.com/murrant)
* Stacked graphs on zoom to speed ([#14928](https://github.com/librenms/librenms/pull/14928)) - [electrocret](https://github.com/electrocret)

#### Applications
* Adding linux_config_files application support ([#14776](https://github.com/librenms/librenms/pull/14776)) - [bnerickson](https://github.com/bnerickson)
* Agent support OS Updates ([#14687](https://github.com/librenms/librenms/pull/14687)) - [bestlong](https://github.com/bestlong)

#### Api
* Allow device ignore to be set via API ([#14985](https://github.com/librenms/librenms/pull/14985)) - [electrocret](https://github.com/electrocret)
* Enable disabling a device via api ([#14983](https://github.com/librenms/librenms/pull/14983)) - [VoipTelCH](https://github.com/VoipTelCH)

#### Discovery
* Snmp-scan filter for dns resolved devices ([#14934](https://github.com/librenms/librenms/pull/14934)) - [SourceDoctor](https://github.com/SourceDoctor)

#### Polling
* Fixes #14957 missing IPv6 BGP peers ([#14959](https://github.com/librenms/librenms/pull/14959)) - [ajsiersema](https://github.com/ajsiersema)
* Fix SnmpQuery and max_oid ([#14955](https://github.com/librenms/librenms/pull/14955)) - [murrant](https://github.com/murrant)

#### Bug
* Fix timetaken columns too small ([#15042](https://github.com/librenms/librenms/pull/15042)) - [murrant](https://github.com/murrant)
* Fix some undefined constants ([#14993](https://github.com/librenms/librenms/pull/14993)) - [murrant](https://github.com/murrant)
* Fix routes after Laravel9 ([#14977](https://github.com/librenms/librenms/pull/14977)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix more divide by zero issues ([#14954](https://github.com/librenms/librenms/pull/14954)) - [murrant](https://github.com/murrant)
* Bug - wrong type in ports.inc.php ([#14952](https://github.com/librenms/librenms/pull/14952)) - [PipoCanaja](https://github.com/PipoCanaja)
* Solves error in discovering services module ([#14939](https://github.com/librenms/librenms/pull/14939)) - [maticomba](https://github.com/maticomba)
* Ensure irc fifo-file is shared between dispatcher and core containers ([#14647](https://github.com/librenms/librenms/pull/14647)) - [Olen](https://github.com/Olen)

#### Refactor
* Add a validation for checking if the scheduler is running ([#14987](https://github.com/librenms/librenms/pull/14987)) - [Jellyfrog](https://github.com/Jellyfrog)
* Refactor billing ([#14979](https://github.com/librenms/librenms/pull/14979)) - [murrant](https://github.com/murrant)

#### Cleanup
* Remove old unused adduser page and script ([#15035](https://github.com/librenms/librenms/pull/15035)) - [murrant](https://github.com/murrant)
* Adopt anonymous migrations ([#15005](https://github.com/librenms/librenms/pull/15005)) - [Jellyfrog](https://github.com/Jellyfrog)
* Remove unused port fields ([#14963](https://github.com/librenms/librenms/pull/14963)) - [murrant](https://github.com/murrant)
* Cleanup enable bgp setting ([#14931](https://github.com/librenms/librenms/pull/14931)) - [electrocret](https://github.com/electrocret)

#### Documentation
* Re-add the Ubuntu Image page and links ([#15041](https://github.com/librenms/librenms/pull/15041)) - [laf](https://github.com/laf)
* Remove references to VM images ([#15031](https://github.com/librenms/librenms/pull/15031)) - [murrant](https://github.com/murrant)
* Updated WebUI config options in docs to support direct linking to installs ([#15009](https://github.com/librenms/librenms/pull/15009)) - [laf](https://github.com/laf)
* Fix spelling error in Graylog section ([#15002](https://github.com/librenms/librenms/pull/15002)) - [dscw](https://github.com/dscw)
* Update OAuth-SAML.md to prevent http code 419 error ([#15000](https://github.com/librenms/librenms/pull/15000)) - [fbouynot](https://github.com/fbouynot)
* Update Smokeping.md with better nginx config instructions ([#14999](https://github.com/librenms/librenms/pull/14999)) - [alchemyx](https://github.com/alchemyx)
* Update Copyright year to 2023 in README.md ([#14972](https://github.com/librenms/librenms/pull/14972)) - [otkd](https://github.com/otkd)
* Update Install-LibreNMS.md ([#14949](https://github.com/librenms/librenms/pull/14949)) - [alchemyx](https://github.com/alchemyx)

#### Tests
* Reduce OS module test noise ([#15046](https://github.com/librenms/librenms/pull/15046)) - [murrant](https://github.com/murrant)
* Test PHP 8.2 and MariaDB 10.11 ([#15007](https://github.com/librenms/librenms/pull/15007)) - [murrant](https://github.com/murrant)
* Slightly better OS module test output ([#15001](https://github.com/librenms/librenms/pull/15001)) - [murrant](https://github.com/murrant)
* Fix a bug when creating test data; if a community contained the strin… ([#14739](https://github.com/librenms/librenms/pull/14739)) - [peelman](https://github.com/peelman)

#### Mibs
* Bump VMware MIBs ([#15029](https://github.com/librenms/librenms/pull/15029)) - [elipsion](https://github.com/elipsion)

#### Dependencies
* Bump guzzlehttp/psr7 from 2.4.4 to 2.5.0 ([#14986](https://github.com/librenms/librenms/pull/14986)) - [dependabot](https://github.com/apps/dependabot)
* Laravel 9.x Shift ([#14504](https://github.com/librenms/librenms/pull/14504)) - [Jellyfrog](https://github.com/Jellyfrog)


## 23.5.0
*(2023-05-19)*

A big thank you to the following 37 contributors this last month:

- [murrant](https://github.com/murrant) (29)
- [Jellyfrog](https://github.com/Jellyfrog) (6)
- [mtentilucci](https://github.com/mtentilucci) (5)
- [peelman](https://github.com/peelman) (4)
- [electrocret](https://github.com/electrocret) (4)
- [laf](https://github.com/laf) (3)
- [cjsoftuk](https://github.com/cjsoftuk) (3)
- [alchemyx](https://github.com/alchemyx) (2)
- [Bierchermuesli](https://github.com/Bierchermuesli) (2)
- [bakerds](https://github.com/bakerds) (2)
- [mpikzink](https://github.com/mpikzink) (2)
- [TheMysteriousX](https://github.com/TheMysteriousX) (2)
- [QuadPiece](https://github.com/QuadPiece) (1)
- [elipsion](https://github.com/elipsion) (1)
- [etiennewan](https://github.com/etiennewan) (1)
- [jlo-lirmm](https://github.com/jlo-lirmm) (1)
- [dscw](https://github.com/dscw) (1)
- [fbouynot](https://github.com/fbouynot) (1)
- [santiag0z](https://github.com/santiag0z) (1)
- [dependabot](https://github.com/apps/dependabot) (1)
- [VoipTelCH](https://github.com/VoipTelCH) (1)
- [otkd](https://github.com/otkd) (1)
- [ajsiersema](https://github.com/ajsiersema) (1)
- [JStandiford](https://github.com/JStandiford) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [arjenz](https://github.com/arjenz) (1)
- [maticomba](https://github.com/maticomba) (1)
- [SourceDoctor](https://github.com/SourceDoctor) (1)
- [pjroehl](https://github.com/pjroehl) (1)
- [cjwbath](https://github.com/cjwbath) (1)
- [MajesticFalcon](https://github.com/MajesticFalcon) (1)
- [bnerickson](https://github.com/bnerickson) (1)
- [bestlong](https://github.com/bestlong) (1)
- [Olen](https://github.com/Olen) (1)
- [mboehn](https://github.com/mboehn) (1)
- [ollb](https://github.com/ollb) (1)
- [eskyuu](https://github.com/eskyuu) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [murrant](https://github.com/murrant) (47)
- [electrocret](https://github.com/electrocret) (18)
- [Jellyfrog](https://github.com/Jellyfrog) (16)
- [ottorei](https://github.com/ottorei) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [JohnnyBBravo](https://github.com/JohnnyBBravo) (1)

#### Feature
* Set focus to Global Search on Ctrl-F ([#14947](https://github.com/librenms/librenms/pull/14947)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Add link to hosts mgmt (ipmi) interface ([#14905](https://github.com/librenms/librenms/pull/14905)) - [mpikzink](https://github.com/mpikzink)

#### Security
* Convert the inventory page to Laravel ([#15004](https://github.com/librenms/librenms/pull/15004)) - [murrant](https://github.com/murrant)

#### Device
* Add RoomAlert 12E Switch Sensors, fix Humidity Sensor ([#15049](https://github.com/librenms/librenms/pull/15049)) - [peelman](https://github.com/peelman)
* Fix WISI over graphs ([#15040](https://github.com/librenms/librenms/pull/15040)) - [peelman](https://github.com/peelman)
* Fix inventory display for Calix AXOS devices ([#15039](https://github.com/librenms/librenms/pull/15039)) - [peelman](https://github.com/peelman)
* Map GPS lat and lon to os module ([#15033](https://github.com/librenms/librenms/pull/15033)) - [QuadPiece](https://github.com/QuadPiece)
* Fix vsolution discovery yaml ([#14970](https://github.com/librenms/librenms/pull/14970)) - [murrant](https://github.com/murrant)
* Fix tait tnadmin processors ([#14969](https://github.com/librenms/librenms/pull/14969)) - [murrant](https://github.com/murrant)
* Fix Raisecom Processor ([#14968](https://github.com/librenms/librenms/pull/14968)) - [murrant](https://github.com/murrant)
* Fix Raisecom ROS processor collection ([#14966](https://github.com/librenms/librenms/pull/14966)) - [murrant](https://github.com/murrant)
* Add support for Trellix ATD devices ([#14965](https://github.com/librenms/librenms/pull/14965)) - [mtentilucci](https://github.com/mtentilucci)
* Add support for Trellix NSP devices ([#14964](https://github.com/librenms/librenms/pull/14964)) - [mtentilucci](https://github.com/mtentilucci)
* Cisco QFP polling fixes ([#14961](https://github.com/librenms/librenms/pull/14961)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Add version, hardware and serial collection ([#14956](https://github.com/librenms/librenms/pull/14956)) - [JStandiford](https://github.com/JStandiford)
* Add Rubrik Discovery ([#14951](https://github.com/librenms/librenms/pull/14951)) - [mtentilucci](https://github.com/mtentilucci)
* Add Nutanix AOS discovery ([#14950](https://github.com/librenms/librenms/pull/14950)) - [mtentilucci](https://github.com/mtentilucci)
* RouterOS runtime quirk on first discovery ([#14945](https://github.com/librenms/librenms/pull/14945)) - [murrant](https://github.com/murrant)
* Added sensor support for older APC InfraStruXure PDUs ([#14944](https://github.com/librenms/librenms/pull/14944)) - [bakerds](https://github.com/bakerds)
* Expand discovery of gigavue os ([#14933](https://github.com/librenms/librenms/pull/14933)) - [mtentilucci](https://github.com/mtentilucci)
* Add discovery of NVT Phybridge FLEX24 ([#14913](https://github.com/librenms/librenms/pull/14913)) - [pjroehl](https://github.com/pjroehl)
* Add initial OS detection for LoadBalancer.org ([#14902](https://github.com/librenms/librenms/pull/14902)) - [cjwbath](https://github.com/cjwbath)
* Added graphing of DDoS-protection related OIDs for PAN-OS ([#14847](https://github.com/librenms/librenms/pull/14847)) - [bakerds](https://github.com/bakerds)
* Add support for Alpha CXC HP Controller ([#14829](https://github.com/librenms/librenms/pull/14829)) - [MajesticFalcon](https://github.com/MajesticFalcon)
* Add advantech icr-os for advantech routers ([#14171](https://github.com/librenms/librenms/pull/14171)) - [mboehn](https://github.com/mboehn)
* Fix cisco dbm sensors port link on discovery (NCS55A2) ([#13965](https://github.com/librenms/librenms/pull/13965)) - [ollb](https://github.com/ollb)

#### Webui
* Ondemand popup graphs ([#15050](https://github.com/librenms/librenms/pull/15050)) - [murrant](https://github.com/murrant)
* Clarify Alert Notify Settings ([#14974](https://github.com/librenms/librenms/pull/14974)) - [electrocret](https://github.com/electrocret)
* Fix Legacy vars Processing ([#14967](https://github.com/librenms/librenms/pull/14967)) - [murrant](https://github.com/murrant)
* Correct PowerConsumed SI Units in Overview ([#14425](https://github.com/librenms/librenms/pull/14425)) - [mpikzink](https://github.com/mpikzink)
* Added support for user timezones and user browser timezone by default (incomplete) ([#13626](https://github.com/librenms/librenms/pull/13626)) - [eskyuu](https://github.com/eskyuu)

#### Alerting
* Fix undefined array key ([#15025](https://github.com/librenms/librenms/pull/15025)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Graphs
* Php implode arg mismatch ([#15014](https://github.com/librenms/librenms/pull/15014)) - [jlo-lirmm](https://github.com/jlo-lirmm)
* Fix availability graphs to 100% ([#15013](https://github.com/librenms/librenms/pull/15013)) - [laf](https://github.com/laf)
* Fix scale_rigid accidentally being set to false ([#14992](https://github.com/librenms/librenms/pull/14992)) - [murrant](https://github.com/murrant)
* Set device ping_perf scale_min to 0 ([#14989](https://github.com/librenms/librenms/pull/14989)) - [murrant](https://github.com/murrant)
* Poller perf: add per device average ([#14940](https://github.com/librenms/librenms/pull/14940)) - [murrant](https://github.com/murrant)
* Stacked graphs on zoom to speed ([#14928](https://github.com/librenms/librenms/pull/14928)) - [electrocret](https://github.com/electrocret)

#### Applications
* Agent support OS Updates ([#14687](https://github.com/librenms/librenms/pull/14687)) - [bestlong](https://github.com/bestlong)

#### Api
* Allow device ignore to be set via API ([#14985](https://github.com/librenms/librenms/pull/14985)) - [electrocret](https://github.com/electrocret)
* Enable disabling a device via api ([#14983](https://github.com/librenms/librenms/pull/14983)) - [VoipTelCH](https://github.com/VoipTelCH)

#### Discovery
* Snmp-scan filter for dns resolved devices ([#14934](https://github.com/librenms/librenms/pull/14934)) - [SourceDoctor](https://github.com/SourceDoctor)

#### Polling
* Fixes #14957 missing IPv6 BGP peers ([#14959](https://github.com/librenms/librenms/pull/14959)) - [ajsiersema](https://github.com/ajsiersema)
* Fix SnmpQuery and max_oid ([#14955](https://github.com/librenms/librenms/pull/14955)) - [murrant](https://github.com/murrant)

#### Bug
* Fix timetaken columns too small ([#15042](https://github.com/librenms/librenms/pull/15042)) - [murrant](https://github.com/murrant)
* Fix some undefined constants ([#14993](https://github.com/librenms/librenms/pull/14993)) - [murrant](https://github.com/murrant)
* Fix routes after Laravel9 ([#14977](https://github.com/librenms/librenms/pull/14977)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix more divide by zero issues ([#14954](https://github.com/librenms/librenms/pull/14954)) - [murrant](https://github.com/murrant)
* Bug - wrong type in ports.inc.php ([#14952](https://github.com/librenms/librenms/pull/14952)) - [PipoCanaja](https://github.com/PipoCanaja)
* Solves error in discovering services module ([#14939](https://github.com/librenms/librenms/pull/14939)) - [maticomba](https://github.com/maticomba)

#### Refactor
* Add a validation for checking if the scheduler is running ([#14987](https://github.com/librenms/librenms/pull/14987)) - [Jellyfrog](https://github.com/Jellyfrog)
* Refactor billing ([#14979](https://github.com/librenms/librenms/pull/14979)) - [murrant](https://github.com/murrant)

#### Cleanup
* Remove old unused adduser page and script ([#15035](https://github.com/librenms/librenms/pull/15035)) - [murrant](https://github.com/murrant)
* Remove unused port fields ([#14963](https://github.com/librenms/librenms/pull/14963)) - [murrant](https://github.com/murrant)
* Cleanup enable bgp setting ([#14931](https://github.com/librenms/librenms/pull/14931)) - [electrocret](https://github.com/electrocret)

#### Documentation
* Re-add the Ubuntu Image page and links ([#15041](https://github.com/librenms/librenms/pull/15041)) - [laf](https://github.com/laf)
* Remove references to VM images ([#15031](https://github.com/librenms/librenms/pull/15031)) - [murrant](https://github.com/murrant)
* Updated WebUI config options in docs to support direct linking to installs ([#15009](https://github.com/librenms/librenms/pull/15009)) - [laf](https://github.com/laf)
* Fix spelling error in Graylog section ([#15002](https://github.com/librenms/librenms/pull/15002)) - [dscw](https://github.com/dscw)
* Update OAuth-SAML.md to prevent http code 419 error ([#15000](https://github.com/librenms/librenms/pull/15000)) - [fbouynot](https://github.com/fbouynot)
* Update Smokeping.md with better nginx config instructions ([#14999](https://github.com/librenms/librenms/pull/14999)) - [alchemyx](https://github.com/alchemyx)
* Update Copyright year to 2023 in README.md ([#14972](https://github.com/librenms/librenms/pull/14972)) - [otkd](https://github.com/otkd)
* Update Install-LibreNMS.md ([#14949](https://github.com/librenms/librenms/pull/14949)) - [alchemyx](https://github.com/alchemyx)

#### Tests
* Reduce OS module test noise ([#15046](https://github.com/librenms/librenms/pull/15046)) - [murrant](https://github.com/murrant)
* Test PHP 8.2 and MariaDB 10.11 ([#15007](https://github.com/librenms/librenms/pull/15007)) - [murrant](https://github.com/murrant)
* Slightly better OS module test output ([#15001](https://github.com/librenms/librenms/pull/15001)) - [murrant](https://github.com/murrant)
* Fix a bug when creating test data; if a community contained the strin… ([#14739](https://github.com/librenms/librenms/pull/14739)) - [peelman](https://github.com/peelman)

#### Misc
* Firebrick CPU Monitoring ([#15030](https://github.com/librenms/librenms/pull/15030)) - [cjsoftuk](https://github.com/cjsoftuk)
* Add a global setting for Ctrl-F focus (improve #14947) ([#15023](https://github.com/librenms/librenms/pull/15023)) - [etiennewan](https://github.com/etiennewan)
* Fix Firebrick mempool polling ([#15022](https://github.com/librenms/librenms/pull/15022)) - [cjsoftuk](https://github.com/cjsoftuk)
* Add support for memory monitoring on Firebrick platform ([#15021](https://github.com/librenms/librenms/pull/15021)) - [cjsoftuk](https://github.com/cjsoftuk)
* Adopt anonymous migrations ([#15005](https://github.com/librenms/librenms/pull/15005)) - [Jellyfrog](https://github.com/Jellyfrog)
* [About] Link to LinkedIn ([#14991](https://github.com/librenms/librenms/pull/14991)) - [santiag0z](https://github.com/santiag0z)
* Implement authentication for Redis/Sentinel ([#14805](https://github.com/librenms/librenms/pull/14805)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Adding linux_config_files application support ([#14776](https://github.com/librenms/librenms/pull/14776)) - [bnerickson](https://github.com/bnerickson)
* Ensure irc fifo-file is shared between dispatcher and core containers ([#14647](https://github.com/librenms/librenms/pull/14647)) - [Olen](https://github.com/Olen)
* Change ESXi port naming to be stable ([#14639](https://github.com/librenms/librenms/pull/14639)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Laravel 9.x Shift ([#14504](https://github.com/librenms/librenms/pull/14504)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Mibs
* Bump VMware MIBs ([#15029](https://github.com/librenms/librenms/pull/15029)) - [elipsion](https://github.com/elipsion)

#### Dependencies
* Bump guzzlehttp/psr7 from 2.4.4 to 2.5.0 ([#14986](https://github.com/librenms/librenms/pull/14986)) - [dependabot](https://github.com/apps/dependabot)


## 23.4.0
*(2023-04-06)*

A big thank you to the following 25 contributors this last month:

- [electrocret](https://github.com/electrocret) (8)
- [VVelox](https://github.com/VVelox) (6)
- [Jellyfrog](https://github.com/Jellyfrog) (5)
- [mtentilucci](https://github.com/mtentilucci) (4)
- [Bierchermuesli](https://github.com/Bierchermuesli) (3)
- [murrant](https://github.com/murrant) (2)
- [GeantRA](https://github.com/GeantRA) (2)
- [mwobst](https://github.com/mwobst) (2)
- [dependabot](https://github.com/apps/dependabot) (2)
- [not-known](https://github.com/not-known) (2)
- [torbeckattsp](https://github.com/torbeckattsp) (1)
- [d-k-7](https://github.com/d-k-7) (1)
- [arjenz](https://github.com/arjenz) (1)
- [kirk444](https://github.com/kirk444) (1)
- [robje](https://github.com/robje) (1)
- [pjroehl](https://github.com/pjroehl) (1)
- [peejaychilds](https://github.com/peejaychilds) (1)
- [lukeofthetauri](https://github.com/lukeofthetauri) (1)
- [fbouynot](https://github.com/fbouynot) (1)
- [bakerds](https://github.com/bakerds) (1)
- [westerterp](https://github.com/westerterp) (1)
- [peelman](https://github.com/peelman) (1)
- [jellejans](https://github.com/jellejans) (1)
- [LoveSkylark](https://github.com/LoveSkylark) (1)
- [hvanoch](https://github.com/hvanoch) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [Jellyfrog](https://github.com/Jellyfrog) (31)
- [murrant](https://github.com/murrant) (14)
- [ottorei](https://github.com/ottorei) (6)
- [electrocret](https://github.com/electrocret) (3)
- [PipoCanaja](https://github.com/PipoCanaja) (1)

#### Feature
* Indicator on Port Notes tab when Port has notes ([#14923](https://github.com/librenms/librenms/pull/14923)) - [electrocret](https://github.com/electrocret)
* Syslog sink over http for logstash (or any json source) ([#14424](https://github.com/librenms/librenms/pull/14424)) - [Bierchermuesli](https://github.com/Bierchermuesli)

#### Device
* Update hikvision camera detection ([#14943](https://github.com/librenms/librenms/pull/14943)) - [torbeckattsp](https://github.com/torbeckattsp)
* APC UPS UIO sensor discovery bug ([#14942](https://github.com/librenms/librenms/pull/14942)) - [d-k-7](https://github.com/d-k-7)
* Add additional MOS / 7130 devices ([#14922](https://github.com/librenms/librenms/pull/14922)) - [kirk444](https://github.com/kirk444)
* Add support for WTI console products ([#14920](https://github.com/librenms/librenms/pull/14920)) - [robje](https://github.com/robje)
* Update junos discovery yaml to reference total memory instead of buff… ([#14919](https://github.com/librenms/librenms/pull/14919)) - [GeantRA](https://github.com/GeantRA)
* Add support for Trellix FireEye OS ([#14908](https://github.com/librenms/librenms/pull/14908)) - [mtentilucci](https://github.com/mtentilucci)
* Added cisco FTD 1150 to ftd.yaml ([#14907](https://github.com/librenms/librenms/pull/14907)) - [pjroehl](https://github.com/pjroehl)
* Add more OIDs for determining hardware and serial attributes correctly ([#14904](https://github.com/librenms/librenms/pull/14904)) - [mwobst](https://github.com/mwobst)
* Add Cisco FTD Support for security appliances (x3) ([#14893](https://github.com/librenms/librenms/pull/14893)) - [mwobst](https://github.com/mwobst)
* Update test data to account for new vertiv.svg icon ([#14892](https://github.com/librenms/librenms/pull/14892)) - [mtentilucci](https://github.com/mtentilucci)
* Improve Corero CMS support ([#14876](https://github.com/librenms/librenms/pull/14876)) - [electrocret](https://github.com/electrocret)
* Add Avocent MergePoint Unity KVM Switch Support ([#14874](https://github.com/librenms/librenms/pull/14874)) - [mtentilucci](https://github.com/mtentilucci)
* Add Fortigate Webfilter stats ([#14873](https://github.com/librenms/librenms/pull/14873)) - [electrocret](https://github.com/electrocret)
* Add Cisco Firepower 4112 Support ([#14872](https://github.com/librenms/librenms/pull/14872)) - [lukeofthetauri](https://github.com/lukeofthetauri)
* Added PoE controller load and status sensors for Junos devices ([#14868](https://github.com/librenms/librenms/pull/14868)) - [bakerds](https://github.com/bakerds)
* Add Montclair EDFA Support ([#14852](https://github.com/librenms/librenms/pull/14852)) - [peelman](https://github.com/peelman)
* Device - Add support for Scalance SC646-2C ([#14835](https://github.com/librenms/librenms/pull/14835)) - [jellejans](https://github.com/jellejans)
* Add Fortigate packet loss monitoring for Link-Monitor and SD-WAN ([#14828](https://github.com/librenms/librenms/pull/14828)) - [not-known](https://github.com/not-known)
* Refactored Juniper SLA to include support for TWAMP and remove ambigu… ([#14787](https://github.com/librenms/librenms/pull/14787)) - [GeantRA](https://github.com/GeantRA)
* Deltanet Lambdatrail LT2-S,HS ([#14661](https://github.com/librenms/librenms/pull/14661)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Add support for Battery Recommended Days Remaining ([#14653](https://github.com/librenms/librenms/pull/14653)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Webui
* Pseudowires refresh ([#14882](https://github.com/librenms/librenms/pull/14882)) - [Bierchermuesli](https://github.com/Bierchermuesli)

#### Alerting
* Jira transport: use template title ([#14883](https://github.com/librenms/librenms/pull/14883)) - [not-known](https://github.com/not-known)
* Remove Time Elapsed extra space ([#14880](https://github.com/librenms/librenms/pull/14880)) - [electrocret](https://github.com/electrocret)
* Fix Alertlog messaging ([#14861](https://github.com/librenms/librenms/pull/14861)) - [electrocret](https://github.com/electrocret)

#### Graphs
* Add graph_stat_percentile_disable config item to disable percentile lines/value printing ([#14887](https://github.com/librenms/librenms/pull/14887)) - [VVelox](https://github.com/VVelox)
* Convert NTP freq to use generic_stats ([#14834](https://github.com/librenms/librenms/pull/14834)) - [VVelox](https://github.com/VVelox)
* Update fail2ban to have better stat graphs and and fix generic_stats graph.php ([#14818](https://github.com/librenms/librenms/pull/14818)) - [VVelox](https://github.com/VVelox)
* Update various device graphs to to have better stats ([#14815](https://github.com/librenms/librenms/pull/14815)) - [VVelox](https://github.com/VVelox)

#### Applications
* Add more docker stats ([#14767](https://github.com/librenms/librenms/pull/14767)) - [hvanoch](https://github.com/hvanoch)

#### Bug
* SnmpQuery, respect snmp.max_oid ([#14894](https://github.com/librenms/librenms/pull/14894)) - [murrant](https://github.com/murrant)
* Add poller_groups (served) to the poller_cluster table ([#14886](https://github.com/librenms/librenms/pull/14886)) - [peejaychilds](https://github.com/peejaychilds)
* Actually use the stats graph for ntp-server_freq now, which as missed in #14834 ([#14884](https://github.com/librenms/librenms/pull/14884)) - [VVelox](https://github.com/VVelox)
* Add type checking to generic_stats.inc.php for $vars['to'] and $vars['from'] ([#14871](https://github.com/librenms/librenms/pull/14871)) - [VVelox](https://github.com/VVelox)
* Fix graphs for a search query ([#14864](https://github.com/librenms/librenms/pull/14864)) - [westerterp](https://github.com/westerterp)
* Fix interface parse unsets ([#14860](https://github.com/librenms/librenms/pull/14860)) - [electrocret](https://github.com/electrocret)
* Fix dbm calculation to return -60 instead of 0 ([#14858](https://github.com/librenms/librenms/pull/14858)) - [electrocret](https://github.com/electrocret)

#### Cleanup
* Store empty user_func as null ([#14900](https://github.com/librenms/librenms/pull/14900)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Documentation
* Fix typo in lnms device:add help ([#14937](https://github.com/librenms/librenms/pull/14937)) - [arjenz](https://github.com/arjenz)
* Add Azure example configuration for SAML authentication in documentation ([#14870](https://github.com/librenms/librenms/pull/14870)) - [fbouynot](https://github.com/fbouynot)

#### Tests
* Re-throw exceptions if we're in CI ([#14890](https://github.com/librenms/librenms/pull/14890)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Misc
* Reorder check_icmp command to follow documented usage ([#14910](https://github.com/librenms/librenms/pull/14910)) - [mtentilucci](https://github.com/mtentilucci)
* Add multi-PR GitHub-apply ([#14875](https://github.com/librenms/librenms/pull/14875)) - [electrocret](https://github.com/electrocret)
* Allows GEO lookup with detailed internal Location information wrapped inside parentheses. ([#14799](https://github.com/librenms/librenms/pull/14799)) - [LoveSkylark](https://github.com/LoveSkylark)

#### Dependencies
* PHP dependency update ([#14927](https://github.com/librenms/librenms/pull/14927)) - [murrant](https://github.com/murrant)
* Bump phpseclib/phpseclib from 3.0.18 to 3.0.19 ([#14903](https://github.com/librenms/librenms/pull/14903)) - [dependabot](https://github.com/apps/dependabot)
* Bump webpack from 5.66.0 to 5.76.1 ([#14901](https://github.com/librenms/librenms/pull/14901)) - [dependabot](https://github.com/apps/dependabot)


## 22.4.0
*(2023-04-06)*

A big thank you to the following 180 contributors this last month:

- [murrant](https://github.com/murrant) (230)
- [Jellyfrog](https://github.com/Jellyfrog) (73)
- [electrocret](https://github.com/electrocret) (29)
- [PipoCanaja](https://github.com/PipoCanaja) (25)
- [fbouynot](https://github.com/fbouynot) (24)
- [VVelox](https://github.com/VVelox) (21)
- [Npeca75](https://github.com/Npeca75) (17)
- [dependabot](https://github.com/apps/dependabot) (15)
- [bnerickson](https://github.com/bnerickson) (11)
- [gs-kamnas](https://github.com/gs-kamnas) (10)
- [bonzo81](https://github.com/bonzo81) (8)
- [santiag0z](https://github.com/santiag0z) (8)
- [rhinoau](https://github.com/rhinoau) (8)
- [mwobst](https://github.com/mwobst) (7)
- [Martin22](https://github.com/Martin22) (7)
- [westerterp](https://github.com/westerterp) (6)
- [peelman](https://github.com/peelman) (6)
- [laf](https://github.com/laf) (6)
- [LoveSkylark](https://github.com/LoveSkylark) (5)
- [TheMysteriousX](https://github.com/TheMysteriousX) (5)
- [SourceDoctor](https://github.com/SourceDoctor) (5)
- [KayckMatias](https://github.com/KayckMatias) (5)
- [mtentilucci](https://github.com/mtentilucci) (4)
- [not-known](https://github.com/not-known) (4)
- [Bierchermuesli](https://github.com/Bierchermuesli) (4)
- [hanserasmus](https://github.com/hanserasmus) (4)
- [noaheroufus](https://github.com/noaheroufus) (4)
- [opalivan](https://github.com/opalivan) (4)
- [geg347](https://github.com/geg347) (4)
- [ottorei](https://github.com/ottorei) (4)
- [Fehler12](https://github.com/Fehler12) (4)
- [ppasserini](https://github.com/ppasserini) (4)
- [tim427](https://github.com/tim427) (3)
- [fcqpl](https://github.com/fcqpl) (3)
- [kimhaak](https://github.com/kimhaak) (3)
- [luc-ass](https://github.com/luc-ass) (3)
- [bp0](https://github.com/bp0) (3)
- [loopodoopo](https://github.com/loopodoopo) (3)
- [earendilfr](https://github.com/earendilfr) (3)
- [bl3nd3r](https://github.com/bl3nd3r) (3)
- [charlyforot](https://github.com/charlyforot) (3)
- [GeantRA](https://github.com/GeantRA) (2)
- [systeembeheerder](https://github.com/systeembeheerder) (2)
- [dennypage](https://github.com/dennypage) (2)
- [jasoncheng7115](https://github.com/jasoncheng7115) (2)
- [carbinefreak](https://github.com/carbinefreak) (2)
- [gdepeyrot](https://github.com/gdepeyrot) (2)
- [bogdanrotariu](https://github.com/bogdanrotariu) (2)
- [mabra94](https://github.com/mabra94) (2)
- [josh-silvas](https://github.com/josh-silvas) (2)
- [mprins-RAM](https://github.com/mprins-RAM) (2)
- [SirMaple](https://github.com/SirMaple) (2)
- [quentinsch](https://github.com/quentinsch) (2)
- [Schouwenburg](https://github.com/Schouwenburg) (2)
- [aztec102](https://github.com/aztec102) (2)
- [wrongecho](https://github.com/wrongecho) (2)
- [bennet-esyoil](https://github.com/bennet-esyoil) (2)
- [duhow](https://github.com/duhow) (2)
- [Mar974](https://github.com/Mar974) (2)
- [QuadPiece](https://github.com/QuadPiece) (2)
- [kruczek8989](https://github.com/kruczek8989) (2)
- [slimey99uk](https://github.com/slimey99uk) (2)
- [Jimmy-Cl](https://github.com/Jimmy-Cl) (2)
- [si458](https://github.com/si458) (2)
- [torbeckattsp](https://github.com/torbeckattsp) (1)
- [d-k-7](https://github.com/d-k-7) (1)
- [arjenz](https://github.com/arjenz) (1)
- [kirk444](https://github.com/kirk444) (1)
- [robje](https://github.com/robje) (1)
- [pjroehl](https://github.com/pjroehl) (1)
- [peejaychilds](https://github.com/peejaychilds) (1)
- [lukeofthetauri](https://github.com/lukeofthetauri) (1)
- [bakerds](https://github.com/bakerds) (1)
- [guipoletto](https://github.com/guipoletto) (1)
- [goebelmeier](https://github.com/goebelmeier) (1)
- [MarlinMr](https://github.com/MarlinMr) (1)
- [florisvdk](https://github.com/florisvdk) (1)
- [jellejans](https://github.com/jellejans) (1)
- [kylegordon](https://github.com/kylegordon) (1)
- [zenbeam](https://github.com/zenbeam) (1)
- [gilrim](https://github.com/gilrim) (1)
- [AleksNovak](https://github.com/AleksNovak) (1)
- [tristanbob](https://github.com/tristanbob) (1)
- [da-me](https://github.com/da-me) (1)
- [fdomain](https://github.com/fdomain) (1)
- [jaannnis](https://github.com/jaannnis) (1)
- [knpo](https://github.com/knpo) (1)
- [trs80](https://github.com/trs80) (1)
- [MANT5149](https://github.com/MANT5149) (1)
- [support-capensis](https://github.com/support-capensis) (1)
- [zeroservices](https://github.com/zeroservices) (1)
- [hvanoch](https://github.com/hvanoch) (1)
- [angeletdemon](https://github.com/angeletdemon) (1)
- [alchemyx](https://github.com/alchemyx) (1)
- [rinsekloek](https://github.com/rinsekloek) (1)
- [gewuerfelt](https://github.com/gewuerfelt) (1)
- [tuxgasy](https://github.com/tuxgasy) (1)
- [hugalafutro](https://github.com/hugalafutro) (1)
- [Blinq-SanderBlom](https://github.com/Blinq-SanderBlom) (1)
- [nightcore500](https://github.com/nightcore500) (1)
- [mrwold](https://github.com/mrwold) (1)
- [koocotte](https://github.com/koocotte) (1)
- [VoipTelCH](https://github.com/VoipTelCH) (1)
- [cfitzw](https://github.com/cfitzw) (1)
- [jaaruizgu](https://github.com/jaaruizgu) (1)
- [pertruccio](https://github.com/pertruccio) (1)
- [ianhodgson](https://github.com/ianhodgson) (1)
- [talkstraightuk](https://github.com/talkstraightuk) (1)
- [fufroma](https://github.com/fufroma) (1)
- [fuzzbawl](https://github.com/fuzzbawl) (1)
- [otkd](https://github.com/otkd) (1)
- [kiwibrew](https://github.com/kiwibrew) (1)
- [andrekeller](https://github.com/andrekeller) (1)
- [Olen](https://github.com/Olen) (1)
- [Frazew](https://github.com/Frazew) (1)
- [jgelinas](https://github.com/jgelinas) (1)
- [mpikzink](https://github.com/mpikzink) (1)
- [squidly](https://github.com/squidly) (1)
- [daniel-franca](https://github.com/daniel-franca) (1)
- [sashashura](https://github.com/sashashura) (1)
- [tuomari](https://github.com/tuomari) (1)
- [sembeek](https://github.com/sembeek) (1)
- [huntr-helper](https://github.com/huntr-helper) (1)
- [ktims](https://github.com/ktims) (1)
- [VirTechSystems](https://github.com/VirTechSystems) (1)
- [washcroft](https://github.com/washcroft) (1)
- [Laplacence](https://github.com/Laplacence) (1)
- [Jarod2801](https://github.com/Jarod2801) (1)
- [ciscoqid](https://github.com/ciscoqid) (1)
- [enferas](https://github.com/enferas) (1)
- [00gh](https://github.com/00gh) (1)
- [PedroChaps](https://github.com/PedroChaps) (1)
- [ajsiersema](https://github.com/ajsiersema) (1)
- [prahal](https://github.com/prahal) (1)
- [paulgear](https://github.com/paulgear) (1)
- [mostdaysarebaddays](https://github.com/mostdaysarebaddays) (1)
- [dagbdagb](https://github.com/dagbdagb) (1)
- [bile0026](https://github.com/bile0026) (1)
- [hjcday](https://github.com/hjcday) (1)
- [spyfly](https://github.com/spyfly) (1)
- [Bobdave](https://github.com/Bobdave) (1)
- [DaftBrit](https://github.com/DaftBrit) (1)
- [nox-x](https://github.com/nox-x) (1)
- [SanderBlom](https://github.com/SanderBlom) (1)
- [thecityofguanyu](https://github.com/thecityofguanyu) (1)
- [nsn-amagruder](https://github.com/nsn-amagruder) (1)
- [mkuurstra](https://github.com/mkuurstra) (1)
- [booth-f](https://github.com/booth-f) (1)
- [sajiby3k](https://github.com/sajiby3k) (1)
- [skandragon](https://github.com/skandragon) (1)
- [glance-](https://github.com/glance-) (1)
- [twelch24](https://github.com/twelch24) (1)
- [kevinwallace](https://github.com/kevinwallace) (1)
- [lfkeitel](https://github.com/lfkeitel) (1)
- [steffann](https://github.com/steffann) (1)
- [p4k8](https://github.com/p4k8) (1)
- [micko](https://github.com/micko) (1)
- [cliffalbert](https://github.com/cliffalbert) (1)
- [HolgerHees](https://github.com/HolgerHees) (1)
- [frenchie](https://github.com/frenchie) (1)
- [claude191](https://github.com/claude191) (1)
- [Cormoran96](https://github.com/Cormoran96) (1)
- [WillIrvine](https://github.com/WillIrvine) (1)
- [lucalo72](https://github.com/lucalo72) (1)
- [ssasso](https://github.com/ssasso) (1)
- [dandare100](https://github.com/dandare100) (1)
- [ospfbgp](https://github.com/ospfbgp) (1)
- [MrXermon](https://github.com/MrXermon) (1)
- [pandalion98](https://github.com/pandalion98) (1)
- [eskyuu](https://github.com/eskyuu) (1)
- [martinberg](https://github.com/martinberg) (1)
- [lpailhas](https://github.com/lpailhas) (1)
- [jonathanjdavis](https://github.com/jonathanjdavis) (1)
- [IVI053](https://github.com/IVI053) (1)
- [LTangaF](https://github.com/LTangaF) (1)
- [dlangille](https://github.com/dlangille) (1)
- [pfromme25](https://github.com/pfromme25) (1)
- [woidi](https://github.com/woidi) (1)
- [manonfgoo](https://github.com/manonfgoo) (1)
- [mzacchi](https://github.com/mzacchi) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [Jellyfrog](https://github.com/Jellyfrog) (328)
- [murrant](https://github.com/murrant) (260)
- [PipoCanaja](https://github.com/PipoCanaja) (50)
- [ottorei](https://github.com/ottorei) (36)
- [laf](https://github.com/laf) (18)
- [SourceDoctor](https://github.com/SourceDoctor) (7)
- [VVelox](https://github.com/VVelox) (6)
- [electrocret](https://github.com/electrocret) (3)
- [mpikzink](https://github.com/mpikzink) (3)
- [santiag0z](https://github.com/santiag0z) (2)
- [crazy-max](https://github.com/crazy-max) (1)
- [westerterp](https://github.com/westerterp) (1)
- [SeeMyPing](https://github.com/SeeMyPing) (1)
- [fbouynot](https://github.com/fbouynot) (1)
- [Cormoran96](https://github.com/Cormoran96) (1)
- [bennet-esyoil](https://github.com/bennet-esyoil) (1)
- [f0o](https://github.com/f0o) (1)
- [haxmeadroom](https://github.com/haxmeadroom) (1)
- [bboy8012](https://github.com/bboy8012) (1)

#### Feature
* Indicator on Port Notes tab when Port has notes ([#14923](https://github.com/librenms/librenms/pull/14923)) - [electrocret](https://github.com/electrocret)
* Add display query to list_devices function ([#14747](https://github.com/librenms/librenms/pull/14747)) - [bonzo81](https://github.com/bonzo81)
* Split out lnms snmp convenience commands ([#14603](https://github.com/librenms/librenms/pull/14603)) - [murrant](https://github.com/murrant)
* Add --forgot-key to key:rotate command ([#14495](https://github.com/librenms/librenms/pull/14495)) - [murrant](https://github.com/murrant)
* Syslog sink over http for logstash (or any json source) ([#14424](https://github.com/librenms/librenms/pull/14424)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Improved Modern Modules ([#14315](https://github.com/librenms/librenms/pull/14315)) - [murrant](https://github.com/murrant)
* Add @signedGraphTag() and @signedGraphUrl() blade directives ([#14269](https://github.com/librenms/librenms/pull/14269)) - [murrant](https://github.com/murrant)
* Device settings: attempt to open related tab ([#14250](https://github.com/librenms/librenms/pull/14250)) - [murrant](https://github.com/murrant)
* Error reporting ([#14190](https://github.com/librenms/librenms/pull/14190)) - [Jellyfrog](https://github.com/Jellyfrog)
* Prepare for PHP 8.1 ([#14156](https://github.com/librenms/librenms/pull/14156)) - [Jellyfrog](https://github.com/Jellyfrog)
* New Poller validations ([#14148](https://github.com/librenms/librenms/pull/14148)) - [murrant](https://github.com/murrant)
* New lnms command to enable and disable plugins ([#14147](https://github.com/librenms/librenms/pull/14147)) - [murrant](https://github.com/murrant)
* Support for SSL/TLS protected connections to MySQL databases ([#14142](https://github.com/librenms/librenms/pull/14142)) - [gs-kamnas](https://github.com/gs-kamnas)
* Collect OS distro and LibreNMS version ([#14138](https://github.com/librenms/librenms/pull/14138)) - [murrant](https://github.com/murrant)
* Lnms device:poll better feedback ([#14130](https://github.com/librenms/librenms/pull/14130)) - [murrant](https://github.com/murrant)
* Per-App data storage ([#14087](https://github.com/librenms/librenms/pull/14087)) - [VVelox](https://github.com/VVelox)
* SnmpQuery walk multiple oids ([#14015](https://github.com/librenms/librenms/pull/14015)) - [murrant](https://github.com/murrant)
* Add support to REST API for creating Maintenance Schedules for Device Groups ([#13985](https://github.com/librenms/librenms/pull/13985)) - [thecityofguanyu](https://github.com/thecityofguanyu)
* Automatic fixes for validation failures ([#13930](https://github.com/librenms/librenms/pull/13930)) - [murrant](https://github.com/murrant)
* Allow unordered OIDs (global and per-os) ([#13923](https://github.com/librenms/librenms/pull/13923)) - [murrant](https://github.com/murrant)
* Pre-Install settings ([#13906](https://github.com/librenms/librenms/pull/13906)) - [murrant](https://github.com/murrant)
* Add ISIS discovery and polling for iosxe devices ([#13880](https://github.com/librenms/librenms/pull/13880)) - [WillIrvine](https://github.com/WillIrvine)
* Device_add support display field ([#13846](https://github.com/librenms/librenms/pull/13846)) - [murrant](https://github.com/murrant)
* Add configuration support for IPMIv2 Kg key ([#13845](https://github.com/librenms/librenms/pull/13845)) - [pandalion98](https://github.com/pandalion98)
* Display Name in availability map ([#13841](https://github.com/librenms/librenms/pull/13841)) - [murrant](https://github.com/murrant)
* Added --ping-only to snmp-scan.py ([#13810](https://github.com/librenms/librenms/pull/13810)) - [IVI053](https://github.com/IVI053)
* Implement OAuth and SAML2 support ([#13764](https://github.com/librenms/librenms/pull/13764)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Security
* Fix Service Template XSS ([#14659](https://github.com/librenms/librenms/pull/14659)) - [murrant](https://github.com/murrant)
* Fix neighbours XSS ([#14658](https://github.com/librenms/librenms/pull/14658)) - [murrant](https://github.com/murrant)
* Fix SNMP trap -\> Eventlog XSS ([#14657](https://github.com/librenms/librenms/pull/14657)) - [murrant](https://github.com/murrant)
* Fix XSS in api access ([#14551](https://github.com/librenms/librenms/pull/14551)) - [murrant](https://github.com/murrant)
* XSS sanitize pwrstatd application script inputs ([#14545](https://github.com/librenms/librenms/pull/14545)) - [bnerickson](https://github.com/bnerickson)
* Block disabled user session auth ([#14473](https://github.com/librenms/librenms/pull/14473)) - [murrant](https://github.com/murrant)
* Fix group delete xss ([#14472](https://github.com/librenms/librenms/pull/14472)) - [murrant](https://github.com/murrant)
* Fix alert rules XSS ([#14471](https://github.com/librenms/librenms/pull/14471)) - [murrant](https://github.com/murrant)
* Fix xss in browser push transport ([#14470](https://github.com/librenms/librenms/pull/14470)) - [murrant](https://github.com/murrant)
* Fix users xss ([#14469](https://github.com/librenms/librenms/pull/14469)) - [murrant](https://github.com/murrant)
* Fix user mass assignment vulnerability ([#14468](https://github.com/librenms/librenms/pull/14468)) - [murrant](https://github.com/murrant)
* Fix billing xss ([#14465](https://github.com/librenms/librenms/pull/14465)) - [murrant](https://github.com/murrant)
* Fix memcached unserialize vulnerability ([#14459](https://github.com/librenms/librenms/pull/14459)) - [murrant](https://github.com/murrant)
* Fix possible RSS XSS ([#14457](https://github.com/librenms/librenms/pull/14457)) - [murrant](https://github.com/murrant)
* GitHub Workflows security hardening ([#14388](https://github.com/librenms/librenms/pull/14388)) - [sashashura](https://github.com/sashashura)
* Fix scheduled maintenance xss ([#14360](https://github.com/librenms/librenms/pull/14360)) - [murrant](https://github.com/murrant)
* Add huntr.dev to SECURITY.md ([#14359](https://github.com/librenms/librenms/pull/14359)) - [huntr-helper](https://github.com/huntr-helper)
* Security fixes XSS in oxidized-cfg-check.inc.php and print-customoid.php ([#14126](https://github.com/librenms/librenms/pull/14126)) - [enferas](https://github.com/enferas)
* Bumpver handlebars.js to 4.7.7 to resolve CVE-2021-23369 ([#13990](https://github.com/librenms/librenms/pull/13990)) - [gs-kamnas](https://github.com/gs-kamnas)
* Fix services command injection ([#13932](https://github.com/librenms/librenms/pull/13932)) - [murrant](https://github.com/murrant)
* Fix Graylog XSS ([#13931](https://github.com/librenms/librenms/pull/13931)) - [murrant](https://github.com/murrant)
* Bump minimist from 1.2.5 to 1.2.6 ([#13872](https://github.com/librenms/librenms/pull/13872)) - [dependabot](https://github.com/apps/dependabot)
* Fix SQL injection in get-host-dependencies ([#13868](https://github.com/librenms/librenms/pull/13868)) - [Jellyfrog](https://github.com/Jellyfrog)
* Resolved XSS issue from alert rule list modal ([#13805](https://github.com/librenms/librenms/pull/13805)) - [laf](https://github.com/laf)

#### Device
* Update hikvision camera detection ([#14943](https://github.com/librenms/librenms/pull/14943)) - [torbeckattsp](https://github.com/torbeckattsp)
* APC UPS UIO sensor discovery bug ([#14942](https://github.com/librenms/librenms/pull/14942)) - [d-k-7](https://github.com/d-k-7)
* Add additional MOS / 7130 devices ([#14922](https://github.com/librenms/librenms/pull/14922)) - [kirk444](https://github.com/kirk444)
* Add support for WTI console products ([#14920](https://github.com/librenms/librenms/pull/14920)) - [robje](https://github.com/robje)
* Update junos discovery yaml to reference total memory instead of buff… ([#14919](https://github.com/librenms/librenms/pull/14919)) - [GeantRA](https://github.com/GeantRA)
* Add support for Trellix FireEye OS ([#14908](https://github.com/librenms/librenms/pull/14908)) - [mtentilucci](https://github.com/mtentilucci)
* Added cisco FTD 1150 to ftd.yaml ([#14907](https://github.com/librenms/librenms/pull/14907)) - [pjroehl](https://github.com/pjroehl)
* Add more OIDs for determining hardware and serial attributes correctly ([#14904](https://github.com/librenms/librenms/pull/14904)) - [mwobst](https://github.com/mwobst)
* Add Cisco FTD Support for security appliances (x3) ([#14893](https://github.com/librenms/librenms/pull/14893)) - [mwobst](https://github.com/mwobst)
* Update test data to account for new vertiv.svg icon ([#14892](https://github.com/librenms/librenms/pull/14892)) - [mtentilucci](https://github.com/mtentilucci)
* Improve Corero CMS support ([#14876](https://github.com/librenms/librenms/pull/14876)) - [electrocret](https://github.com/electrocret)
* Add Avocent MergePoint Unity KVM Switch Support ([#14874](https://github.com/librenms/librenms/pull/14874)) - [mtentilucci](https://github.com/mtentilucci)
* Add Fortigate Webfilter stats ([#14873](https://github.com/librenms/librenms/pull/14873)) - [electrocret](https://github.com/electrocret)
* Add Cisco Firepower 4112 Support ([#14872](https://github.com/librenms/librenms/pull/14872)) - [lukeofthetauri](https://github.com/lukeofthetauri)
* Added PoE controller load and status sensors for Junos devices ([#14868](https://github.com/librenms/librenms/pull/14868)) - [bakerds](https://github.com/bakerds)
* Fortigate IPS Intrusions detected stats ([#14857](https://github.com/librenms/librenms/pull/14857)) - [electrocret](https://github.com/electrocret)
* Add support for Vsol v1600d EPON OLT ([#14853](https://github.com/librenms/librenms/pull/14853)) - [guipoletto](https://github.com/guipoletto)
* Add Montclair EDFA Support ([#14852](https://github.com/librenms/librenms/pull/14852)) - [peelman](https://github.com/peelman)
* Fix discovery for apc ats ([#14837](https://github.com/librenms/librenms/pull/14837)) - [florisvdk](https://github.com/florisvdk)
* Device - Add support for Scalance SC646-2C ([#14835](https://github.com/librenms/librenms/pull/14835)) - [jellejans](https://github.com/jellejans)
* Include Samsung X Series printers ([#14831](https://github.com/librenms/librenms/pull/14831)) - [kylegordon](https://github.com/kylegordon)
* Add Fortigate packet loss monitoring for Link-Monitor and SD-WAN ([#14828](https://github.com/librenms/librenms/pull/14828)) - [not-known](https://github.com/not-known)
* EdgeOS OLT new sensors and changes ([#14807](https://github.com/librenms/librenms/pull/14807)) - [noaheroufus](https://github.com/noaheroufus)
* Update XDP string to exclude modern Cisco lightweight APs from discovery ([#14803](https://github.com/librenms/librenms/pull/14803)) - [tristanbob](https://github.com/tristanbob)
* Extend filtering of graphs device_bits on cisco ASA ([#14796](https://github.com/librenms/librenms/pull/14796)) - [PipoCanaja](https://github.com/PipoCanaja)
* Changed discovery OID in ets.yaml ([#14795](https://github.com/librenms/librenms/pull/14795)) - [da-me](https://github.com/da-me)
* Added Support for SNS-3615-K9 ([#14792](https://github.com/librenms/librenms/pull/14792)) - [jaannnis](https://github.com/jaannnis)
* Routeros fix lldp discovery on 7.7+ ([#14791](https://github.com/librenms/librenms/pull/14791)) - [knpo](https://github.com/knpo)
* Refactored Juniper SLA to include support for TWAMP and remove ambigu… ([#14787](https://github.com/librenms/librenms/pull/14787)) - [GeantRA](https://github.com/GeantRA)
* Fix cisco-flash ([#14772](https://github.com/librenms/librenms/pull/14772)) - [electrocret](https://github.com/electrocret)
* Eaton matrix wattage fix ([#14770](https://github.com/librenms/librenms/pull/14770)) - [peelman](https://github.com/peelman)
* Add Universal Input Output support for APC ([#14766](https://github.com/librenms/librenms/pull/14766)) - [dennypage](https://github.com/dennypage)
* Eltek Enexus; Fix SmartpackS divisor and hardware discovery ([#14762](https://github.com/librenms/librenms/pull/14762)) - [peelman](https://github.com/peelman)
* Nokia PMC Microwave Improvements ([#14761](https://github.com/librenms/librenms/pull/14761)) - [carbinefreak](https://github.com/carbinefreak)
* Additional sensors ([#14756](https://github.com/librenms/librenms/pull/14756)) - [peelman](https://github.com/peelman)
* Add AXOS sensor data for PON Transceivers (the only transceivers Cali… ([#14741](https://github.com/librenms/librenms/pull/14741)) - [peelman](https://github.com/peelman)
* Adding discovery of LSI MegaRAID Device Media Errors, Other Errors, a… ([#14729](https://github.com/librenms/librenms/pull/14729)) - [bnerickson](https://github.com/bnerickson)
* Update fs-nmu.inc.php ([#14702](https://github.com/librenms/librenms/pull/14702)) - [gewuerfelt](https://github.com/gewuerfelt)
* Stop net-snmp from interpreting the octet-string from rttMonEchoAdmin… ([#14676](https://github.com/librenms/librenms/pull/14676)) - [not-known](https://github.com/not-known)
* Add state of the Fortigate link monitor health checks ([#14675](https://github.com/librenms/librenms/pull/14675)) - [not-known](https://github.com/not-known)
* Adding support for loop-telecom devices ([#14674](https://github.com/librenms/librenms/pull/14674)) - [Blinq-SanderBlom](https://github.com/Blinq-SanderBlom)
* Support Huawei SMU02B ([#14673](https://github.com/librenms/librenms/pull/14673)) - [nightcore500](https://github.com/nightcore500)
* Use 'counter' RRD type for some TrueNAS sensors ([#14670](https://github.com/librenms/librenms/pull/14670)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Device - Add support for "Smartpack R" ([#14665](https://github.com/librenms/librenms/pull/14665)) - [mrwold](https://github.com/mrwold)
* Deltanet Lambdatrail LT2-S,HS ([#14661](https://github.com/librenms/librenms/pull/14661)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Added divisor to SAF Integra-X temp sensors ([#14655](https://github.com/librenms/librenms/pull/14655)) - [noaheroufus](https://github.com/noaheroufus)
* Corrected ICT MPS hardware detection ([#14654](https://github.com/librenms/librenms/pull/14654)) - [noaheroufus](https://github.com/noaheroufus)
* Add support for Battery Recommended Days Remaining ([#14653](https://github.com/librenms/librenms/pull/14653)) - [Jellyfrog](https://github.com/Jellyfrog)
* Adjusted PMP to accomodate various other 450 models. ([#14652](https://github.com/librenms/librenms/pull/14652)) - [noaheroufus](https://github.com/noaheroufus)
* Added support for Eltek Micropack 1U ([#14645](https://github.com/librenms/librenms/pull/14645)) - [fcqpl](https://github.com/fcqpl)
* Added support for Eltek Flatpack S ([#14643](https://github.com/librenms/librenms/pull/14643)) - [fcqpl](https://github.com/fcqpl)
* Added Moxa switching ifAlias/portName mapping ([#14633](https://github.com/librenms/librenms/pull/14633)) - [rhinoau](https://github.com/rhinoau)
* Improve VRP power display ([#14624](https://github.com/librenms/librenms/pull/14624)) - [PipoCanaja](https://github.com/PipoCanaja)
* Edgeos picked up as generic device ([#14612](https://github.com/librenms/librenms/pull/14612)) - [ianhodgson](https://github.com/ianhodgson)
* Added Moxa EDS-G516E optical sensors ([#14610](https://github.com/librenms/librenms/pull/14610)) - [rhinoau](https://github.com/rhinoau)
* Fix eNexus total current for Smartpack S ([#14606](https://github.com/librenms/librenms/pull/14606)) - [murrant](https://github.com/murrant)
* Disable SNMP Bulk for Delta UPS devices ([#14599](https://github.com/librenms/librenms/pull/14599)) - [fufroma](https://github.com/fufroma)
* Improved AIX os information collection ([#14595](https://github.com/librenms/librenms/pull/14595)) - [murrant](https://github.com/murrant)
* More inclusive Cisco SB os detection ([#14594](https://github.com/librenms/librenms/pull/14594)) - [murrant](https://github.com/murrant)
* IP Infusion OcNOS basic detection ([#14588](https://github.com/librenms/librenms/pull/14588)) - [murrant](https://github.com/murrant)
* Fix APC current divide by zero ([#14578](https://github.com/librenms/librenms/pull/14578)) - [murrant](https://github.com/murrant)
* Extend EfficientIP SolidServer support ([#14549](https://github.com/librenms/librenms/pull/14549)) - [PipoCanaja](https://github.com/PipoCanaja)
* TAIT-Infra93 - Fix state + skip_values for Battery ([#14541](https://github.com/librenms/librenms/pull/14541)) - [opalivan](https://github.com/opalivan)
* Timos - Improve SAP stats graphing ([#14534](https://github.com/librenms/librenms/pull/14534)) - [mabra94](https://github.com/mabra94)
* McAfee Web Proxy with COUNTER rrd_type on sensors ([#14529](https://github.com/librenms/librenms/pull/14529)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix 'bke.yaml' discovery file ([#14524](https://github.com/librenms/librenms/pull/14524)) - [PipoCanaja](https://github.com/PipoCanaja)
* Added support for additional Moxa EDS-P model ([#14523](https://github.com/librenms/librenms/pull/14523)) - [rhinoau](https://github.com/rhinoau)
* Fix awplus ntp polling bug ([#14521](https://github.com/librenms/librenms/pull/14521)) - [murrant](https://github.com/murrant)
* Add discovery support for Riedo Networks UPDU ([#14496](https://github.com/librenms/librenms/pull/14496)) - [andrekeller](https://github.com/andrekeller)
* Use correct description oid ([#14489](https://github.com/librenms/librenms/pull/14489)) - [Jellyfrog](https://github.com/Jellyfrog)
* Correct upsBypassVoltage oid ([#14488](https://github.com/librenms/librenms/pull/14488)) - [Jellyfrog](https://github.com/Jellyfrog)
* Correct variable typo ([#14486](https://github.com/librenms/librenms/pull/14486)) - [Jellyfrog](https://github.com/Jellyfrog)
* Hpe ilo: fix filesystem type regex ([#14485](https://github.com/librenms/librenms/pull/14485)) - [Jellyfrog](https://github.com/Jellyfrog)
* Added Fortigate SD-WAN Health checks ([#14456](https://github.com/librenms/librenms/pull/14456)) - [mprins-RAM](https://github.com/mprins-RAM)
* Dont include empty storage sensor ([#14453](https://github.com/librenms/librenms/pull/14453)) - [Jellyfrog](https://github.com/Jellyfrog)
* Remove undefined sensors ([#14449](https://github.com/librenms/librenms/pull/14449)) - [Jellyfrog](https://github.com/Jellyfrog)
* Use correct low warn limit variable ([#14447](https://github.com/librenms/librenms/pull/14447)) - [Jellyfrog](https://github.com/Jellyfrog)
* Correct aviatModemCurModulationRx oid ([#14446](https://github.com/librenms/librenms/pull/14446)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fortinet FortiADC detection and basic statistics ([#14434](https://github.com/librenms/librenms/pull/14434)) - [westerterp](https://github.com/westerterp)
* MNI Microwave OS Add ([#14427](https://github.com/librenms/librenms/pull/14427)) - [carbinefreak](https://github.com/carbinefreak)
* Add OS tait-tnadmin for TN9300 ([#14413](https://github.com/librenms/librenms/pull/14413)) - [opalivan](https://github.com/opalivan)
* Skip empty drac state sensors ([#14409](https://github.com/librenms/librenms/pull/14409)) - [jgelinas](https://github.com/jgelinas)
* Added support for additional Moxa EDS-G models ([#14405](https://github.com/librenms/librenms/pull/14405)) - [rhinoau](https://github.com/rhinoau)
* Device - Add support for Vultan Environmental Monitoring units ([#14401](https://github.com/librenms/librenms/pull/14401)) - [squidly](https://github.com/squidly)
* Issue samsung printer m4080 fx ([#14391](https://github.com/librenms/librenms/pull/14391)) - [daniel-franca](https://github.com/daniel-franca)
* Added status checks for (BWCC) battery status and condition for onboa… ([#14349](https://github.com/librenms/librenms/pull/14349)) - [quentinsch](https://github.com/quentinsch)
* Enexus system output current fix ([#14324](https://github.com/librenms/librenms/pull/14324)) - [loopodoopo](https://github.com/loopodoopo)
* UHP VSAT modems ([#14317](https://github.com/librenms/librenms/pull/14317)) - [loopodoopo](https://github.com/loopodoopo)
* Ray2 - Oid repair at ber ([#14302](https://github.com/librenms/librenms/pull/14302)) - [Martin22](https://github.com/Martin22)
* Routeros - Fix displaying distance in charts ([#14300](https://github.com/librenms/librenms/pull/14300)) - [Martin22](https://github.com/Martin22)
* Added support for Ubiquiti UFiber OLT ([#14256](https://github.com/librenms/librenms/pull/14256)) - [Martin22](https://github.com/Martin22)
* Fix ciena-sds inventory bugs ([#14252](https://github.com/librenms/librenms/pull/14252)) - [murrant](https://github.com/murrant)
* F5 partition ram ([#14226](https://github.com/librenms/librenms/pull/14226)) - [fbouynot](https://github.com/fbouynot)
* Add Cisco Flash storage support ([#14219](https://github.com/librenms/librenms/pull/14219)) - [fbouynot](https://github.com/fbouynot)
* Fix luminato port poll ([#14217](https://github.com/librenms/librenms/pull/14217)) - [murrant](https://github.com/murrant)
* Teltonika RUT fix ([#14202](https://github.com/librenms/librenms/pull/14202)) - [loopodoopo](https://github.com/loopodoopo)
* Initial support for Moxa AWK Industrial APs ([#14197](https://github.com/librenms/librenms/pull/14197)) - [rhinoau](https://github.com/rhinoau)
* Mikrotik wifi station mode sensors ([#14193](https://github.com/librenms/librenms/pull/14193)) - [Npeca75](https://github.com/Npeca75)
* Update mellanox os image ([#14184](https://github.com/librenms/librenms/pull/14184)) - [Laplacence](https://github.com/Laplacence)
* Change state_name for Racoms modulation ([#14174](https://github.com/librenms/librenms/pull/14174)) - [Martin22](https://github.com/Martin22)
* Cisco SB/CBS environment sensors ([#14154](https://github.com/librenms/librenms/pull/14154)) - [Fehler12](https://github.com/Fehler12)
* Fix Rocky Linux and AlmaLinux icons and logos ([#14150](https://github.com/librenms/librenms/pull/14150)) - [murrant](https://github.com/murrant)
* Add additional sysObjectIDs for variants of the Arista 7130 ([#14144](https://github.com/librenms/librenms/pull/14144)) - [gs-kamnas](https://github.com/gs-kamnas)
* Eltex MES 2324p Add ([#14135](https://github.com/librenms/librenms/pull/14135)) - [aztec102](https://github.com/aztec102)
* Solid Optics EDFAMUX support ([#14129](https://github.com/librenms/librenms/pull/14129)) - [murrant](https://github.com/murrant)
* Merge netmanplus and riello and improve device support ([#14125](https://github.com/librenms/librenms/pull/14125)) - [murrant](https://github.com/murrant)
* Device - Basic hatteras dslam integration ([#14115](https://github.com/librenms/librenms/pull/14115)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Bats support ([#14108](https://github.com/librenms/librenms/pull/14108)) - [Schouwenburg](https://github.com/Schouwenburg)
* Solved aos6 problem where Librenms wasn't identifying all vlans ([#14107](https://github.com/librenms/librenms/pull/14107)) - [PedroChaps](https://github.com/PedroChaps)
* Fix Cisco polling BGP peers in non-default VRF ([#14105](https://github.com/librenms/librenms/pull/14105)) - [ajsiersema](https://github.com/ajsiersema)
* Added support for CheckPoint 1100, 1450 & 1490 models. ([#14074](https://github.com/librenms/librenms/pull/14074)) - [quentinsch](https://github.com/quentinsch)
* Missing "s" in NsBsd.php ([#14067](https://github.com/librenms/librenms/pull/14067)) - [Mar974](https://github.com/Mar974)
* Add full version of Mikrotik logo ([#14063](https://github.com/librenms/librenms/pull/14063)) - [QuadPiece](https://github.com/QuadPiece)
* Ns-bsd updated for SNS LTSB 3.7.19 ([#14060](https://github.com/librenms/librenms/pull/14060)) - [Mar974](https://github.com/Mar974)
* Add apc battery operation time, including display in WebUI ([#14058](https://github.com/librenms/librenms/pull/14058)) - [mwobst](https://github.com/mwobst)
* Fix the parsing of the temperature unit value (CMCIII devices) ([#14056](https://github.com/librenms/librenms/pull/14056)) - [mwobst](https://github.com/mwobst)
* ZTE ZXA10 Update (Added dBm graphs) ([#14049](https://github.com/librenms/librenms/pull/14049)) - [aztec102](https://github.com/aztec102)
* Update Mikrotik logo ([#14045](https://github.com/librenms/librenms/pull/14045)) - [QuadPiece](https://github.com/QuadPiece)
* Fix use of incorrect variable to retrieve current sensor value ([#14037](https://github.com/librenms/librenms/pull/14037)) - [dennypage](https://github.com/dennypage)
* Support Huawei SMU11B ([#14029](https://github.com/librenms/librenms/pull/14029)) - [murrant](https://github.com/murrant)
* Update Teltonika Sensors for FW R_00.07.02 ([#14012](https://github.com/librenms/librenms/pull/14012)) - [hjcday](https://github.com/hjcday)
* Procurve hardware description cleanup ([#14007](https://github.com/librenms/librenms/pull/14007)) - [murrant](https://github.com/murrant)
* Racom Ray2 and Ray3 - Modulation states added ([#14001](https://github.com/librenms/librenms/pull/14001)) - [Martin22](https://github.com/Martin22)
* Fix OS Detection for USW-Flex-XG ([#13999](https://github.com/librenms/librenms/pull/13999)) - [spyfly](https://github.com/spyfly)
* Add support for Cisco Nexus 3550 series (formerly Exalink Fusion) devices ([#13992](https://github.com/librenms/librenms/pull/13992)) - [gs-kamnas](https://github.com/gs-kamnas)
* Improve support for Arista/Metamako MOS devices ([#13988](https://github.com/librenms/librenms/pull/13988)) - [gs-kamnas](https://github.com/gs-kamnas)
* Add Cisco Business Wirless to ciscowlc.yaml ([#13984](https://github.com/librenms/librenms/pull/13984)) - [nsn-amagruder](https://github.com/nsn-amagruder)
* Add Eaton SC200 OS model ([#13978](https://github.com/librenms/librenms/pull/13978)) - [slimey99uk](https://github.com/slimey99uk)
* Fortigate LTE sensor addition ([#13977](https://github.com/librenms/librenms/pull/13977)) - [slimey99uk](https://github.com/slimey99uk)
* Added BKE power supply support. ([#13972](https://github.com/librenms/librenms/pull/13972)) - [Martin22](https://github.com/Martin22)
* Workaround issues with lldp information from GS108Tv1 ([#13971](https://github.com/librenms/librenms/pull/13971)) - [glance-](https://github.com/glance-)
* Add additional OpenBSD PF graphs ([#13963](https://github.com/librenms/librenms/pull/13963)) - [kevinwallace](https://github.com/kevinwallace)
* Don't use bulk-walk for PrimeKey Appliances ([#13958](https://github.com/librenms/librenms/pull/13958)) - [bl3nd3r](https://github.com/bl3nd3r)
* Fix avtech12e sensors ([#13943](https://github.com/librenms/librenms/pull/13943)) - [lfkeitel](https://github.com/lfkeitel)
* Support tplink routers ([#13922](https://github.com/librenms/librenms/pull/13922)) - [si458](https://github.com/si458)
* Aviat WTM reduce snmp load ([#13918](https://github.com/librenms/librenms/pull/13918)) - [murrant](https://github.com/murrant)
* Fix Hytera error ([#13909](https://github.com/librenms/librenms/pull/13909)) - [murrant](https://github.com/murrant)
* [mikrotik] fixed RouterOS ipv4/ipv6 routes ([#13902](https://github.com/librenms/librenms/pull/13902)) - [Npeca75](https://github.com/Npeca75)
* PrimeKey Improvements ([#13901](https://github.com/librenms/librenms/pull/13901)) - [bl3nd3r](https://github.com/bl3nd3r)
* Enhancements for Zyxel OS ([#13897](https://github.com/librenms/librenms/pull/13897)) - [Jimmy-Cl](https://github.com/Jimmy-Cl)
* Added support for Dell PowerVault ME4024 ([#13883](https://github.com/librenms/librenms/pull/13883)) - [laf](https://github.com/laf)
* Add support for Riello NetMan 204 ([#13878](https://github.com/librenms/librenms/pull/13878)) - [lucalo72](https://github.com/lucalo72)
* Fix usw flex switch hardware detection ([#13877](https://github.com/librenms/librenms/pull/13877)) - [Fehler12](https://github.com/Fehler12)
* Added Polycom Lens SNMP support. ([#13876](https://github.com/librenms/librenms/pull/13876)) - [Fehler12](https://github.com/Fehler12)
* Fix for PFSense state table removals field ([#13863](https://github.com/librenms/librenms/pull/13863)) - [dandare100](https://github.com/dandare100)
* Add support for VOSS 8.6 ([#13857](https://github.com/librenms/librenms/pull/13857)) - [ospfbgp](https://github.com/ospfbgp)
* McAfee Proxy Sensor name update ([#13853](https://github.com/librenms/librenms/pull/13853)) - [PipoCanaja](https://github.com/PipoCanaja)
* Device - HWG-WLD version 2 support ([#13849](https://github.com/librenms/librenms/pull/13849)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix an issue with the APC current discovery ([#13837](https://github.com/librenms/librenms/pull/13837)) - [eskyuu](https://github.com/eskyuu)
* Add VS state for Gaia ([#13831](https://github.com/librenms/librenms/pull/13831)) - [martinberg](https://github.com/martinberg)
* [new OS] Alpine OptoElectronics TDCM-EDFA support ([#13825](https://github.com/librenms/librenms/pull/13825)) - [charlyforot](https://github.com/charlyforot)
* Fix db delete on cisco-vrf-lite discovery ([#13823](https://github.com/librenms/librenms/pull/13823)) - [lpailhas](https://github.com/lpailhas)
* Add rocky linux OS identification ([#13815](https://github.com/librenms/librenms/pull/13815)) - [hanserasmus](https://github.com/hanserasmus)
* Detect truenas scale ([#13812](https://github.com/librenms/librenms/pull/13812)) - [si458](https://github.com/si458)
* Add support for PrimeKey Hardware Appliance ([#13806](https://github.com/librenms/librenms/pull/13806)) - [bl3nd3r](https://github.com/bl3nd3r)
* [comware] dropped dbfetch from discovery/sensors ([#13796](https://github.com/librenms/librenms/pull/13796)) - [Npeca75](https://github.com/Npeca75)
* BGP unnumbered support for Cumulus ([#13785](https://github.com/librenms/librenms/pull/13785)) - [charlyforot](https://github.com/charlyforot)
* Correct divisor in discovery definition vertiv-pdu.yaml ([#13768](https://github.com/librenms/librenms/pull/13768)) - [woidi](https://github.com/woidi)
* Netscaler new counter metrics ([#13323](https://github.com/librenms/librenms/pull/13323)) - [mzacchi](https://github.com/mzacchi)

#### Webui
* Pseudowires refresh ([#14882](https://github.com/librenms/librenms/pull/14882)) - [Bierchermuesli](https://github.com/Bierchermuesli)
* Fix port speed setting feedback ([#14743](https://github.com/librenms/librenms/pull/14743)) - [murrant](https://github.com/murrant)
* Fix Cimc on Overview ([#14727](https://github.com/librenms/librenms/pull/14727)) - [electrocret](https://github.com/electrocret)
* Search devices also in display ([#14714](https://github.com/librenms/librenms/pull/14714)) - [gdepeyrot](https://github.com/gdepeyrot)
* Fix check rrd file exists with remote rrdcached ([#14690](https://github.com/librenms/librenms/pull/14690)) - [tuxgasy](https://github.com/tuxgasy)
* Use displayname instead of hostname for Device Maintenance Modal Title ([#14681](https://github.com/librenms/librenms/pull/14681)) - [electrocret](https://github.com/electrocret)
* Remove ungrouped devices panel ([#14664](https://github.com/librenms/librenms/pull/14664)) - [murrant](https://github.com/murrant)
* Custom port view fix ([#14637](https://github.com/librenms/librenms/pull/14637)) - [SourceDoctor](https://github.com/SourceDoctor)
* Fix billing graph divide by zero when the period is zero or doesn't exist ([#14623](https://github.com/librenms/librenms/pull/14623)) - [jaaruizgu](https://github.com/jaaruizgu)
* Fix port neighbors missing ([#14586](https://github.com/librenms/librenms/pull/14586)) - [murrant](https://github.com/murrant)
* Fix some icons ([#14584](https://github.com/librenms/librenms/pull/14584)) - [murrant](https://github.com/murrant)
* [About] Open Laravel and RRDtool link in new tab ([#14568](https://github.com/librenms/librenms/pull/14568)) - [santiag0z](https://github.com/santiag0z)
* [About] Open the contributor list link in a new tab ([#14553](https://github.com/librenms/librenms/pull/14553)) - [santiag0z](https://github.com/santiag0z)
* Fix v2 plugins ([#14506](https://github.com/librenms/librenms/pull/14506)) - [murrant](https://github.com/murrant)
* Check if service_name is empty or equal to service_type ([#14499](https://github.com/librenms/librenms/pull/14499)) - [luc-ass](https://github.com/luc-ass)
* Show id on device dependencies ([#14497](https://github.com/librenms/librenms/pull/14497)) - [SourceDoctor](https://github.com/SourceDoctor)
* Userlist description fix ([#14482](https://github.com/librenms/librenms/pull/14482)) - [mprins-RAM](https://github.com/mprins-RAM)
* Sort alert transport by name ([#14464](https://github.com/librenms/librenms/pull/14464)) - [SourceDoctor](https://github.com/SourceDoctor)
* Fix missing device_id from device alert logs ([#14460](https://github.com/librenms/librenms/pull/14460)) - [ottorei](https://github.com/ottorei)
* Fix about date display ([#14442](https://github.com/librenms/librenms/pull/14442)) - [murrant](https://github.com/murrant)
* Fix pseudowires pages ([#14441](https://github.com/librenms/librenms/pull/14441)) - [murrant](https://github.com/murrant)
* Enhanced Service Overview on Device Overview Page ([#14410](https://github.com/librenms/librenms/pull/14410)) - [luc-ass](https://github.com/luc-ass)
* Disable plugins that have errors ([#14383](https://github.com/librenms/librenms/pull/14383)) - [murrant](https://github.com/murrant)
* Fix Inventory table for Dark theme ([#14377](https://github.com/librenms/librenms/pull/14377)) - [electrocret](https://github.com/electrocret)
* Add initselect2 to locations ports ([#14375](https://github.com/librenms/librenms/pull/14375)) - [KayckMatias](https://github.com/KayckMatias)
* Update devices filter in alert-logs to init_select2 ([#14361](https://github.com/librenms/librenms/pull/14361)) - [KayckMatias](https://github.com/KayckMatias)
* Load device selection dynamically on Ports page ([#14353](https://github.com/librenms/librenms/pull/14353)) - [KayckMatias](https://github.com/KayckMatias)
* Port pages fixes and cleanups ([#14310](https://github.com/librenms/librenms/pull/14310)) - [murrant](https://github.com/murrant)
* Remove Caffeine ([#14277](https://github.com/librenms/librenms/pull/14277)) - [murrant](https://github.com/murrant)
* Updated brother.svg to make it render in Safari ([#14271](https://github.com/librenms/librenms/pull/14271)) - [luc-ass](https://github.com/luc-ass)
* Fix for Cisco group device health tab ([#14265](https://github.com/librenms/librenms/pull/14265)) - [fbouynot](https://github.com/fbouynot)
* Fix dashboard widgets becoming unlocked (especially when using a touchscreen) ([#14222](https://github.com/librenms/librenms/pull/14222)) - [tim427](https://github.com/tim427)
* Migrate xDSL code to module, and add support for VDSL2 MIB ([#14207](https://github.com/librenms/librenms/pull/14207)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix ports display ([#14183](https://github.com/librenms/librenms/pull/14183)) - [murrant](https://github.com/murrant)
* Ports by device group ([#14175](https://github.com/librenms/librenms/pull/14175)) - [electrocret](https://github.com/electrocret)
* Empty Outages table ([#14167](https://github.com/librenms/librenms/pull/14167)) - [Npeca75](https://github.com/Npeca75)
* View Ports in Portgroups ([#14141](https://github.com/librenms/librenms/pull/14141)) - [electrocret](https://github.com/electrocret)
* Fix eventlog filtering ([#14136](https://github.com/librenms/librenms/pull/14136)) - [murrant](https://github.com/murrant)
* Fix device filtering false values ([#14103](https://github.com/librenms/librenms/pull/14103)) - [murrant](https://github.com/murrant)
* [gui] enable permanent vertical scroll ([#14102](https://github.com/librenms/librenms/pull/14102)) - [Npeca75](https://github.com/Npeca75)
* Minor visual changes to the apps-overview page ([#14090](https://github.com/librenms/librenms/pull/14090)) - [bennet-esyoil](https://github.com/bennet-esyoil)
* Improved sorting options for Availability Map ([#14073](https://github.com/librenms/librenms/pull/14073)) - [mwobst](https://github.com/mwobst)
* Search device by MAC via URL ([#14072](https://github.com/librenms/librenms/pull/14072)) - [duhow](https://github.com/duhow)
* Add BGP description to eventlog BGP Peers messages ([#14061](https://github.com/librenms/librenms/pull/14061)) - [mostdaysarebaddays](https://github.com/mostdaysarebaddays)
* Slightly easier validation page error access ([#14044](https://github.com/librenms/librenms/pull/14044)) - [murrant](https://github.com/murrant)
* Dashboard code cleanup ([#13996](https://github.com/librenms/librenms/pull/13996)) - [murrant](https://github.com/murrant)
* Update dark mode to fix BGP and Peering page ([#13951](https://github.com/librenms/librenms/pull/13951)) - [Jimmy-Cl](https://github.com/Jimmy-Cl)
* Validate base_url and server_name ([#13941](https://github.com/librenms/librenms/pull/13941)) - [murrant](https://github.com/murrant)
* Fix snmp.timeout setting via Web UI ([#13937](https://github.com/librenms/librenms/pull/13937)) - [murrant](https://github.com/murrant)
* Add ISIS-details to alert details ([#13920](https://github.com/librenms/librenms/pull/13920)) - [ottorei](https://github.com/ottorei)
* Fix port mini graphs ([#13911](https://github.com/librenms/librenms/pull/13911)) - [murrant](https://github.com/murrant)
* Replaced OpenWRT icon with new logo ([#13891](https://github.com/librenms/librenms/pull/13891)) - [frenchie](https://github.com/frenchie)
* Add "Ping Response" graph to "Ping Only" Device Overview page ([#13886](https://github.com/librenms/librenms/pull/13886)) - [westerterp](https://github.com/westerterp)
* Remove fix size for column mac adresse ([#13881](https://github.com/librenms/librenms/pull/13881)) - [Cormoran96](https://github.com/Cormoran96)
* Fixed the top port errors widget returning bits graphs instead ([#13860](https://github.com/librenms/librenms/pull/13860)) - [laf](https://github.com/laf)
* Fix class error name prevents to show BER graph ([#13833](https://github.com/librenms/librenms/pull/13833)) - [charlyforot](https://github.com/charlyforot)
* Fixed displaying hostname in create bill when port is passed ([#13830](https://github.com/librenms/librenms/pull/13830)) - [laf](https://github.com/laf)
* Fix Oxidized Config tab showing when Device OS or Device Type is disabled ([#13809](https://github.com/librenms/librenms/pull/13809)) - [westerterp](https://github.com/westerterp)
* Position the buttons in the center on user preferences page ([#13802](https://github.com/librenms/librenms/pull/13802)) - [santiag0z](https://github.com/santiag0z)
* Add usage hints for Display Name placeholder usage ([#13801](https://github.com/librenms/librenms/pull/13801)) - [LTangaF](https://github.com/LTangaF)
* Fix second menu bar in Apps screens ([#13800](https://github.com/librenms/librenms/pull/13800)) - [westerterp](https://github.com/westerterp)
* WebUI - Search results for ports ([#13787](https://github.com/librenms/librenms/pull/13787)) - [PipoCanaja](https://github.com/PipoCanaja)
* Device Types Widget ([#13670](https://github.com/librenms/librenms/pull/13670)) - [SourceDoctor](https://github.com/SourceDoctor)

#### Alerting
* Jira transport: use template title ([#14883](https://github.com/librenms/librenms/pull/14883)) - [not-known](https://github.com/not-known)
* Remove Time Elapsed extra space ([#14880](https://github.com/librenms/librenms/pull/14880)) - [electrocret](https://github.com/electrocret)
* Fix Alertlog messaging ([#14861](https://github.com/librenms/librenms/pull/14861)) - [electrocret](https://github.com/electrocret)
* Fix MS Teams alert transport, correct HTTP header ([#14843](https://github.com/librenms/librenms/pull/14843)) - [goebelmeier](https://github.com/goebelmeier)
* Add support for topics ([#14804](https://github.com/librenms/librenms/pull/14804)) - [AleksNovak](https://github.com/AleksNovak)
* Adding sample alert for systemd application ([#14711](https://github.com/librenms/librenms/pull/14711)) - [bnerickson](https://github.com/bnerickson)
* Polling poller debug ([#14691](https://github.com/librenms/librenms/pull/14691)) - [electrocret](https://github.com/electrocret)
* Add -I flag to Traceroute cmd ([#14667](https://github.com/librenms/librenms/pull/14667)) - [electrocret](https://github.com/electrocret)
* Alert map location fix ([#14380](https://github.com/librenms/librenms/pull/14380)) - [KayckMatias](https://github.com/KayckMatias)
* Populate the alert rule field with the builder json ([#14374](https://github.com/librenms/librenms/pull/14374)) - [murrant](https://github.com/murrant)
* Discord ability to attach graph images ([#14276](https://github.com/librenms/librenms/pull/14276)) - [murrant](https://github.com/murrant)
* Email Transport: embed graphs by default ([#14270](https://github.com/librenms/librenms/pull/14270)) - [murrant](https://github.com/murrant)
* Correct logic for recurring alert rules that span UTC days ([#14145](https://github.com/librenms/librenms/pull/14145)) - [gs-kamnas](https://github.com/gs-kamnas)
* Improvements to PagerDuty alert formatting ([#14143](https://github.com/librenms/librenms/pull/14143)) - [gs-kamnas](https://github.com/gs-kamnas)
* Example rules for diskspace on / ([#14082](https://github.com/librenms/librenms/pull/14082)) - [VVelox](https://github.com/VVelox)
* Add rich (=html) support for messages via Matrix ([#14054](https://github.com/librenms/librenms/pull/14054)) - [mwobst](https://github.com/mwobst)
* Add macro.past_20m macro ([#14023](https://github.com/librenms/librenms/pull/14023)) - [kruczek8989](https://github.com/kruczek8989)
* Allow the use of a custom URL for accessing the PagerDuty API and correct API schema violation ([#14010](https://github.com/librenms/librenms/pull/14010)) - [gs-kamnas](https://github.com/gs-kamnas)
* Setting MSteams card summary to alert title ([#13989](https://github.com/librenms/librenms/pull/13989)) - [DaftBrit](https://github.com/DaftBrit)
* More realistic alert test data ([#13969](https://github.com/librenms/librenms/pull/13969)) - [murrant](https://github.com/murrant)
* Use display name when sending alerts to Sensu ([#13967](https://github.com/librenms/librenms/pull/13967)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Correct type hint ([#13915](https://github.com/librenms/librenms/pull/13915)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Improve alert template saving ([#13910](https://github.com/librenms/librenms/pull/13910)) - [murrant](https://github.com/murrant)
* Added Basic authentication capability to Alertmanager Transport ([#13867](https://github.com/librenms/librenms/pull/13867)) - [geg347](https://github.com/geg347)
* Newer versions of Jira use HTTP code 201 fore created issues ([#13852](https://github.com/librenms/librenms/pull/13852)) - [MrXermon](https://github.com/MrXermon)
* Add extra dynamic values alerttransport alertmanager ([#13828](https://github.com/librenms/librenms/pull/13828)) - [geg347](https://github.com/geg347)
* Add generic PSU status failed alert rule template ([#13821](https://github.com/librenms/librenms/pull/13821)) - [geg347](https://github.com/geg347)

#### Graphs
* Add graph_stat_percentile_disable config item to disable percentile lines/value printing ([#14887](https://github.com/librenms/librenms/pull/14887)) - [VVelox](https://github.com/VVelox)
* Convert NTP freq to use generic_stats ([#14834](https://github.com/librenms/librenms/pull/14834)) - [VVelox](https://github.com/VVelox)
* Update fail2ban to have better stat graphs and and fix generic_stats graph.php ([#14818](https://github.com/librenms/librenms/pull/14818)) - [VVelox](https://github.com/VVelox)
* Update various device graphs to to have better stats ([#14815](https://github.com/librenms/librenms/pull/14815)) - [VVelox](https://github.com/VVelox)
* Update HV::Monitor support to use generic_stats.inc.php ([#14814](https://github.com/librenms/librenms/pull/14814)) - [VVelox](https://github.com/VVelox)
* Only show Eth errors when Etherlike is enabled ([#14784](https://github.com/librenms/librenms/pull/14784)) - [electrocret](https://github.com/electrocret)
* Fix graph output base64 ([#14701](https://github.com/librenms/librenms/pull/14701)) - [murrant](https://github.com/murrant)
* Fix some graphs not respecting device display name ([#14684](https://github.com/librenms/librenms/pull/14684)) - [murrant](https://github.com/murrant)
* Adding Average into graphs ([#14679](https://github.com/librenms/librenms/pull/14679)) - [bogdanrotariu](https://github.com/bogdanrotariu)
* Fix device poller modules graph ([#14640](https://github.com/librenms/librenms/pull/14640)) - [murrant](https://github.com/murrant)
* Bug - XDSL module - rrd_def and rrd file definition issue for Actual rate ([#14597](https://github.com/librenms/librenms/pull/14597)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix graph errors wrong content type ([#14574](https://github.com/librenms/librenms/pull/14574)) - [murrant](https://github.com/murrant)
* Improve graph embedded title handling ([#14544](https://github.com/librenms/librenms/pull/14544)) - [murrant](https://github.com/murrant)
* Graphing cleanup ([#14492](https://github.com/librenms/librenms/pull/14492)) - [murrant](https://github.com/murrant)
* Return GraphImage to include more metadata ([#14307](https://github.com/librenms/librenms/pull/14307)) - [murrant](https://github.com/murrant)
* Fix unauth application graphs ([#14216](https://github.com/librenms/librenms/pull/14216)) - [murrant](https://github.com/murrant)
* Allow specifying the background colour in graph images ([#14192](https://github.com/librenms/librenms/pull/14192)) - [washcroft](https://github.com/washcroft)
* Ping perf ([#14117](https://github.com/librenms/librenms/pull/14117)) - [00gh](https://github.com/00gh)
* [RRD] fix IPv6 folder name ([#13945](https://github.com/librenms/librenms/pull/13945)) - [Npeca75](https://github.com/Npeca75)

#### Snmp Traps
* Adds Cisco DHCP Server SNMP MIB and Trap Handlers. ([#14618](https://github.com/librenms/librenms/pull/14618)) - [josh-silvas](https://github.com/josh-silvas)
* Improve LinkUp and LinkDown trap handling incomplete traps ([#14385](https://github.com/librenms/librenms/pull/14385)) - [tuomari](https://github.com/tuomari)
* Add Cisco Err-Disable interface event trap handler ([#13855](https://github.com/librenms/librenms/pull/13855)) - [bonzo81](https://github.com/bonzo81)
* Add APC SmartAvrReducing trap handlers ([#13839](https://github.com/librenms/librenms/pull/13839)) - [bonzo81](https://github.com/bonzo81)
* Add APC upsOnBattery & powerRestored trap handler ([#13836](https://github.com/librenms/librenms/pull/13836)) - [bonzo81](https://github.com/bonzo81)
* Add OspfTxRetransmit Trap Handler ([#13824](https://github.com/librenms/librenms/pull/13824)) - [bonzo81](https://github.com/bonzo81)
* Cisco Mac address violation trap handler ([#13811](https://github.com/librenms/librenms/pull/13811)) - [bonzo81](https://github.com/bonzo81)

#### Applications
* Add a few more graphs for CAPEv2 ([#14813](https://github.com/librenms/librenms/pull/14813)) - [VVelox](https://github.com/VVelox)
* CAPEv2 support ([#14801](https://github.com/librenms/librenms/pull/14801)) - [VVelox](https://github.com/VVelox)
* Add more docker stats ([#14767](https://github.com/librenms/librenms/pull/14767)) - [hvanoch](https://github.com/hvanoch)
* Update Nvidia application - values in wrong charts ([#14736](https://github.com/librenms/librenms/pull/14736)) - [fcqpl](https://github.com/fcqpl)
* Removing max polling restriction for wireguard traffic RRD data ([#14710](https://github.com/librenms/librenms/pull/14710)) - [bnerickson](https://github.com/bnerickson)
* Alarm Flag on UPS-Nut Application ([#14635](https://github.com/librenms/librenms/pull/14635)) - [SourceDoctor](https://github.com/SourceDoctor)
* Adding wireguard app to the apps overview page ([#14629](https://github.com/librenms/librenms/pull/14629)) - [bnerickson](https://github.com/bnerickson)
* Adding wireguard application support ([#14625](https://github.com/librenms/librenms/pull/14625)) - [bnerickson](https://github.com/bnerickson)
* Adding systemd service status application ([#14540](https://github.com/librenms/librenms/pull/14540)) - [bnerickson](https://github.com/bnerickson)
* Memcached application: improve error visibility ([#14536](https://github.com/librenms/librenms/pull/14536)) - [murrant](https://github.com/murrant)
* Fix memcached polling bug ([#14501](https://github.com/librenms/librenms/pull/14501)) - [murrant](https://github.com/murrant)
* Add pwrstatd application ([#14365](https://github.com/librenms/librenms/pull/14365)) - [bnerickson](https://github.com/bnerickson)
* Add HV Monitor, a generic means for monitoring hypvervisors ([#14218](https://github.com/librenms/librenms/pull/14218)) - [VVelox](https://github.com/VVelox)
* Add possibility to monitor redis application through the unix-agent ([#14182](https://github.com/librenms/librenms/pull/14182)) - [earendilfr](https://github.com/earendilfr)
* Fix error between application module and unix-agent ([#14177](https://github.com/librenms/librenms/pull/14177)) - [earendilfr](https://github.com/earendilfr)
* Add possibility to monitor the php-fpm service with the unix agent ([#14173](https://github.com/librenms/librenms/pull/14173)) - [earendilfr](https://github.com/earendilfr)
* Base64 gzip compression support for json_app_get ([#14169](https://github.com/librenms/librenms/pull/14169)) - [VVelox](https://github.com/VVelox)
* [apps] Docker only show current containers ([#14152](https://github.com/librenms/librenms/pull/14152)) - [Npeca75](https://github.com/Npeca75)
* Fix app docker ([#14080](https://github.com/librenms/librenms/pull/14080)) - [prahal](https://github.com/prahal)
* Add support for Sagan ([#14070](https://github.com/librenms/librenms/pull/14070)) - [VVelox](https://github.com/VVelox)
* Add Opensearch\Elasticsearch monitoring ([#14053](https://github.com/librenms/librenms/pull/14053)) - [VVelox](https://github.com/VVelox)
* Add error-state to non-responsive mysql-servers ([#13993](https://github.com/librenms/librenms/pull/13993)) - [bennet-esyoil](https://github.com/bennet-esyoil)
* Remove alert keys from component for Suricata ([#13959](https://github.com/librenms/librenms/pull/13959)) - [VVelox](https://github.com/VVelox)
* Fix a few issues with variable names for Suricata ([#13956](https://github.com/librenms/librenms/pull/13956)) - [VVelox](https://github.com/VVelox)
* Scripts/json-app-tool.php JSON generation fix and add -S for SNMP extend name ([#13948](https://github.com/librenms/librenms/pull/13948)) - [VVelox](https://github.com/VVelox)
* Add Suricata monitoring ([#13942](https://github.com/librenms/librenms/pull/13942)) - [VVelox](https://github.com/VVelox)

#### Api
* Fix for RIPE NCC API Tools ([#14757](https://github.com/librenms/librenms/pull/14757)) - [LoveSkylark](https://github.com/LoveSkylark)
* Use Oxidized API client and add support for groups on config get ([#14750](https://github.com/librenms/librenms/pull/14750)) - [electrocret](https://github.com/electrocret)
* API list_devices update with sysName, location_id and type ([#14731](https://github.com/librenms/librenms/pull/14731)) - [bonzo81](https://github.com/bonzo81)
* Port search API search more than one fields ([#14646](https://github.com/librenms/librenms/pull/14646)) - [murrant](https://github.com/murrant)
* Added disable_notify and location_id ([#14619](https://github.com/librenms/librenms/pull/14619)) - [pertruccio](https://github.com/pertruccio)
* Add sortorder parameter to list_logs ([#14600](https://github.com/librenms/librenms/pull/14600)) - [talkstraightuk](https://github.com/talkstraightuk)
* API restore ability to update purpose and override_sysLocation ([#14596](https://github.com/librenms/librenms/pull/14596)) - [murrant](https://github.com/murrant)
* API graphs, variable whitelist ([#14552](https://github.com/librenms/librenms/pull/14552)) - [murrant](https://github.com/murrant)
* Graph API use new code path ([#14493](https://github.com/librenms/librenms/pull/14493)) - [murrant](https://github.com/murrant)
* Adding device's field in get_alert_rule and list-alert-rules API function (new) ([#14481](https://github.com/librenms/librenms/pull/14481)) - [geg347](https://github.com/geg347)
* Fix update_device hostname handling #14435 ([#14448](https://github.com/librenms/librenms/pull/14448)) - [rhinoau](https://github.com/rhinoau)
* Fix port search with slashes ([#14403](https://github.com/librenms/librenms/pull/14403)) - [murrant](https://github.com/murrant)
* Add Columns to search_ports API function ([#14348](https://github.com/librenms/librenms/pull/14348)) - [electrocret](https://github.com/electrocret)
* Allow delete location by id ([#14334](https://github.com/librenms/librenms/pull/14334)) - [bp0](https://github.com/bp0)
* API update_device, make location field work (as does location_id) ([#14325](https://github.com/librenms/librenms/pull/14325)) - [bp0](https://github.com/bp0)
* Standardize device and device group maintenance API ([#14153](https://github.com/librenms/librenms/pull/14153)) - [rhinoau](https://github.com/rhinoau)
* Fix maintenance APIs not associating device or group ([#14127](https://github.com/librenms/librenms/pull/14127)) - [murrant](https://github.com/murrant)
* Ensure 'add_device' API returns indexed-array (as per doco) ([#13887](https://github.com/librenms/librenms/pull/13887)) - [claude191](https://github.com/claude191)
* Adds API call to update port notes on devices. ([#13834](https://github.com/librenms/librenms/pull/13834)) - [josh-silvas](https://github.com/josh-silvas)

#### Discovery
* Prevent spurious MAC changes on multi-interface devices ([#14671](https://github.com/librenms/librenms/pull/14671)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* Fix discovery ignores custom ipmi port ([#14660](https://github.com/librenms/librenms/pull/14660)) - [VoipTelCH](https://github.com/VoipTelCH)
* Cisco NAC fix ([#14440](https://github.com/librenms/librenms/pull/14440)) - [murrant](https://github.com/murrant)
* Fix legacy os extends ([#14220](https://github.com/librenms/librenms/pull/14220)) - [murrant](https://github.com/murrant)
* Sensors - Allow changing RRD type in YAML and PHP sensor discovery ([#14208](https://github.com/librenms/librenms/pull/14208)) - [PipoCanaja](https://github.com/PipoCanaja)
* Sensors, convert hex to strings ([#14121](https://github.com/librenms/librenms/pull/14121)) - [murrant](https://github.com/murrant)
* Fix printer count sensors when extra garbage is returned ([#14014](https://github.com/librenms/librenms/pull/14014)) - [murrant](https://github.com/murrant)
* Fix polling and discovery of FortiGate cluster sensors ([#13980](https://github.com/librenms/librenms/pull/13980)) - [mkuurstra](https://github.com/mkuurstra)

#### Polling
* Fix ArubaInstance channel decode issue ([#14732](https://github.com/librenms/librenms/pull/14732)) - [murrant](https://github.com/murrant)
* Don't poll sysDescr, sysObjectID, and sysName so frequently ([#14562](https://github.com/librenms/librenms/pull/14562)) - [murrant](https://github.com/murrant)
* Add connection exception handling to all redis calls ([#14467](https://github.com/librenms/librenms/pull/14467)) - [Frazew](https://github.com/Frazew)
* Fix bgp-peers bgpPeerIface bug and update test data ([#14420](https://github.com/librenms/librenms/pull/14420)) - [murrant](https://github.com/murrant)
* Fix ping.php skipped results ([#14368](https://github.com/librenms/librenms/pull/14368)) - [sembeek](https://github.com/sembeek)
* Fix for number in sensor string ([#14185](https://github.com/librenms/librenms/pull/14185)) - [Schouwenburg](https://github.com/Schouwenburg)
* Increase traceroute timeout ([#14084](https://github.com/librenms/librenms/pull/14084)) - [murrant](https://github.com/murrant)
* Fix STP polling bug ([#13924](https://github.com/librenms/librenms/pull/13924)) - [murrant](https://github.com/murrant)
* Print full error message in poller/discovery output ([#13903](https://github.com/librenms/librenms/pull/13903)) - [murrant](https://github.com/murrant)

#### Rancid
* Add MRV OptiDriver support in gen_rancid ([#13900](https://github.com/librenms/librenms/pull/13900)) - [cliffalbert](https://github.com/cliffalbert)
* Add support for VyOS on Rancid conf ([#13874](https://github.com/librenms/librenms/pull/13874)) - [ssasso](https://github.com/ssasso)

#### Oxidized
* Show display name in Oxidized config search ([#14800](https://github.com/librenms/librenms/pull/14800)) - [electrocret](https://github.com/electrocret)
* Adding Fortigate switches to Oxidized model mapping config ([#14782](https://github.com/librenms/librenms/pull/14782)) - [LoveSkylark](https://github.com/LoveSkylark)
* Fix oxidized web requests unclosed connections or responding fast enough ([#14370](https://github.com/librenms/librenms/pull/14370)) - [fbouynot](https://github.com/fbouynot)
* Oxidized "allow purpose and notes" ([#14352](https://github.com/librenms/librenms/pull/14352)) - [LoveSkylark](https://github.com/LoveSkylark)
* Syslog-notify-oxidized.php now always notifies Oxidized ([#14011](https://github.com/librenms/librenms/pull/14011)) - [murrant](https://github.com/murrant)
* Fix Oxidized syslog change notifier when the change was made via snmp. ([#14005](https://github.com/librenms/librenms/pull/14005)) - [kruczek8989](https://github.com/kruczek8989)
* Oxidized API to return groups based on device purpose or notes ([#13976](https://github.com/librenms/librenms/pull/13976)) - [sajiby3k](https://github.com/sajiby3k)

#### Authentication
* Update Radius auth to accept permissions attributes ([#14531](https://github.com/librenms/librenms/pull/14531)) - [kimhaak](https://github.com/kimhaak)
* Rework socialite integration ([#14367](https://github.com/librenms/librenms/pull/14367)) - [Jellyfrog](https://github.com/Jellyfrog)
* AD Auth PHP 8.1 fixes ([#14215](https://github.com/librenms/librenms/pull/14215)) - [murrant](https://github.com/murrant)
* Add option STARTTLS for authentication via AD ([#14051](https://github.com/librenms/librenms/pull/14051)) - [dagbdagb](https://github.com/dagbdagb)
* Auth_ldap_skip_group_check when ldap_compare is not supported ([#13926](https://github.com/librenms/librenms/pull/13926)) - [micko](https://github.com/micko)
* Implement support for usernames coming from reverse proxies ([#13894](https://github.com/librenms/librenms/pull/13894)) - [HolgerHees](https://github.com/HolgerHees)
* Add LDAP bind and userlist filter support to ldap-authorization ([#13788](https://github.com/librenms/librenms/pull/13788)) - [pfromme25](https://github.com/pfromme25)

#### Bug
* SnmpQuery, respect snmp.max_oid ([#14894](https://github.com/librenms/librenms/pull/14894)) - [murrant](https://github.com/murrant)
* Add poller_groups (served) to the poller_cluster table ([#14886](https://github.com/librenms/librenms/pull/14886)) - [peejaychilds](https://github.com/peejaychilds)
* Actually use the stats graph for ntp-server_freq now, which as missed in #14834 ([#14884](https://github.com/librenms/librenms/pull/14884)) - [VVelox](https://github.com/VVelox)
* Add type checking to generic_stats.inc.php for $vars['to'] and $vars['from'] ([#14871](https://github.com/librenms/librenms/pull/14871)) - [VVelox](https://github.com/VVelox)
* Fix graphs for a search query ([#14864](https://github.com/librenms/librenms/pull/14864)) - [westerterp](https://github.com/westerterp)
* Fix interface parse unsets ([#14860](https://github.com/librenms/librenms/pull/14860)) - [electrocret](https://github.com/electrocret)
* Fix dbm calculation to return -60 instead of 0 ([#14858](https://github.com/librenms/librenms/pull/14858)) - [electrocret](https://github.com/electrocret)
* Revert "Fix entity-state polling/discovery" ([#14811](https://github.com/librenms/librenms/pull/14811)) - [murrant](https://github.com/murrant)
* Fix entity-state polling/discovery ([#14793](https://github.com/librenms/librenms/pull/14793)) - [fdomain](https://github.com/fdomain)
* Update PingCheck.php to remove duplicate "Device status changed to ... from icmp check." event ([#14785](https://github.com/librenms/librenms/pull/14785)) - [MANT5149](https://github.com/MANT5149)
* Fix calculated dbm ([#14771](https://github.com/librenms/librenms/pull/14771)) - [electrocret](https://github.com/electrocret)
* Handle Division by 0 error for SvcFdbTableSize ([#14672](https://github.com/librenms/librenms/pull/14672)) - [mabra94](https://github.com/mabra94)
* Fix sqlite test ([#14642](https://github.com/librenms/librenms/pull/14642)) - [murrant](https://github.com/murrant)
* Remove extends and hardware detection support ([#14626](https://github.com/librenms/librenms/pull/14626)) - [murrant](https://github.com/murrant)
* Set 0 as integer in loading of graylog. ([#14621](https://github.com/librenms/librenms/pull/14621)) - [kimhaak](https://github.com/kimhaak)
* Fix GeocodingHelper type-hinting ([#14604](https://github.com/librenms/librenms/pull/14604)) - [Jellyfrog](https://github.com/Jellyfrog)
* Bug in Ciscowlc AP graphs definition ([#14585](https://github.com/librenms/librenms/pull/14585)) - [PipoCanaja](https://github.com/PipoCanaja)
* SnmpQuery fix mib directory order ([#14580](https://github.com/librenms/librenms/pull/14580)) - [murrant](https://github.com/murrant)
* SnmpQuery Handle empty oids in get more gracefully ([#14577](https://github.com/librenms/librenms/pull/14577)) - [murrant](https://github.com/murrant)
* Fix PTOPO mib in module discovery-protocols ([#14564](https://github.com/librenms/librenms/pull/14564)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix Type error ([#14555](https://github.com/librenms/librenms/pull/14555)) - [fbouynot](https://github.com/fbouynot)
* Correct variable use in billing ([#14533](https://github.com/librenms/librenms/pull/14533)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix sensor limit linked port rules in collection ([#14520](https://github.com/librenms/librenms/pull/14520)) - [electrocret](https://github.com/electrocret)
* EES Rectifier various fixes from MIB + added tests ([#14519](https://github.com/librenms/librenms/pull/14519)) - [opalivan](https://github.com/opalivan)
* Fix fetch ifEntry logic ([#14483](https://github.com/librenms/librenms/pull/14483)) - [Jellyfrog](https://github.com/Jellyfrog)
* Add a few breaks to avoid connection flooding for the irc-bot ([#14479](https://github.com/librenms/librenms/pull/14479)) - [Olen](https://github.com/Olen)
* Snmpwalk functions: dont include invalid data ([#14438](https://github.com/librenms/librenms/pull/14438)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix VRP duplicate BGP Peers ([#14431](https://github.com/librenms/librenms/pull/14431)) - [PipoCanaja](https://github.com/PipoCanaja)
* Version and git helper improvements ([#14412](https://github.com/librenms/librenms/pull/14412)) - [murrant](https://github.com/murrant)
* Cache version data ([#14404](https://github.com/librenms/librenms/pull/14404)) - [murrant](https://github.com/murrant)
* Fix rpi codec state sensor ([#14400](https://github.com/librenms/librenms/pull/14400)) - [murrant](https://github.com/murrant)
* Fix libvirt count() uncountable error ([#14398](https://github.com/librenms/librenms/pull/14398)) - [murrant](https://github.com/murrant)
* Fix Firebrick local ASN ([#14397](https://github.com/librenms/librenms/pull/14397)) - [murrant](https://github.com/murrant)
* Fix ups nut PHP 8 issue ([#14392](https://github.com/librenms/librenms/pull/14392)) - [murrant](https://github.com/murrant)
* Fix cipsec-tunnels ftd bad data causes error ([#14366](https://github.com/librenms/librenms/pull/14366)) - [murrant](https://github.com/murrant)
* Handle null in unix-agent ([#14358](https://github.com/librenms/librenms/pull/14358)) - [murrant](https://github.com/murrant)
* Fix the case of 'Ungrouped' in smokeping integration ([#14351](https://github.com/librenms/librenms/pull/14351)) - [fbouynot](https://github.com/fbouynot)
* Fix for smokeping integration with ping-only devices ([#14341](https://github.com/librenms/librenms/pull/14341)) - [fbouynot](https://github.com/fbouynot)
* Match displayname source for graylog ([#14339](https://github.com/librenms/librenms/pull/14339)) - [fbouynot](https://github.com/fbouynot)
* Check dot1dBasePortIfIndex exists before using it ([#14337](https://github.com/librenms/librenms/pull/14337)) - [Jellyfrog](https://github.com/Jellyfrog)
* Prevent errors when hrStorageTable doesn't exist ([#14327](https://github.com/librenms/librenms/pull/14327)) - [Jellyfrog](https://github.com/Jellyfrog)
* Revert "ZTE ZXA10 Update (Added dBm graphs)" ([#14320](https://github.com/librenms/librenms/pull/14320)) - [murrant](https://github.com/murrant)
* Billing module fix/cleanup ([#14309](https://github.com/librenms/librenms/pull/14309)) - [electrocret](https://github.com/electrocret)
* SnmpResponse filterBadLines fix ([#14306](https://github.com/librenms/librenms/pull/14306)) - [murrant](https://github.com/murrant)
* Fix ARP Table on Device overview ([#14304](https://github.com/librenms/librenms/pull/14304)) - [Npeca75](https://github.com/Npeca75)
* Disable error reporting when dependencies are outdated ([#14291](https://github.com/librenms/librenms/pull/14291)) - [murrant](https://github.com/murrant)
* Don't send zeros to Graphite for missing metrics ([#14262](https://github.com/librenms/librenms/pull/14262)) - [ktims](https://github.com/ktims)
* Fix removing all port groups ([#14253](https://github.com/librenms/librenms/pull/14253)) - [murrant](https://github.com/murrant)
* Move cronjob time for daily.sh ([#14245](https://github.com/librenms/librenms/pull/14245)) - [Jellyfrog](https://github.com/Jellyfrog)
* Firebrick bgp polling was broken ([#14237](https://github.com/librenms/librenms/pull/14237)) - [murrant](https://github.com/murrant)
* Quick fix for cipsec-tunnels Cisco implementation ([#14232](https://github.com/librenms/librenms/pull/14232)) - [PipoCanaja](https://github.com/PipoCanaja)
* Fix redeclare of function breaking tests in OS eltex-mes23xx ([#14227](https://github.com/librenms/librenms/pull/14227)) - [PipoCanaja](https://github.com/PipoCanaja)
* Autodiscovery fix ([#14213](https://github.com/librenms/librenms/pull/14213)) - [Npeca75](https://github.com/Npeca75)
* Fix alert log clearing SQL query ([#14200](https://github.com/librenms/librenms/pull/14200)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix error when ldap_search returns false ([#14199](https://github.com/librenms/librenms/pull/14199)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix unnecessary Updates of DB when values are equal ([#14179](https://github.com/librenms/librenms/pull/14179)) - [opalivan](https://github.com/opalivan)
* Fix APP_KEY generation when using fpm ([#14168](https://github.com/librenms/librenms/pull/14168)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix validation error ([#14163](https://github.com/librenms/librenms/pull/14163)) - [TheMysteriousX](https://github.com/TheMysteriousX)
* IPv6 Debug typo ([#14162](https://github.com/librenms/librenms/pull/14162)) - [Npeca75](https://github.com/Npeca75)
* Replace git show --no-patch option with --quiet ([#14160](https://github.com/librenms/librenms/pull/14160)) - [ciscoqid](https://github.com/ciscoqid)
* Fix 500 error in validation when UI containers and poller containers have differing node_ids ([#14146](https://github.com/librenms/librenms/pull/14146)) - [gs-kamnas](https://github.com/gs-kamnas)
* Use --no-patch to support old git clients ([#14137](https://github.com/librenms/librenms/pull/14137)) - [Jellyfrog](https://github.com/Jellyfrog)
* Prevent duplicate plugin table entries ([#14120](https://github.com/librenms/librenms/pull/14120)) - [murrant](https://github.com/murrant)
* Fix auth_test.php debug ([#14118](https://github.com/librenms/librenms/pull/14118)) - [murrant](https://github.com/murrant)
* Fix config seeder will never run ([#14113](https://github.com/librenms/librenms/pull/14113)) - [murrant](https://github.com/murrant)
* Reset the opcache after install ([#14098](https://github.com/librenms/librenms/pull/14098)) - [murrant](https://github.com/murrant)
* Update config cache on install finalize step ([#14097](https://github.com/librenms/librenms/pull/14097)) - [murrant](https://github.com/murrant)
* Fix more webserver validation issues ([#14096](https://github.com/librenms/librenms/pull/14096)) - [murrant](https://github.com/murrant)
* Revert "Add apc battery operation time, including display in WebUI" ([#14068](https://github.com/librenms/librenms/pull/14068)) - [PipoCanaja](https://github.com/PipoCanaja)
* Use --no-patch instead ([#14047](https://github.com/librenms/librenms/pull/14047)) - [Jellyfrog](https://github.com/Jellyfrog)
* Git version validation improvement ([#14042](https://github.com/librenms/librenms/pull/14042)) - [murrant](https://github.com/murrant)
* Server name validation, handle ports better ([#14041](https://github.com/librenms/librenms/pull/14041)) - [murrant](https://github.com/murrant)
* Fix some broken migrations ([#14040](https://github.com/librenms/librenms/pull/14040)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix rrd version validation check ([#14036](https://github.com/librenms/librenms/pull/14036)) - [murrant](https://github.com/murrant)
* Fix DB timezone validation ([#14035](https://github.com/librenms/librenms/pull/14035)) - [murrant](https://github.com/murrant)
* Regression fix from #13596 ([#14034](https://github.com/librenms/librenms/pull/14034)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix an issue when getting the local version from git ([#14020](https://github.com/librenms/librenms/pull/14020)) - [murrant](https://github.com/murrant)
* Fix migrations failing one time after dashboard cleanup ([#14002](https://github.com/librenms/librenms/pull/14002)) - [murrant](https://github.com/murrant)
* Fix Netscaler VServer database updates during polling ([#13995](https://github.com/librenms/librenms/pull/13995)) - [Bobdave](https://github.com/Bobdave)
* Fix 500 error in validations when capabilities are not supported or set ([#13991](https://github.com/librenms/librenms/pull/13991)) - [gs-kamnas](https://github.com/gs-kamnas)
* Inconsistency in ldap starttls config parameter ([#13987](https://github.com/librenms/librenms/pull/13987)) - [nox-x](https://github.com/nox-x)
* Fix version check error ([#13981](https://github.com/librenms/librenms/pull/13981)) - [murrant](https://github.com/murrant)
* Use full sudo path ([#13975](https://github.com/librenms/librenms/pull/13975)) - [skandragon](https://github.com/skandragon)
* Fix IPv6 in service check host ([#13939](https://github.com/librenms/librenms/pull/13939)) - [steffann](https://github.com/steffann)
* Validate fixes ([#13935](https://github.com/librenms/librenms/pull/13935)) - [murrant](https://github.com/murrant)
* Lnms device:add handle snmp.community bad format ([#13914](https://github.com/librenms/librenms/pull/13914)) - [murrant](https://github.com/murrant)
* Fix install icons ([#13904](https://github.com/librenms/librenms/pull/13904)) - [murrant](https://github.com/murrant)
* Handle bad uptime input ([#13899](https://github.com/librenms/librenms/pull/13899)) - [murrant](https://github.com/murrant)
* Fix custom error messages ([#13898](https://github.com/librenms/librenms/pull/13898)) - [murrant](https://github.com/murrant)
* Migrate addhost.php to lnms device:add ([#13870](https://github.com/librenms/librenms/pull/13870)) - [murrant](https://github.com/murrant)
* Rewrite agent packages parsing code ([#13840](https://github.com/librenms/librenms/pull/13840)) - [murrant](https://github.com/murrant)
* Fix snmpv3 context when empty SnmpQuery ([#13832](https://github.com/librenms/librenms/pull/13832)) - [murrant](https://github.com/murrant)
* Regression fix from b6a8b602b891d9eb8633f62632c17bdc559cd620 ([#13819](https://github.com/librenms/librenms/pull/13819)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix PHPStan Deprecated test ([#13794](https://github.com/librenms/librenms/pull/13794)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Refactor
* Unify time interval formatting ([#14733](https://github.com/librenms/librenms/pull/14733)) - [murrant](https://github.com/murrant)
* Remove Log::event ([#14526](https://github.com/librenms/librenms/pull/14526)) - [Jellyfrog](https://github.com/Jellyfrog)
* Cleanup and optimize the availability widget ([#14329](https://github.com/librenms/librenms/pull/14329)) - [murrant](https://github.com/murrant)
* Fix a few Db* to Eloquent requests ([#14278](https://github.com/librenms/librenms/pull/14278)) - [PipoCanaja](https://github.com/PipoCanaja)
* Use "database version" instead of "mysql version" ([#14158](https://github.com/librenms/librenms/pull/14158)) - [Jellyfrog](https://github.com/Jellyfrog)
* Improve the efficiency of some queries ([#13974](https://github.com/librenms/librenms/pull/13974)) - [murrant](https://github.com/murrant)
* Move Config loading to a service provider ([#13927](https://github.com/librenms/librenms/pull/13927)) - [murrant](https://github.com/murrant)
* Port Validation Page to Laravel ([#13921](https://github.com/librenms/librenms/pull/13921)) - [murrant](https://github.com/murrant)
* Remove addHost from ModuleTestHelper ([#13847](https://github.com/librenms/librenms/pull/13847)) - [murrant](https://github.com/murrant)
* New device:add code ([#13842](https://github.com/librenms/librenms/pull/13842)) - [murrant](https://github.com/murrant)

#### Cleanup
* Store empty user_func as null ([#14900](https://github.com/librenms/librenms/pull/14900)) - [Jellyfrog](https://github.com/Jellyfrog)
* Consolidate and improve snmptranslate usage ([#14567](https://github.com/librenms/librenms/pull/14567)) - [murrant](https://github.com/murrant)
* Remove graph_min ([#14561](https://github.com/librenms/librenms/pull/14561)) - [murrant](https://github.com/murrant)
* Remove $_GET from graphs ([#14554](https://github.com/librenms/librenms/pull/14554)) - [murrant](https://github.com/murrant)
* Undefined array key fixes ([#14532](https://github.com/librenms/librenms/pull/14532)) - [Jellyfrog](https://github.com/Jellyfrog)
* Use Collection instead of collect() ([#14527](https://github.com/librenms/librenms/pull/14527)) - [Jellyfrog](https://github.com/Jellyfrog)
* Convert string references to `::class` ([#14508](https://github.com/librenms/librenms/pull/14508)) - [Jellyfrog](https://github.com/Jellyfrog)
* Miscellaneous cleanup - part 5 ([#14502](https://github.com/librenms/librenms/pull/14502)) - [Jellyfrog](https://github.com/Jellyfrog)
* Type API methods and properties ([#14476](https://github.com/librenms/librenms/pull/14476)) - [fbouynot](https://github.com/fbouynot)
* Miscellaneous cleanup - part 4 ([#14452](https://github.com/librenms/librenms/pull/14452)) - [Jellyfrog](https://github.com/Jellyfrog)
* Miscellaneous cleanup - part 3 ([#14450](https://github.com/librenms/librenms/pull/14450)) - [Jellyfrog](https://github.com/Jellyfrog)
* Miscellaneous cleanup, mostly undefined variables - part2 ([#14445](https://github.com/librenms/librenms/pull/14445)) - [Jellyfrog](https://github.com/Jellyfrog)
* Remove tabs from yaml ([#14437](https://github.com/librenms/librenms/pull/14437)) - [Jellyfrog](https://github.com/Jellyfrog)
* Miscellaneous fixes, mostly undefined variables ([#14432](https://github.com/librenms/librenms/pull/14432)) - [Jellyfrog](https://github.com/Jellyfrog)
* Trim whitespaces from device data ([#14429](https://github.com/librenms/librenms/pull/14429)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix bgp_peer array_merge error ([#14416](https://github.com/librenms/librenms/pull/14416)) - [PipoCanaja](https://github.com/PipoCanaja)
* Defer loading cli option defaults ([#14363](https://github.com/librenms/librenms/pull/14363)) - [Jellyfrog](https://github.com/Jellyfrog)
* Remove call to Config from artisan ([#14362](https://github.com/librenms/librenms/pull/14362)) - [Jellyfrog](https://github.com/Jellyfrog)
* Mibs - Cleanup names ([#14323](https://github.com/librenms/librenms/pull/14323)) - [PipoCanaja](https://github.com/PipoCanaja)
* Enable more checks ([#14318](https://github.com/librenms/librenms/pull/14318)) - [Jellyfrog](https://github.com/Jellyfrog)
* Do not include _token in legacy vars ([#14313](https://github.com/librenms/librenms/pull/14313)) - [murrant](https://github.com/murrant)
* Don't include null os when loading defs ([#14312](https://github.com/librenms/librenms/pull/14312)) - [murrant](https://github.com/murrant)
* 2fa not all routes have names ([#14311](https://github.com/librenms/librenms/pull/14311)) - [murrant](https://github.com/murrant)
* Cache astext for 1 day ([#14303](https://github.com/librenms/librenms/pull/14303)) - [murrant](https://github.com/murrant)
* Linux distro images require feature field ([#14301](https://github.com/librenms/librenms/pull/14301)) - [murrant](https://github.com/murrant)
* Silence return type mismatch ([#14298](https://github.com/librenms/librenms/pull/14298)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix more percent calculations ([#14294](https://github.com/librenms/librenms/pull/14294)) - [murrant](https://github.com/murrant)
* Fix rounding null in mempools module ([#14290](https://github.com/librenms/librenms/pull/14290)) - [murrant](https://github.com/murrant)
* Check if polling module exists ([#14289](https://github.com/librenms/librenms/pull/14289)) - [murrant](https://github.com/murrant)
* Fix undefined variable ([#14287](https://github.com/librenms/librenms/pull/14287)) - [murrant](https://github.com/murrant)
* Handle connection timed out errors in unix agent ([#14286](https://github.com/librenms/librenms/pull/14286)) - [murrant](https://github.com/murrant)
* Remove unused function ([#14283](https://github.com/librenms/librenms/pull/14283)) - [murrant](https://github.com/murrant)
* Remove reference to unused variable ([#14280](https://github.com/librenms/librenms/pull/14280)) - [murrant](https://github.com/murrant)
* Cleanup some RunAlerts issues ([#14274](https://github.com/librenms/librenms/pull/14274)) - [murrant](https://github.com/murrant)
* Fix a bunch of "Since fakerphp/faker 1.14: Accessing property.." ([#14267](https://github.com/librenms/librenms/pull/14267)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix more error exceptions ([#14266](https://github.com/librenms/librenms/pull/14266)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix hrStorageType being undefined ([#14260](https://github.com/librenms/librenms/pull/14260)) - [Jellyfrog](https://github.com/Jellyfrog)
* Misc errors cleanup ([#14257](https://github.com/librenms/librenms/pull/14257)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix ipv6 hexdec error ([#14254](https://github.com/librenms/librenms/pull/14254)) - [murrant](https://github.com/murrant)
* Use empty string instead of null for routes ([#14247](https://github.com/librenms/librenms/pull/14247)) - [Jellyfrog](https://github.com/Jellyfrog)
* Sort device types alphabetically ([#14244](https://github.com/librenms/librenms/pull/14244)) - [VirTechSystems](https://github.com/VirTechSystems)
* Misc webui code cleanups ([#14242](https://github.com/librenms/librenms/pull/14242)) - [murrant](https://github.com/murrant)
* Fix some ErrorExceptions ([#14241](https://github.com/librenms/librenms/pull/14241)) - [Jellyfrog](https://github.com/Jellyfrog)
* Fix os_group unset errors ([#14238](https://github.com/librenms/librenms/pull/14238)) - [murrant](https://github.com/murrant)
* Juniper bgp-peers cleanup ([#14236](https://github.com/librenms/librenms/pull/14236)) - [murrant](https://github.com/murrant)
* Percentage calculation helper ([#14235](https://github.com/librenms/librenms/pull/14235)) - [murrant](https://github.com/murrant)
* Memcached app undefined vars ([#14225](https://github.com/librenms/librenms/pull/14225)) - [Npeca75](https://github.com/Npeca75)
* Fix Undefined variable/key warnings ([#14134](https://github.com/librenms/librenms/pull/14134)) - [murrant](https://github.com/murrant)
* Remove mib poller module remnants ([#14077](https://github.com/librenms/librenms/pull/14077)) - [murrant](https://github.com/murrant)
* Remove traceroute6, it is unused ([#14019](https://github.com/librenms/librenms/pull/14019)) - [murrant](https://github.com/murrant)
* Remove DefaultWidgetSeeder ([#14006](https://github.com/librenms/librenms/pull/14006)) - [murrant](https://github.com/murrant)
* Better device:add error output ([#13913](https://github.com/librenms/librenms/pull/13913)) - [murrant](https://github.com/murrant)
* Remove non-working Dell specific alert rules from the collection ([#13706](https://github.com/librenms/librenms/pull/13706)) - [Fehler12](https://github.com/Fehler12)

#### Documentation
* Fix typo in lnms device:add help ([#14937](https://github.com/librenms/librenms/pull/14937)) - [arjenz](https://github.com/arjenz)
* Add Azure example configuration for SAML authentication in documentation ([#14870](https://github.com/librenms/librenms/pull/14870)) - [fbouynot](https://github.com/fbouynot)
* Fix Okta image in docs ([#14848](https://github.com/librenms/librenms/pull/14848)) - [westerterp](https://github.com/westerterp)
* Change socialite settings URI ([#14845](https://github.com/librenms/librenms/pull/14845)) - [fbouynot](https://github.com/fbouynot)
* Fix possible confusion around php-fpm settings ([#14844](https://github.com/librenms/librenms/pull/14844)) - [hanserasmus](https://github.com/hanserasmus)
* Use docker compose v2 ([#14841](https://github.com/librenms/librenms/pull/14841)) - [MarlinMr](https://github.com/MarlinMr)
* Fix typo in Oauth doc ([#14840](https://github.com/librenms/librenms/pull/14840)) - [fbouynot](https://github.com/fbouynot)
* Add Zenduty Integration info to Transports.md docs ([#14826](https://github.com/librenms/librenms/pull/14826)) - [zenbeam](https://github.com/zenbeam)
* Update config docs - dump current config ([#14820](https://github.com/librenms/librenms/pull/14820)) - [hanserasmus](https://github.com/hanserasmus)
* Add SELinux instructions for nginx monitoring ([#14812](https://github.com/librenms/librenms/pull/14812)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux instructions for systemd monitoring ([#14809](https://github.com/librenms/librenms/pull/14809)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux instructions for systemd monitoring ([#14806](https://github.com/librenms/librenms/pull/14806)) - [fbouynot](https://github.com/fbouynot)
* Debian 11 Sury DPA provides PHP 8.2 ([#14798](https://github.com/librenms/librenms/pull/14798)) - [tim427](https://github.com/tim427)
* Update Syslog.md ([#14794](https://github.com/librenms/librenms/pull/14794)) - [systeembeheerder](https://github.com/systeembeheerder)
* Update Authentication.md ([#14788](https://github.com/librenms/librenms/pull/14788)) - [trs80](https://github.com/trs80)
* Fix Doc Link for Canopsis transport ([#14778](https://github.com/librenms/librenms/pull/14778)) - [support-capensis](https://github.com/support-capensis)
* Update ElasticSearch Index pattern for php 8.1 changes ([#14775](https://github.com/librenms/librenms/pull/14775)) - [zeroservices](https://github.com/zeroservices)
* Install updates for Rocky8 ([#14722](https://github.com/librenms/librenms/pull/14722)) - [angeletdemon](https://github.com/angeletdemon)
* Updating certificate script documentation ([#14721](https://github.com/librenms/librenms/pull/14721)) - [bnerickson](https://github.com/bnerickson)
* Update Docker.md with proper path to unzipped files ([#14717](https://github.com/librenms/librenms/pull/14717)) - [alchemyx](https://github.com/alchemyx)
* Fix typo: purge-port.php file name ([#14712](https://github.com/librenms/librenms/pull/14712)) - [santiag0z](https://github.com/santiag0z)
* Alert template example uses incorrect variable ([#14683](https://github.com/librenms/librenms/pull/14683)) - [electrocret](https://github.com/electrocret)
* Correct squid snmpd.conf proxy host syntax ([#14678](https://github.com/librenms/librenms/pull/14678)) - [hugalafutro](https://github.com/hugalafutro)
* Fix Traceroute debug alert template snippet ([#14668](https://github.com/librenms/librenms/pull/14668)) - [electrocret](https://github.com/electrocret)
* Update Dispatcher docs for Debian and for non /var/www/librenms installation ([#14663](https://github.com/librenms/librenms/pull/14663)) - [koocotte](https://github.com/koocotte)
* Fix Location mapping docs ([#14644](https://github.com/librenms/librenms/pull/14644)) - [electrocret](https://github.com/electrocret)
* Update config name for the default device display ([#14641](https://github.com/librenms/librenms/pull/14641)) - [cfitzw](https://github.com/cfitzw)
* Update Dispatcher-Service.md ([#14632](https://github.com/librenms/librenms/pull/14632)) - [systeembeheerder](https://github.com/systeembeheerder)
* Updating postgres application documentation ([#14627](https://github.com/librenms/librenms/pull/14627)) - [bnerickson](https://github.com/bnerickson)
* Documentation for Observium Migration ([#14601](https://github.com/librenms/librenms/pull/14601)) - [LoveSkylark](https://github.com/LoveSkylark)
* Add snmp_flags and tips on string oids to the docs ([#14579](https://github.com/librenms/librenms/pull/14579)) - [murrant](https://github.com/murrant)
* Clarify Dispatcher-Service.md for systemd ([#14575](https://github.com/librenms/librenms/pull/14575)) - [fuzzbawl](https://github.com/fuzzbawl)
* Update license section of readme ([#14571](https://github.com/librenms/librenms/pull/14571)) - [otkd](https://github.com/otkd)
* Remove outdated rules videos ([#14505](https://github.com/librenms/librenms/pull/14505)) - [kiwibrew](https://github.com/kiwibrew)
* Docker quick install ([#14475](https://github.com/librenms/librenms/pull/14475)) - [murrant](https://github.com/murrant)
* Updating details of my LibreNMS install ([#14458](https://github.com/librenms/librenms/pull/14458)) - [SirMaple](https://github.com/SirMaple)
* Fix php7.2 occurence in Performance.md documentation ([#14394](https://github.com/librenms/librenms/pull/14394)) - [fbouynot](https://github.com/fbouynot)
* Fix documentation for php8.1 and bad package name ([#14393](https://github.com/librenms/librenms/pull/14393)) - [fbouynot](https://github.com/fbouynot)
* Move list_locations from devices to locations ([#14328](https://github.com/librenms/librenms/pull/14328)) - [bp0](https://github.com/bp0)
* Cisco-sla module was renamed to slas ([#14288](https://github.com/librenms/librenms/pull/14288)) - [murrant](https://github.com/murrant)
* Update docs around APP_URL ([#14282](https://github.com/librenms/librenms/pull/14282)) - [murrant](https://github.com/murrant)
* Update to mkdocs-material 8.3.9 ([#14189](https://github.com/librenms/librenms/pull/14189)) - [Jellyfrog](https://github.com/Jellyfrog)
* SNMP extend / fix mdadm documentation ([#14186](https://github.com/librenms/librenms/pull/14186)) - [Npeca75](https://github.com/Npeca75)
* Update index.md ([#14178](https://github.com/librenms/librenms/pull/14178)) - [Jarod2801](https://github.com/Jarod2801)
* Add instructions for PHP 8.1 and Ubuntu 22.04 ([#14166](https://github.com/librenms/librenms/pull/14166)) - [Jellyfrog](https://github.com/Jellyfrog)
* Update php installation instruction for CentOS 8 to reflect the minim… ([#14159](https://github.com/librenms/librenms/pull/14159)) - [fbouynot](https://github.com/fbouynot)
* Fix typo in Smokeping SELinux documentation ([#14155](https://github.com/librenms/librenms/pull/14155)) - [fbouynot](https://github.com/fbouynot)
* Add device_default_display info ([#14151](https://github.com/librenms/librenms/pull/14151)) - [murrant](https://github.com/murrant)
* Change SELinux context for logs ([#14128](https://github.com/librenms/librenms/pull/14128)) - [fbouynot](https://github.com/fbouynot)
* Small documentation typos ([#14101](https://github.com/librenms/librenms/pull/14101)) - [wrongecho](https://github.com/wrongecho)
* Documentation typos ([#14099](https://github.com/librenms/librenms/pull/14099)) - [wrongecho](https://github.com/wrongecho)
* Add SELinux configuration for SNMPd on Centos8 in the documentation ([#14095](https://github.com/librenms/librenms/pull/14095)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux configuration for LDAP/AD authentication on Centos8 in the documentation ([#14094](https://github.com/librenms/librenms/pull/14094)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux configuration for Smokeping on Centos8 in the documentation ([#14093](https://github.com/librenms/librenms/pull/14093)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux configuration for RRDCached on Centos8 in the documentation ([#14092](https://github.com/librenms/librenms/pull/14092)) - [fbouynot](https://github.com/fbouynot)
* Corrected API devicegroup curl creation examples ([#14081](https://github.com/librenms/librenms/pull/14081)) - [rhinoau](https://github.com/rhinoau)
* Minor grammar fixes in doc ([#14078](https://github.com/librenms/librenms/pull/14078)) - [paulgear](https://github.com/paulgear)
* Add documentation for Chrony application monitoring ([#14066](https://github.com/librenms/librenms/pull/14066)) - [ottorei](https://github.com/ottorei)
* Okta saml ([#14038](https://github.com/librenms/librenms/pull/14038)) - [bile0026](https://github.com/bile0026)
* HPE Comware snmp config example ([#13997](https://github.com/librenms/librenms/pull/13997)) - [murrant](https://github.com/murrant)
* Fix typo in dispatcher service doc ([#13979](https://github.com/librenms/librenms/pull/13979)) - [booth-f](https://github.com/booth-f)
* Fix  a typo in alerting doc ([#13970](https://github.com/librenms/librenms/pull/13970)) - [twelch24](https://github.com/twelch24)
* DOCS, switch to dark or light mode ([#13953](https://github.com/librenms/librenms/pull/13953)) - [santiag0z](https://github.com/santiag0z)
* Assorted cleanups to alerting docs, primarily to make mdl happier ([#13950](https://github.com/librenms/librenms/pull/13950)) - [VVelox](https://github.com/VVelox)
* Update test doc making it more mdl happy and add a section on writing JSON app tests ([#13949](https://github.com/librenms/librenms/pull/13949)) - [VVelox](https://github.com/VVelox)
* Docs, fix code block in oxidized group ([#13908](https://github.com/librenms/librenms/pull/13908)) - [santiag0z](https://github.com/santiag0z)
* [DOC] Fix Code blocks Step 2 Installing Network-WeatherMap ([#13905](https://github.com/librenms/librenms/pull/13905)) - [santiag0z](https://github.com/santiag0z)
* [DOC] Styling the .env word quote ([#13889](https://github.com/librenms/librenms/pull/13889)) - [santiag0z](https://github.com/santiag0z)
* Docs, fix Linux SNMP example only listening on ::1 ([#13882](https://github.com/librenms/librenms/pull/13882)) - [murrant](https://github.com/murrant)
* Script that describes how to migrate traffic bills from observium. ([#13757](https://github.com/librenms/librenms/pull/13757)) - [manonfgoo](https://github.com/manonfgoo)

#### Translation
* Update zh-TW.json ([#14765](https://github.com/librenms/librenms/pull/14765)) - [jasoncheng7115](https://github.com/jasoncheng7115)
* Create files with Traditional Chinese translation ([#14764](https://github.com/librenms/librenms/pull/14764)) - [jasoncheng7115](https://github.com/jasoncheng7115)
* Fix Typo in Settings ([#14443](https://github.com/librenms/librenms/pull/14443)) - [electrocret](https://github.com/electrocret)
* Serbian translation, part3 ([#14205](https://github.com/librenms/librenms/pull/14205)) - [Npeca75](https://github.com/Npeca75)
* More Serbian translation ([#14181](https://github.com/librenms/librenms/pull/14181)) - [Npeca75](https://github.com/Npeca75)
* Enable translation on Eventlog & Component-status widgets ([#14180](https://github.com/librenms/librenms/pull/14180)) - [Npeca75](https://github.com/Npeca75)
* Initial support for Serbian language ([#14165](https://github.com/librenms/librenms/pull/14165)) - [Npeca75](https://github.com/Npeca75)
* Enable translation in 3 Alert widget ([#14164](https://github.com/librenms/librenms/pull/14164)) - [Npeca75](https://github.com/Npeca75)
* Few more updates to Ita lang ([#14091](https://github.com/librenms/librenms/pull/14091)) - [ppasserini](https://github.com/ppasserini)
* Italian language update ([#14085](https://github.com/librenms/librenms/pull/14085)) - [ppasserini](https://github.com/ppasserini)
* Adjustments to german translation ([#14083](https://github.com/librenms/librenms/pull/14083)) - [mwobst](https://github.com/mwobst)
* Small Italian lang update ([#13960](https://github.com/librenms/librenms/pull/13960)) - [ppasserini](https://github.com/ppasserini)
* Ukrainian translation update ([#13933](https://github.com/librenms/librenms/pull/13933)) - [p4k8](https://github.com/p4k8)
* Few more language (ITA) updates ([#13890](https://github.com/librenms/librenms/pull/13890)) - [ppasserini](https://github.com/ppasserini)

#### Tests
* Re-throw exceptions if we're in CI ([#14890](https://github.com/librenms/librenms/pull/14890)) - [Jellyfrog](https://github.com/Jellyfrog)
* Adding certificate application tests ([#14708](https://github.com/librenms/librenms/pull/14708)) - [bnerickson](https://github.com/bnerickson)
* Mock astext ([#14581](https://github.com/librenms/librenms/pull/14581)) - [murrant](https://github.com/murrant)
* Github tests log improvement ([#14559](https://github.com/librenms/librenms/pull/14559)) - [murrant](https://github.com/murrant)
* Improve trap testing ([#14546](https://github.com/librenms/librenms/pull/14546)) - [murrant](https://github.com/murrant)
* Remove unused phpstan tests ([#14503](https://github.com/librenms/librenms/pull/14503)) - [Jellyfrog](https://github.com/Jellyfrog)
* Speed up tests ([#14421](https://github.com/librenms/librenms/pull/14421)) - [murrant](https://github.com/murrant)
* Fix cisco-pw test capture ([#14415](https://github.com/librenms/librenms/pull/14415)) - [murrant](https://github.com/murrant)
* Test supported PHP versions only ([#14389](https://github.com/librenms/librenms/pull/14389)) - [murrant](https://github.com/murrant)
* Run CI on ubuntu 22.04 ([#14379](https://github.com/librenms/librenms/pull/14379)) - [Jellyfrog](https://github.com/Jellyfrog)
* Do not allow sysDescr to be fetched in os module yaml ([#14331](https://github.com/librenms/librenms/pull/14331)) - [murrant](https://github.com/murrant)
* Remove PHP version constraint ([#14314](https://github.com/librenms/librenms/pull/14314)) - [Jellyfrog](https://github.com/Jellyfrog)
* Lnms dev:simulate check simulated device exists ([#14243](https://github.com/librenms/librenms/pull/14243)) - [murrant](https://github.com/murrant)
* Save-test-data to refresh all variants of an OS ([#14231](https://github.com/librenms/librenms/pull/14231)) - [PipoCanaja](https://github.com/PipoCanaja)
* Allow save-test-data.php to run all modules explicitely ([#14212](https://github.com/librenms/librenms/pull/14212)) - [PipoCanaja](https://github.com/PipoCanaja)
* Increase OS detection time, sometimes it is not ready by 5s ([#14133](https://github.com/librenms/librenms/pull/14133)) - [murrant](https://github.com/murrant)
* Test PHP 8.1 ([#14109](https://github.com/librenms/librenms/pull/14109)) - [murrant](https://github.com/murrant)
* Fix tests failing when device with IP 127.1.6.1 exists ([#14016](https://github.com/librenms/librenms/pull/14016)) - [murrant](https://github.com/murrant)
* PHP8 phpstan fix ([#13843](https://github.com/librenms/librenms/pull/13843)) - [murrant](https://github.com/murrant)
* Fix tests for MariaDB \> 10.5.15 ([#13829](https://github.com/librenms/librenms/pull/13829)) - [Jellyfrog](https://github.com/Jellyfrog)

#### Misc
* Reorder check_icmp command to follow documented usage ([#14910](https://github.com/librenms/librenms/pull/14910)) - [mtentilucci](https://github.com/mtentilucci)
* Add multi-PR GitHub-apply ([#14875](https://github.com/librenms/librenms/pull/14875)) - [electrocret](https://github.com/electrocret)
* Use Device displayname on VRF page ([#14851](https://github.com/librenms/librenms/pull/14851)) - [electrocret](https://github.com/electrocret)
* Fix empty output on validation test ([#14822](https://github.com/librenms/librenms/pull/14822)) - [hanserasmus](https://github.com/hanserasmus)
* Allows GEO lookup with detailed internal Location information wrapped inside parentheses. ([#14799](https://github.com/librenms/librenms/pull/14799)) - [LoveSkylark](https://github.com/LoveSkylark)
* Add MAC OUI caching when code updates are disabled ([#14713](https://github.com/librenms/librenms/pull/14713)) - [gdepeyrot](https://github.com/gdepeyrot)
* New schema dump ([#14630](https://github.com/librenms/librenms/pull/14630)) - [Jellyfrog](https://github.com/Jellyfrog)
* Add check_hetzner_storagebox to includes/services ([#14463](https://github.com/librenms/librenms/pull/14463)) - [SirMaple](https://github.com/SirMaple)
* Add instance id to error reports ([#14444](https://github.com/librenms/librenms/pull/14444)) - [murrant](https://github.com/murrant)
* Update ports_purge docs and definitions ([#14402](https://github.com/librenms/librenms/pull/14402)) - [KayckMatias](https://github.com/KayckMatias)
* Added Ubuntu and Raspbian to ifAlias script ([#14399](https://github.com/librenms/librenms/pull/14399)) - [tim427](https://github.com/tim427)
* Defer loading cli option values ([#14354](https://github.com/librenms/librenms/pull/14354)) - [murrant](https://github.com/murrant)
* Allow dumping of errors and warnings ([#14275](https://github.com/librenms/librenms/pull/14275)) - [murrant](https://github.com/murrant)
* Allow reapply yaml config via env ([#14100](https://github.com/librenms/librenms/pull/14100)) - [murrant](https://github.com/murrant)
* Lnms scan respect -q parameter ([#14027](https://github.com/librenms/librenms/pull/14027)) - [murrant](https://github.com/murrant)
* Improve lnms shortcut validation ([#13982](https://github.com/librenms/librenms/pull/13982)) - [murrant](https://github.com/murrant)

#### Internal Features
* Number Casting allow preceding space ([#14699](https://github.com/librenms/librenms/pull/14699)) - [murrant](https://github.com/murrant)
* DeviceCache::get() allow hostname ([#14649](https://github.com/librenms/librenms/pull/14649)) - [murrant](https://github.com/murrant)
* Improve SnmpResponse value() ([#14605](https://github.com/librenms/librenms/pull/14605)) - [murrant](https://github.com/murrant)
* SnmpQuery numeric accept a boolean ([#14565](https://github.com/librenms/librenms/pull/14565)) - [murrant](https://github.com/murrant)
* Support regex in os field replace ([#14563](https://github.com/librenms/librenms/pull/14563)) - [murrant](https://github.com/murrant)
* More Replacement Capabilities for sensor index computation ([#14522](https://github.com/librenms/librenms/pull/14522)) - [PipoCanaja](https://github.com/PipoCanaja)
* Ignore CommandNotFoundException from reporting ([#14342](https://github.com/librenms/librenms/pull/14342)) - [Jellyfrog](https://github.com/Jellyfrog)
* Allow SnmpQuery to optionally abort walks if one fails ([#14255](https://github.com/librenms/librenms/pull/14255)) - [murrant](https://github.com/murrant)

#### Mibs
* Add CISCO-ENTITY-ALARM-MIB file ([#14754](https://github.com/librenms/librenms/pull/14754)) - [bonzo81](https://github.com/bonzo81)
* Update Nokia MIBs to release R22.2 ([#14734](https://github.com/librenms/librenms/pull/14734)) - [peelman](https://github.com/peelman)
* More MIB fixing ([#14018](https://github.com/librenms/librenms/pull/14018)) - [Jellyfrog](https://github.com/Jellyfrog)
* Update MIBs ([#14017](https://github.com/librenms/librenms/pull/14017)) - [Jellyfrog](https://github.com/Jellyfrog)
* Updated existing Siemens MIBs and added trap MIB ([#13986](https://github.com/librenms/librenms/pull/13986)) - [SanderBlom](https://github.com/SanderBlom)

#### Dependencies
* PHP dependency update ([#14927](https://github.com/librenms/librenms/pull/14927)) - [murrant](https://github.com/murrant)
* Bump phpseclib/phpseclib from 3.0.18 to 3.0.19 ([#14903](https://github.com/librenms/librenms/pull/14903)) - [dependabot](https://github.com/apps/dependabot)
* Bump webpack from 5.66.0 to 5.76.1 ([#14901](https://github.com/librenms/librenms/pull/14901)) - [dependabot](https://github.com/apps/dependabot)
* Bump symfony/http-kernel from 5.4.16 to 5.4.20 ([#14824](https://github.com/librenms/librenms/pull/14824)) - [dependabot](https://github.com/apps/dependabot)
* Bump json5 from 1.0.1 to 1.0.2 ([#14774](https://github.com/librenms/librenms/pull/14774)) - [dependabot](https://github.com/apps/dependabot)
* Update PHP dependencies (fix dependencies on PHP 8.2) ([#14759](https://github.com/librenms/librenms/pull/14759)) - [murrant](https://github.com/murrant)
* Bump qs and express ([#14705](https://github.com/librenms/librenms/pull/14705)) - [dependabot](https://github.com/apps/dependabot)
* Bump loader-utils from 1.4.0 to 1.4.2 ([#14628](https://github.com/librenms/librenms/pull/14628)) - [dependabot](https://github.com/apps/dependabot)
* Increase minimum version to PHP 8.1 ([#14378](https://github.com/librenms/librenms/pull/14378)) - [murrant](https://github.com/murrant)
* Update dependencies ([#14319](https://github.com/librenms/librenms/pull/14319)) - [murrant](https://github.com/murrant)
* Bump php-cs-fixer to 3.4.0 ([#14224](https://github.com/librenms/librenms/pull/14224)) - [murrant](https://github.com/murrant)
* Bump terser from 4.8.0 to 4.8.1 ([#14123](https://github.com/librenms/librenms/pull/14123)) - [dependabot](https://github.com/apps/dependabot)
* Bump guzzlehttp/guzzle from 7.4.4 to 7.4.5 ([#14059](https://github.com/librenms/librenms/pull/14059)) - [dependabot](https://github.com/apps/dependabot)
* Update Larastan ([#14031](https://github.com/librenms/librenms/pull/14031)) - [murrant](https://github.com/murrant)
* Update PHP dependencies ([#14028](https://github.com/librenms/librenms/pull/14028)) - [murrant](https://github.com/murrant)
* Bump guzzlehttp/guzzle from 7.4.3 to 7.4.4 ([#14025](https://github.com/librenms/librenms/pull/14025)) - [dependabot](https://github.com/apps/dependabot)
* Bump guzzlehttp/guzzle from 7.4.1 to 7.4.3 ([#13994](https://github.com/librenms/librenms/pull/13994)) - [dependabot](https://github.com/apps/dependabot)
* Bump async from 2.6.3 to 2.6.4 ([#13947](https://github.com/librenms/librenms/pull/13947)) - [dependabot](https://github.com/apps/dependabot)
* Bump composer/composer from 2.2.4 to 2.3.5 ([#13944](https://github.com/librenms/librenms/pull/13944)) - [dependabot](https://github.com/apps/dependabot)
* Bump guzzlehttp/psr7 from 2.1.0 to 2.2.1 ([#13879](https://github.com/librenms/librenms/pull/13879)) - [dependabot](https://github.com/apps/dependabot)
* Bump jpgraph version to 4 ([#13875](https://github.com/librenms/librenms/pull/13875)) - [ottorei](https://github.com/ottorei)
* Bump node-forge from 1.2.1 to 1.3.0 ([#13869](https://github.com/librenms/librenms/pull/13869)) - [dependabot](https://github.com/apps/dependabot)


## 23.2.0
*(2023-02-23)*

A big thank you to the following 20 contributors this last month:

- [electrocret](https://github.com/electrocret) (5)
- [fbouynot](https://github.com/fbouynot) (5)
- [hanserasmus](https://github.com/hanserasmus) (3)
- [VVelox](https://github.com/VVelox) (3)
- [guipoletto](https://github.com/guipoletto) (1)
- [westerterp](https://github.com/westerterp) (1)
- [goebelmeier](https://github.com/goebelmeier) (1)
- [MarlinMr](https://github.com/MarlinMr) (1)
- [florisvdk](https://github.com/florisvdk) (1)
- [kylegordon](https://github.com/kylegordon) (1)
- [zenbeam](https://github.com/zenbeam) (1)
- [dependabot](https://github.com/apps/dependabot) (1)
- [gilrim](https://github.com/gilrim) (1)
- [murrant](https://github.com/murrant) (1)
- [noaheroufus](https://github.com/noaheroufus) (1)
- [AleksNovak](https://github.com/AleksNovak) (1)
- [tristanbob](https://github.com/tristanbob) (1)
- [tim427](https://github.com/tim427) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)
- [bonzo81](https://github.com/bonzo81) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [Jellyfrog](https://github.com/Jellyfrog) (22)
- [murrant](https://github.com/murrant) (9)
- [ottorei](https://github.com/ottorei) (4)
- [crazy-max](https://github.com/crazy-max) (1)
- [VVelox](https://github.com/VVelox) (1)
- [westerterp](https://github.com/westerterp) (1)

#### Feature
* Add display query to list_devices function ([#14747](https://github.com/librenms/librenms/pull/14747)) - [bonzo81](https://github.com/bonzo81)

#### Device
* Fortigate IPS Intrusions detected stats ([#14857](https://github.com/librenms/librenms/pull/14857)) - [electrocret](https://github.com/electrocret)
* Add support for Vsol v1600d EPON OLT ([#14853](https://github.com/librenms/librenms/pull/14853)) - [guipoletto](https://github.com/guipoletto)
* Fix discovery for apc ats ([#14837](https://github.com/librenms/librenms/pull/14837)) - [florisvdk](https://github.com/florisvdk)
* Include Samsung X Series printers ([#14831](https://github.com/librenms/librenms/pull/14831)) - [kylegordon](https://github.com/kylegordon)
* EdgeOS OLT new sensors and changes ([#14807](https://github.com/librenms/librenms/pull/14807)) - [noaheroufus](https://github.com/noaheroufus)
* Update XDP string to exclude modern Cisco lightweight APs from discovery ([#14803](https://github.com/librenms/librenms/pull/14803)) - [tristanbob](https://github.com/tristanbob)
* Extend filtering of graphs device_bits on cisco ASA ([#14796](https://github.com/librenms/librenms/pull/14796)) - [PipoCanaja](https://github.com/PipoCanaja)

#### Alerting
* Fix MS Teams alert transport, correct HTTP header ([#14843](https://github.com/librenms/librenms/pull/14843)) - [goebelmeier](https://github.com/goebelmeier)
* Add support for topics ([#14804](https://github.com/librenms/librenms/pull/14804)) - [AleksNovak](https://github.com/AleksNovak)

#### Graphs
* Update HV::Monitor support to use generic_stats.inc.php ([#14814](https://github.com/librenms/librenms/pull/14814)) - [VVelox](https://github.com/VVelox)
* Only show Eth errors when Etherlike is enabled ([#14784](https://github.com/librenms/librenms/pull/14784)) - [electrocret](https://github.com/electrocret)

#### Applications
* Add a few more graphs for CAPEv2 ([#14813](https://github.com/librenms/librenms/pull/14813)) - [VVelox](https://github.com/VVelox)
* CAPEv2 support ([#14801](https://github.com/librenms/librenms/pull/14801)) - [VVelox](https://github.com/VVelox)

#### Api
* Use Oxidized API client and add support for groups on config get ([#14750](https://github.com/librenms/librenms/pull/14750)) - [electrocret](https://github.com/electrocret)

#### Oxidized
* Show display name in Oxidized config search ([#14800](https://github.com/librenms/librenms/pull/14800)) - [electrocret](https://github.com/electrocret)

#### Bug
* Revert "Fix entity-state polling/discovery" ([#14811](https://github.com/librenms/librenms/pull/14811)) - [murrant](https://github.com/murrant)

#### Documentation
* Fix Okta image in docs ([#14848](https://github.com/librenms/librenms/pull/14848)) - [westerterp](https://github.com/westerterp)
* Change socialite settings URI ([#14845](https://github.com/librenms/librenms/pull/14845)) - [fbouynot](https://github.com/fbouynot)
* Fix possible confusion around php-fpm settings ([#14844](https://github.com/librenms/librenms/pull/14844)) - [hanserasmus](https://github.com/hanserasmus)
* Use docker compose v2 ([#14841](https://github.com/librenms/librenms/pull/14841)) - [MarlinMr](https://github.com/MarlinMr)
* Fix typo in Oauth doc ([#14840](https://github.com/librenms/librenms/pull/14840)) - [fbouynot](https://github.com/fbouynot)
* Add Zenduty Integration info to Transports.md docs ([#14826](https://github.com/librenms/librenms/pull/14826)) - [zenbeam](https://github.com/zenbeam)
* Update config docs - dump current config ([#14820](https://github.com/librenms/librenms/pull/14820)) - [hanserasmus](https://github.com/hanserasmus)
* Add SELinux instructions for nginx monitoring ([#14812](https://github.com/librenms/librenms/pull/14812)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux instructions for systemd monitoring ([#14809](https://github.com/librenms/librenms/pull/14809)) - [fbouynot](https://github.com/fbouynot)
* Add SELinux instructions for systemd monitoring ([#14806](https://github.com/librenms/librenms/pull/14806)) - [fbouynot](https://github.com/fbouynot)
* Debian 11 Sury DPA provides PHP 8.2 ([#14798](https://github.com/librenms/librenms/pull/14798)) - [tim427](https://github.com/tim427)

#### Misc
* Use Device displayname on VRF page ([#14851](https://github.com/librenms/librenms/pull/14851)) - [electrocret](https://github.com/electrocret)
* Fix empty output on validation test ([#14822](https://github.com/librenms/librenms/pull/14822)) - [hanserasmus](https://github.com/hanserasmus)

#### Dependencies
* Bump symfony/http-kernel from 5.4.16 to 5.4.20 ([#14824](https://github.com/librenms/librenms/pull/14824)) - [dependabot](https://github.com/apps/dependabot)


## 23.1.0
*(2023-01-24)*

A big thank you to the following 19 contributors this last month:

- [electrocret](https://github.com/electrocret) (3)
- [peelman](https://github.com/peelman) (3)
- [jasoncheng7115](https://github.com/jasoncheng7115) (2)
- [not-known](https://github.com/not-known) (2)
- [da-me](https://github.com/da-me) (1)
- [systeembeheerder](https://github.com/systeembeheerder) (1)
- [fdomain](https://github.com/fdomain) (1)
- [jaannnis](https://github.com/jaannnis) (1)
- [knpo](https://github.com/knpo) (1)
- [trs80](https://github.com/trs80) (1)
- [MANT5149](https://github.com/MANT5149) (1)
- [LoveSkylark](https://github.com/LoveSkylark) (1)
- [support-capensis](https://github.com/support-capensis) (1)
- [zeroservices](https://github.com/zeroservices) (1)
- [dependabot](https://github.com/apps/dependabot) (1)
- [dennypage](https://github.com/dennypage) (1)
- [carbinefreak](https://github.com/carbinefreak) (1)
- [bnerickson](https://github.com/bnerickson) (1)
- [Blinq-SanderBlom](https://github.com/Blinq-SanderBlom) (1)

Thanks to maintainers and others that helped with pull requests this month:

- [Jellyfrog](https://github.com/Jellyfrog) (23)
- [murrant](https://github.com/murrant) (2)
- [SourceDoctor](https://github.com/SourceDoctor) (1)
- [PipoCanaja](https://github.com/PipoCanaja) (1)

#### Device
* Changed discovery OID in ets.yaml ([#14795](https://github.com/librenms/librenms/pull/14795)) - [da-me](https://github.com/da-me)
* Added Support for SNS-3615-K9 ([#14792](https://github.com/librenms/librenms/pull/14792)) - [jaannnis](https://github.com/jaannnis)
* Routeros fix lldp discovery on 7.7+ ([#14791](https://github.com/librenms/librenms/pull/14791)) - [knpo](https://github.com/knpo)
* Fix cisco-flash ([#14772](https://github.com/librenms/librenms/pull/14772)) - [electrocret](https://github.com/electrocret)
* Eaton matrix wattage fix ([#14770](https://github.com/librenms/librenms/pull/14770)) - [peelman](https://github.com/peelman)
* Add Universal Input Output support for APC ([#14766](https://github.com/librenms/librenms/pull/14766)) - [dennypage](https://github.com/dennypage)
* Eltek Enexus; Fix SmartpackS divisor and hardware discovery ([#14762](https://github.com/librenms/librenms/pull/14762)) - [peelman](https://github.com/peelman)
* Nokia PMC Microwave Improvements ([#14761](https://github.com/librenms/librenms/pull/14761)) - [carbinefreak](https://github.com/carbinefreak)
* Add AXOS sensor data for PON Transceivers (the only transceivers Cali… ([#14741](https://github.com/librenms/librenms/pull/14741)) - [peelman](https://github.com/peelman)
* Adding discovery of LSI MegaRAID Device Media Errors, Other Errors, a… ([#14729](https://github.com/librenms/librenms/pull/14729)) - [bnerickson](https://github.com/bnerickson)
* Stop net-snmp from interpreting the octet-string from rttMonEchoAdmin… ([#14676](https://github.com/librenms/librenms/pull/14676)) - [not-known](https://github.com/not-known)
* Add state of the Fortigate link monitor health checks ([#14675](https://github.com/librenms/librenms/pull/14675)) - [not-known](https://github.com/not-known)
* Adding support for loop-telecom devices ([#14674](https://github.com/librenms/librenms/pull/14674)) - [Blinq-SanderBlom](https://github.com/Blinq-SanderBlom)

#### Oxidized
* Adding Fortigate switches to Oxidized model mapping config ([#14782](https://github.com/librenms/librenms/pull/14782)) - [LoveSkylark](https://github.com/LoveSkylark)

#### Bug
* Fix entity-state polling/discovery ([#14793](https://github.com/librenms/librenms/pull/14793)) - [fdomain](https://github.com/fdomain)
* Update PingCheck.php to remove duplicate "Device status changed to ... from icmp check." event ([#14785](https://github.com/librenms/librenms/pull/14785)) - [MANT5149](https://github.com/MANT5149)
* Fix calculated dbm ([#14771](https://github.com/librenms/librenms/pull/14771)) - [electrocret](https://github.com/electrocret)

#### Documentation
* Update Syslog.md ([#14794](https://github.com/librenms/librenms/pull/14794)) - [systeembeheerder](https://github.com/systeembeheerder)
* Update Authentication.md ([#14788](https://github.com/librenms/librenms/pull/14788)) - [trs80](https://github.com/trs80)
* Fix Doc Link for Canopsis transport ([#14778](https://github.com/librenms/librenms/pull/14778)) - [support-capensis](https://github.com/support-capensis)
* Update ElasticSearch Index pattern for php 8.1 changes ([#14775](https://github.com/librenms/librenms/pull/14775)) - [zeroservices](https://github.com/zeroservices)

#### Translation
* Update zh-TW.json ([#14765](https://github.com/librenms/librenms/pull/14765)) - [jasoncheng7115](https://github.com/jasoncheng7115)
* Create files with Traditional Chinese translation ([#14764](https://github.com/librenms/librenms/pull/14764)) - [jasoncheng7115](https://github.com/jasoncheng7115)

#### Misc
* Use displayname instead of hostname for Device Maintenance Modal Title ([#14681](https://github.com/librenms/librenms/pull/14681)) - [electrocret](https://github.com/electrocret)

#### Dependencies
* Bump json5 from 1.0.1 to 1.0.2 ([#14774](https://github.com/librenms/librenms/pull/14774)) - [dependabot](https://github.com/apps/dependabot)
