FreeNAS/freenas d599f24tests/api2 test_twofactor_auth.py test_audit_websocket.py

Fix
DeltaFile
+1-1tests/api2/test_twofactor_auth.py
+1-1tests/api2/test_audit_websocket.py
+2-22 files

FreeNAS/freenas 2b94116src/middlewared/middlewared/plugins/service_/services base.py base_state.py

NAS-139515 / 26.0.0-BETA.1 / fix sysds migration instability (#18113)

DeltaFile
+165-36src/middlewared/middlewared/plugins/service_/services/base.py
+0-4src/middlewared/middlewared/plugins/service_/services/base_state.py
+165-402 files

FreeNAS/freenas 89a9622tests/api2 test_twofactor_auth.py

Fix
DeltaFile
+1-7tests/api2/test_twofactor_auth.py
+1-71 files

FreeNAS/freenas ebfa059tests/api2 test_audit_websocket.py

Fix test
DeltaFile
+1-2tests/api2/test_audit_websocket.py
+1-21 files

FreeNAS/freenas 1e033b4src/middlewared/middlewared/plugins/service_/services base.py base_state.py

fix sysds migration instability
DeltaFile
+165-36src/middlewared/middlewared/plugins/service_/services/base.py
+0-4src/middlewared/middlewared/plugins/service_/services/base_state.py
+165-402 files

FreeNAS/freenas 40c6084src/middlewared/middlewared/alembic/versions/26.04 2025-12-31_15-39_split_smb_path.py, src/middlewared/middlewared/migration 0018_resolve_dataset_paths.py

rework migration
DeltaFile
+161-0src/middlewared/middlewared/migration/0018_resolve_dataset_paths.py
+98-4src/middlewared/middlewared/utils/mount.py
+66-0src/middlewared/middlewared/plugins/nvmet/namespace.py
+0-63src/middlewared/middlewared/alembic/versions/26.04/2025-12-31_15-39_split_smb_path.py
+63-0src/middlewared/middlewared/plugins/iscsi_/extents.py
+49-1src/middlewared/middlewared/plugins/rsync.py
+437-686 files not shown
+564-7712 files

FreeNAS/freenas 95a181etests/api2 test_300_nfs.py test_200_ftp.py

rm bulk tests
DeltaFile
+0-2,107tests/api2/test_300_nfs.py
+0-1,411tests/api2/test_200_ftp.py
+0-936tests/api2/test_345_acl_nfs4.py
+0-700tests/api2/test_011_user.py
+0-495tests/api2/test_440_snmp.py
+0-487tests/api2/test_audit_websocket.py
+0-6,136254 files not shown
+0-31,686260 files

FreeNAS/freenas 10f5ff6src/middlewared/middlewared/plugins/service_/services base.py

handle when services stop before we check
DeltaFile
+97-20src/middlewared/middlewared/plugins/service_/services/base.py
+97-201 files

FreeNAS/freenas f13b546src/middlewared/middlewared/plugins/update_ download.py update.py

Lightweight plugin parts
DeltaFile
+170-173src/middlewared/middlewared/plugins/update_/download.py
+111-144src/middlewared/middlewared/plugins/update_/update.py
+122-120src/middlewared/middlewared/plugins/update_/install.py
+110-123src/middlewared/middlewared/plugins/update_/status.py
+115-114src/middlewared/middlewared/plugins/update_/trains.py
+169-0src/middlewared/middlewared/plugins/update_/__init__.py
+797-67421 files not shown
+1,121-94127 files

FreeNAS/freenas ffcbb47src/middlewared/middlewared/plugins/update_ download.py update.py

Lightweight plugin parts
DeltaFile
+170-173src/middlewared/middlewared/plugins/update_/download.py
+111-144src/middlewared/middlewared/plugins/update_/update.py
+122-120src/middlewared/middlewared/plugins/update_/install.py
+112-123src/middlewared/middlewared/plugins/update_/status.py
+115-114src/middlewared/middlewared/plugins/update_/trains.py
+170-0src/middlewared/middlewared/plugins/update_/__init__.py
+800-67420 files not shown
+1,114-93926 files

FreeNAS/freenas b79e484tests/api2 test_300_nfs.py test_200_ftp.py

rm bulk tests
DeltaFile
+0-2,107tests/api2/test_300_nfs.py
+0-1,411tests/api2/test_200_ftp.py
+0-936tests/api2/test_345_acl_nfs4.py
+0-700tests/api2/test_011_user.py
+0-495tests/api2/test_440_snmp.py
+0-487tests/api2/test_audit_websocket.py
+0-6,136253 files not shown
+0-31,631259 files

FreeNAS/freenas 884726csrc/middlewared/middlewared/plugins/service_/services base.py base_state.py

fix system dataset migration instability
DeltaFile
+142-35src/middlewared/middlewared/plugins/service_/services/base.py
+0-4src/middlewared/middlewared/plugins/service_/services/base_state.py
+142-392 files

FreeNAS/freenas ce30cfftests/unit test_pwenc.py

NAS-139512 / 26.0.0-BETA.1 / Fix import (#18111)

pwenc_data no longer exists, so don't try to import.
DeltaFile
+0-1tests/unit/test_pwenc.py
+0-11 files

FreeNAS/freenas 67b9889tests/unit test_pwenc.py

Fix import
DeltaFile
+0-1tests/unit/test_pwenc.py
+0-11 files

FreeNAS/freenas 7a65860src/middlewared/middlewared main.py, src/middlewared/middlewared/alembic/versions/26.04 2025-12-31_15-39_split_smb_path.py

split SMB path field
DeltaFile
+63-0src/middlewared/middlewared/alembic/versions/26.04/2025-12-31_15-39_split_smb_path.py
+26-3src/middlewared/middlewared/utils/mount.py
+21-1src/middlewared/middlewared/service/sharing_service.py
+8-6src/middlewared/middlewared/plugins/smb.py
+10-0src/middlewared/middlewared/api/v26_04_0/smb.py
+4-2src/middlewared/middlewared/main.py
+132-126 files

FreeNAS/freenas b38dcffsrc/middlewared/middlewared/plugins auth.py

Fix
DeltaFile
+1-1src/middlewared/middlewared/plugins/auth.py
+1-11 files

FreeNAS/freenas a6d13e2src/middlewared/middlewared/plugins auth.py

Fix
DeltaFile
+6-2src/middlewared/middlewared/plugins/auth.py
+6-21 files

FreeNAS/freenas fcfa5a7src/middlewared/middlewared/plugins/docker update.py fs_manage.py

NAS-139506 / 26.0.0-BETA.1 / fix pool export when apps ds is gone (#18110)

This code is indecipherable and maddening. I can't export a pool because
the ix-apps dataset was destroyed (by me during bug reproduction) and
it's raising ENOENT. Investigating shows that this regressed when the
new zfs.resource API was put in which broke the `except CallError` catch
that should have been ignoring this and allowing it go through.

I've fixed the regression but this code makes me want to mow yards for a
living.
DeltaFile
+12-10src/middlewared/middlewared/plugins/docker/update.py
+19-2src/middlewared/middlewared/plugins/docker/fs_manage.py
+31-122 files

FreeNAS/freenas 6c4e22fsrc/middlewared/middlewared/plugins/docker update.py fs_manage.py

fix pool export when apps ds is gone
DeltaFile
+12-10src/middlewared/middlewared/plugins/docker/update.py
+19-2src/middlewared/middlewared/plugins/docker/fs_manage.py
+31-122 files

FreeNAS/freenas 8047a4dsrc/middlewared/middlewared/api/v26_04_0 app.py, src/middlewared/middlewared/plugins/apps/ix_apps query.py

Include latest app version in app.query response
DeltaFile
+12-8src/middlewared/middlewared/plugins/apps/ix_apps/query.py
+2-0src/middlewared/middlewared/api/v26_04_0/app.py
+14-82 files

FreeNAS/freenas f239bf9src/middlewared/middlewared/api/v26_04_0 app.py

Fix docstring
DeltaFile
+2-2src/middlewared/middlewared/api/v26_04_0/app.py
+2-21 files

FreeNAS/freenas f752a64src/middlewared/middlewared/plugins/apps upgrade.py

Selectively raise app alerts
DeltaFile
+24-4src/middlewared/middlewared/plugins/apps/upgrade.py
+24-41 files

FreeNAS/freenas e929124src/middlewared/middlewared/pytest/unit/plugins/apps test_list_apps.py

Fix failures in unit test
DeltaFile
+1-1src/middlewared/middlewared/pytest/unit/plugins/apps/test_list_apps.py
+1-11 files

FreeNAS/freenas 23bf623src/middlewared/middlewared/etc_files/netdata netdata.conf.mako

NAS-139505 / 26.0.0-BETA.1 / disable unused netdata plugins (#18108)

We're trying, YET AGAIN, to fix our system dataset migration nonsense
and I've noticed that netdata is the culprit for this particular
failure. It's not immediately apparent why and we might actually be on
the cusp of a hard-to-reproduce zfs bug but this PR disables a bunch of
unused netdata plugins that are just giving us grief.
DeltaFile
+4-0src/middlewared/middlewared/etc_files/netdata/netdata.conf.mako
+4-01 files

FreeNAS/freenas d3b7653src/middlewared/middlewared/etc_files/netdata netdata.conf.mako

disable unused netdata plugins
DeltaFile
+4-0src/middlewared/middlewared/etc_files/netdata/netdata.conf.mako
+4-01 files

FreeNAS/freenas 16775dfsrc/middlewared/middlewared/plugins cache.py

Keep persistent cache across upgrades
DeltaFile
+5-5src/middlewared/middlewared/plugins/cache.py
+5-51 files

FreeNAS/freenas 6e7b251tests/api2 test_audit_websocket.py

Fix test
DeltaFile
+0-24tests/api2/test_audit_websocket.py
+0-241 files

FreeNAS/freenas a2816fesrc/freenas/etc/systemd/system sssd-nss.socket sssd-pam-priv.socket, src/middlewared/middlewared/etc_files/sssd sssd.conf.mako

disable sockets
DeltaFile
+2-0src/middlewared/middlewared/etc_files/sssd/sssd.conf.mako
+1-0src/freenas/etc/systemd/system/sssd-nss.socket
+1-0src/freenas/etc/systemd/system/sssd-pam-priv.socket
+1-0src/freenas/etc/systemd/system/sssd-pam.socket
+5-04 files

FreeNAS/freenas 8ccae17src/middlewared/middlewared/plugins/failover_ disabled_reasons.py enums.py, src/middlewared/middlewared/plugins/security update.py

NAS-139409 / 26.0.0-BETA.1 / Fix reboot reasons for HA (by Qubad786) (#18090)

## Problem

There were different problems identified with reboot reasons management
with HA:

1. We were setting reboot reason after rebooting remote node in case an
exception happened which meant that the remote would have to be rebooted
again because we would have stored it's boot_id as none at that point.
2. For any reboot reason, we always set disabled reasons as FIPS which
is wrong and we should show actual reason HA is being shown as disabled
3. Active node's reboot reason was added after remote had rebooted which
is not nice
4. We did not set appropriate reboot reason for FIPS/STIG if both were
toggled and only FIPS got added

## Solution


    [14 lines not shown]
DeltaFile
+53-34src/middlewared/middlewared/plugins/security/update.py
+8-7src/middlewared/middlewared/plugins/failover_/disabled_reasons.py
+4-0src/middlewared/middlewared/plugins/failover_/enums.py
+2-0src/middlewared/middlewared/plugins/failover_/reboot.py
+1-0src/middlewared/middlewared/plugins/system/reboot.py
+68-415 files

FreeNAS/freenas f5b7843src/middlewared/middlewared/plugins/update_ utils_linux.py

Address review
DeltaFile
+1-1src/middlewared/middlewared/plugins/update_/utils_linux.py
+1-11 files