OPNSense/core ace8f12src/opnsense/www/js/widgets Services.js

system: use btn styles in services widget #10553

This damps the colors a bit and auto-decides on the
text color to use.  Hover will still use the previous
color.  People will not like this either, but this is
entirely in the scope of the theme to make it look
nice.
DeltaFile
+3-4src/opnsense/www/js/widgets/Services.js
+3-41 files

OPNSense/core d5baa1asrc/opnsense/www/css dashboard.css, src/opnsense/www/js opnsense_widget_manager.js

system: compact and align dashboard style for #10553

This started with the service widget but the current style is a
bit constrained in what we can show and what not.  Divider layout
changes have consequences in gauge widgets too. CSS changes
are bit too intrusive but it's impossible to move out of them
without it.
DeltaFile
+4-5src/opnsense/www/js/widgets/Services.js
+4-3src/opnsense/www/js/opnsense_widget_manager.js
+3-2src/opnsense/www/css/dashboard.css
+5-0src/opnsense/www/js/widgets/BaseWidget.js
+3-2src/opnsense/www/themes/opnsense-dark/assets/stylesheets/dashboard.scss
+3-2src/opnsense/www/themes/opnsense/assets/stylesheets/dashboard.scss
+22-146 files not shown
+32-1812 files

OPNSense/core 3a1912esrc/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

firewall: skip message banner if searchPhrase set
DeltaFile
+5-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+5-11 files

OPNSense/core 6b5a3a2src/etc/inc/plugins.inc.d captiveportal.inc

firewall: captive portal block rule should be evaluated after the anti-lockout rule
DeltaFile
+1-1src/etc/inc/plugins.inc.d/captiveportal.inc
+1-11 files

OPNSense/core 8405bc6src/opnsense/mvc/app/views/OPNsense/Core defaults.volt

system: do not let the selectpicker grow on selection; closes #10547

(cherry picked from commit 8690ebe551b0f3105447a9f0e907b9d7509d3f3c)
DeltaFile
+3-3src/opnsense/mvc/app/views/OPNsense/Core/defaults.volt
+3-31 files

OPNSense/core 17a4f28src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes FilterRuleField.php, src/opnsense/mvc/app/views/OPNsense/Firewall filter_rule.volt

Collapse defunct bucket per default
DeltaFile
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+0-1src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes/FilterRuleField.php
+1-22 files

OPNSense/core 25d341csrc/opnsense/mvc/app/controllers/OPNsense/Firewall/Api DNatController.php, src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes FilterRuleField.php

Fix previous
DeltaFile
+0-5src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/DNatController.php
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-1src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-0src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes/FilterRuleField.php
+3-74 files

OPNSense/core 8c5f1aesrc/opnsense/mvc/app/controllers/OPNsense/Firewall/Api DNatController.php, src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes SourceNatRuleField.php FilterRuleField.php

Firewall: Rules and NAT: Group invalid rules to the end of the ruleset. These rules are skipped by PF processing because they do not have a valid interface.
DeltaFile
+30-2src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes/SourceNatRuleField.php
+26-2src/opnsense/mvc/app/controllers/OPNsense/Firewall/Api/DNatController.php
+13-0src/opnsense/mvc/app/models/OPNsense/Firewall/FieldTypes/FilterRuleField.php
+1-0src/opnsense/mvc/app/views/OPNsense/Firewall/filter_rule.volt
+1-0src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+71-45 files

OPNSense/core e9cc08bsrc/opnsense/mvc/app/controllers/OPNsense/Base ControllerBase.php, src/opnsense/mvc/app/views/layout_partials base_tabs_header.volt base_tabs_content.volt

mvc: tab/subtab form generation align with what base_form expects, closes https://github.com/opnsense/core/issues/10535

As these are hardly used, we missed these during our testing.
While here, cleanup the code a bit further and stop using index assignments to refer to content [0],[1],..

(cherry picked from commit 14710e7751870e2b4daed920b9ef3af5604dbc62)
DeltaFile
+12-12src/opnsense/mvc/app/views/layout_partials/base_tabs_header.volt
+10-9src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerBase.php
+4-4src/opnsense/mvc/app/views/layout_partials/base_tabs_content.volt
+26-253 files

OPNSense/core e476943src/opnsense/service/modules/actions script_output.py

configd: script_output remove file on crash as well.

(cherry picked from commit 9b0767001eb242dfb26de8f773037393b22463e0)
DeltaFile
+3-1src/opnsense/service/modules/actions/script_output.py
+3-11 files

OPNSense/core ce9bbe8src/etc/inc filter.inc

firewall: use 'urgent' as empty default just as 269b8b789931f intended

PR: https://forum.opnsense.org/index.php?topic=52307.0
(cherry picked from commit 3185c6c68adfac5b14e9a907b3a9490e73144a32)
DeltaFile
+2-3src/etc/inc/filter.inc
+2-31 files

OPNSense/core ce0a084src/etc/inc/plugins.inc.d webgui.inc

system: disable web GUI KTLS use for the time being

PR: https://github.com/opnsense/ports/issues/275 et al

(cherry picked from commit 9038d9283ffcda06d4d6417e580aad720050ddea)
(cherry picked from commit c8fd35be643b0097dc83f84f1f885b2d1b09e003)
(cherry picked from commit b75db6544774d1a41374d9a51b5dec95fd8746f5)
DeltaFile
+1-1src/etc/inc/plugins.inc.d/webgui.inc
+1-11 files

OPNSense/core f4c6596src/etc/inc/plugins.inc.d webgui.inc

system: disable web GUI KTLS use for the time being

PR: https://github.com/opnsense/ports/issues/275 et al
DeltaFile
+1-1src/etc/inc/plugins.inc.d/webgui.inc
+1-11 files

OPNSense/core b75db65src/etc/inc/plugins.inc.d webgui.inc

System: fix separator of previous c8fd35b
DeltaFile
+1-1src/etc/inc/plugins.inc.d/webgui.inc
+1-11 files

OPNSense/core c8fd35b. plist, src/etc/inc/plugins.inc.d webgui.inc

system: revisit previous
DeltaFile
+0-3src/etc/lighttpd_webgui/conf.d/ktls-disable.conf
+1-1src/etc/inc/plugins.inc.d/webgui.inc
+0-1plist
+1-53 files

OPNSense/core 9038d92. plist, src/etc/lighttpd_webgui/conf.d ktls-disable.conf

system: disable web GUI KTLS use for the time being

PR: https://github.com/opnsense/ports/issues/275 et al
DeltaFile
+3-0src/etc/lighttpd_webgui/conf.d/ktls-disable.conf
+1-0plist
+4-02 files

OPNSense/core 78a6f9dsrc/opnsense/scripts/firmware connection.sh

firmware: split ping into min and max size ones for #10540
DeltaFile
+12-3src/opnsense/scripts/firmware/connection.sh
+12-31 files

OPNSense/core 8690ebesrc/opnsense/mvc/app/views/OPNsense/Core defaults.volt

system: do not let the selectpicker grow on selection; closes #10547
DeltaFile
+3-3src/opnsense/mvc/app/views/OPNsense/Core/defaults.volt
+3-31 files

OPNSense/core 5bfd77csrc/opnsense/mvc/app/controllers/OPNsense/Diagnostics/Api SystemController.php, src/opnsense/scripts/health/library/OPNsense/RRD/Stats Memory.php

memory stats: map arc and laundry to cache (#10523)
DeltaFile
+25-10src/opnsense/scripts/health/library/OPNsense/RRD/Stats/Memory.php
+2-1src/opnsense/mvc/app/controllers/OPNsense/Diagnostics/Api/SystemController.php
+27-112 files

OPNSense/core 9c4bf73src/opnsense/scripts/netflow/lib parse.py

Correctly map netflow indexes when there are gaps (#10542)
DeltaFile
+20-3src/opnsense/scripts/netflow/lib/parse.py
+20-31 files

OPNSense/core 3dc1759src/etc rc.newwanip, src/etc/inc interfaces.inc

php8.5 - fix some warnings:

[16-Jul-2026 11:51:52 Europe/Amsterdam] PHP Warning:  Undefined array key "dhcphostname" in /usr/local/etc/inc/interfaces.inc on line 3330
[16-Jul-2026 11:51:52 Europe/Amsterdam] PHP Warning:  Undefined array key "dhcphostname" in /usr/local/etc/inc/interfaces.inc on line 3331
[16-Jul-2026 11:51:48 Europe/Amsterdam] PHP Deprecated:  Using null as an array offset is deprecated, use an empty string instead in /usr/local/opnsense/mvc/app/library/OPNsense/Firewall/ForwardRule.php on line 168
[16-Jul-2026 11:52:05 Europe/Amsterdam] PHP Deprecated:  Using null as an array offset is deprecated, use an empty string instead in /usr/local/etc/rc.newwanip on line 57
[16-Jul-2026 11:51:49 Europe/Amsterdam] PHP Deprecated:  Using null as an array offset is deprecated, use an empty string instead in /usr/local/etc/inc/interfaces.inc on line 2292
DeltaFile
+4-3src/etc/inc/interfaces.inc
+1-1src/etc/rc.newwanip
+1-0src/opnsense/mvc/app/library/OPNsense/Firewall/ForwardRule.php
+6-43 files

OPNSense/core 2b0575csrc/opnsense/mvc/app/views/layout_partials form_input_tr.volt

mvc: flipped the wrong paramater in https://github.com/opnsense/core/commit/3d9cccfe4038802807219621ddd49cf668a05144, closes https://github.com/opnsense/core/issues/10533
DeltaFile
+3-3src/opnsense/mvc/app/views/layout_partials/form_input_tr.volt
+3-31 files

OPNSense/core 206a646src/etc/inc filter.inc

firewall: fix PHP warning when scrub yields no interfaces

While here decrease indent and safe config iteration and simplify.
DeltaFile
+69-67src/etc/inc/filter.inc
+69-671 files

OPNSense/core 14710e7src/opnsense/mvc/app/controllers/OPNsense/Base ControllerBase.php, src/opnsense/mvc/app/views/layout_partials base_tabs_header.volt base_tabs_content.volt

mvc: tab/subtab form generation align with what base_form expects, closes https://github.com/opnsense/core/issues/10535

As these are hardly used, we missed these during our testing.
While here, cleanup the code a bit further and stop using index assignments to refer to content [0],[1],..
DeltaFile
+12-12src/opnsense/mvc/app/views/layout_partials/base_tabs_header.volt
+10-9src/opnsense/mvc/app/controllers/OPNsense/Base/ControllerBase.php
+4-4src/opnsense/mvc/app/views/layout_partials/base_tabs_content.volt
+26-253 files

OPNSense/core 3185c6csrc/etc/inc filter.inc

firewall: use 'urgent' as empty default just as 269b8b789931f intended

PR: https://forum.opnsense.org/index.php?topic=52307.0
DeltaFile
+2-3src/etc/inc/filter.inc
+2-31 files

OPNSense/core bf0ab31. plist, Mk version.mk

pkg: change to 26.7 ABI
DeltaFile
+1-1Mk/version.mk
+2-0src/etc/pkg/fingerprints/OPNsense/revoked/pkg.opnsense.org.20260120
+1-1plist
+0-2src/etc/opnsense-update.conf.in
+0-2src/etc/pkg/fingerprints/OPNsense/trusted/pkg.opnsense.org.20260120
+4-65 files

OPNSense/core 8cc69b2. plist, src/etc opnsense-update.conf.in

firmware: add fingerprint and upgrade hint for 26.7
DeltaFile
+2-0src/etc/pkg/fingerprints/OPNsense/trusted/pkg.opnsense.org.20260608
+2-0src/etc/opnsense-update.conf.in
+1-0plist
+5-03 files

OPNSense/core 9b07670src/opnsense/service/modules/actions script_output.py

configd: script_output remove file on crash as well.
DeltaFile
+3-1src/opnsense/service/modules/actions/script_output.py
+3-11 files

OPNSense/core c99aaefsrc/root/boot/lua logo-hourglass.lua.in

pkg: missing name from boot logo, oh well :)
DeltaFile
+1-1src/root/boot/lua/logo-hourglass.lua.in
+1-11 files

OPNSense/core 8215982Mk version.mk

pkg: wrap up 26.7
DeltaFile
+2-2Mk/version.mk
+2-21 files