FreeNAS/freenas cf4e2d3src/middlewared/middlewared/api/v25_10_0 zfs_resource_crud.py __init__.py, src/middlewared/middlewared/plugins/zfs property_management.py query_impl.py

add zfs.resource.query (WIP)
DeltaFile
+317-0src/middlewared/middlewared/api/v25_10_0/zfs_resource_crud.py
+168-0src/middlewared/middlewared/plugins/zfs/property_management.py
+136-0src/middlewared/middlewared/plugins/zfs/query_impl.py
+109-0src/middlewared/middlewared/plugins/zfs/normalization.py
+84-0src/middlewared/middlewared/plugins/zfs/resource_crud.py
+1-0src/middlewared/middlewared/api/v25_10_0/__init__.py
+815-01 files not shown
+815-07 files

FreeNAS/freenas b91654ctests runtest.py, tests/sharing_protocols conftest.py

NAS-136554 / 25.10 / Fixup support for the sharing_protocol CI tests. (#16699)

The sharing protocol CI tests are being moved to subdirectories.
This PR fixes up `runtest.py` to support running the CI tests.

To run the tests:
    `--test_dir sharing_protocols`

The results will be in `results/sharing_protocols_tests_result.xml

Also modified the pool create to use an existing pool.
DeltaFile
+12-10tests/sharing_protocols/conftest.py
+1-0tests/runtest.py
+13-102 files

FreeNAS/freenas 96daf2ftests runtest.py

Switch to a single top-level directory.
DeltaFile
+1-2tests/runtest.py
+1-21 files

FreeNAS/freenas 7c99a7atests runtest.py, tests/sharing_protocols conftest.py

Fixup support for the sharing_protocol CI tests.
DeltaFile
+12-10tests/sharing_protocols/conftest.py
+2-0tests/runtest.py
+14-102 files

FreeNAS/freenas 4825d5dsrc/middlewared/middlewared/alembic/versions/25.10 2025-07-03_18-15_docker_registry_mirrors.py, src/middlewared/middlewared/api/v25_10_0 docker.py

NAS-135995 / 25.10 / Allow configuring docker registry mirrors (#16695)

This PR adds changes to allow users to configure docker registry mirrors
so they can easily set local mirrors of actual docker registries to
avoid getting into the issue of rate limits being imposed by various
docker registries.
DeltaFile
+87-0src/middlewared/middlewared/pytest/unit/plugins/docker/test_docker_registry_mirrors.py
+33-2src/middlewared/middlewared/plugins/docker/update.py
+34-0src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_18-15_docker_registry_mirrors.py
+15-1src/middlewared/middlewared/api/v25_10_0/docker.py
+4-0src/middlewared/middlewared/etc_files/docker/daemon.json.py
+173-35 files

FreeNAS/freenas 3566b90src/middlewared/middlewared/alembic/versions/25.10 2025-07-03_18-15_docker_registry_mirrors.py 2025-07-03_01-15_docker_registry_mirrors.py

Update migration
DeltaFile
+34-0src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_18-15_docker_registry_mirrors.py
+0-34src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_01-15_docker_registry_mirrors.py
+34-342 files

FreeNAS/freenas 4c70808src/middlewared/middlewared/etc_files/docker daemon.json.py

Fix rendering
DeltaFile
+1-1src/middlewared/middlewared/etc_files/docker/daemon.json.py
+1-11 files

FreeNAS/freenas 171589fsrc/middlewared/middlewared/alembic/versions/25.10 2025-06-30_01-15_docker_registry_mirrors.py

Add migration for registry mirrors
DeltaFile
+32-0src/middlewared/middlewared/alembic/versions/25.10/2025-06-30_01-15_docker_registry_mirrors.py
+32-01 files

FreeNAS/freenas 59cb755src/middlewared/middlewared/plugins/docker update.py

Fix validation logic
DeltaFile
+14-8src/middlewared/middlewared/plugins/docker/update.py
+14-81 files

FreeNAS/freenas 0ed8d2csrc/middlewared/middlewared/api/v25_10_0 docker.py

Fix field validator
DeltaFile
+3-1src/middlewared/middlewared/api/v25_10_0/docker.py
+3-11 files

FreeNAS/freenas b6fafbfsrc/middlewared/middlewared/alembic/versions/25.10 2025-07-03_01-15_docker_registry_mirrors.py, src/middlewared/middlewared/api/v25_10_0 docker.py

Have separate fields for secure/insecure registries
DeltaFile
+87-0src/middlewared/middlewared/pytest/unit/plugins/docker/test_docker_registry_mirrors.py
+23-7src/middlewared/middlewared/plugins/docker/update.py
+2-19src/middlewared/middlewared/etc_files/docker/daemon.json.py
+12-2src/middlewared/middlewared/api/v25_10_0/docker.py
+4-2src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_01-15_docker_registry_mirrors.py
+128-305 files

FreeNAS/freenas ba1320fsrc/middlewared/middlewared/alembic/versions/25.10 2025-07-03_01-15_docker_registry_mirrors.py

Fix eof
DeltaFile
+1-1src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_01-15_docker_registry_mirrors.py
+1-11 files

FreeNAS/freenas 94edef0src/middlewared/middlewared/etc_files/docker daemon.json.py

Update docker daemon configuration
DeltaFile
+21-0src/middlewared/middlewared/etc_files/docker/daemon.json.py
+21-01 files

FreeNAS/freenas 8ce0085src/middlewared/middlewared/plugins/docker update.py

Improve validation logic
DeltaFile
+5-10src/middlewared/middlewared/plugins/docker/update.py
+5-101 files

FreeNAS/freenas d5c636fsrc/middlewared/middlewared/alembic/versions/25.10 2025-07-03_01-15_docker_registry_mirrors.py 2025-06-30_01-15_docker_registry_mirrors.py

Update migration
DeltaFile
+32-0src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_01-15_docker_registry_mirrors.py
+0-32src/middlewared/middlewared/alembic/versions/25.10/2025-06-30_01-15_docker_registry_mirrors.py
+32-322 files

FreeNAS/freenas 87b4642src/middlewared/middlewared/etc_files/docker daemon.json.py

Minor bug fix for insecure registry
DeltaFile
+1-1src/middlewared/middlewared/etc_files/docker/daemon.json.py
+1-11 files

FreeNAS/freenas 215453csrc/middlewared/middlewared/api/v25_10_0 docker.py

Update pydantic model to reflect new field
DeltaFile
+3-1src/middlewared/middlewared/api/v25_10_0/docker.py
+3-11 files

FreeNAS/freenas 8e55429src/middlewared/middlewared/plugins/docker update.py

Make sure registry mirrors get reflected properly in docker service
DeltaFile
+16-2src/middlewared/middlewared/plugins/docker/update.py
+16-21 files

FreeNAS/freenas 34b8606src/middlewared/middlewared/api/v25_10_0 zfs_resource_crud.py __init__.py, src/middlewared/middlewared/plugins/zfs property_management.py query_impl.py

add zfs.resource.query (WIP)
DeltaFile
+317-0src/middlewared/middlewared/api/v25_10_0/zfs_resource_crud.py
+167-0src/middlewared/middlewared/plugins/zfs/property_management.py
+136-0src/middlewared/middlewared/plugins/zfs/query_impl.py
+109-0src/middlewared/middlewared/plugins/zfs/normalization.py
+84-0src/middlewared/middlewared/plugins/zfs/resource_crud.py
+1-0src/middlewared/middlewared/api/v25_10_0/__init__.py
+814-01 files not shown
+814-07 files

FreeNAS/freenas 1103ba0src/middlewared/middlewared/api/v25_10_0 zfs_resource_crud.py, src/middlewared/middlewared/plugins/zfs query_impl.py normalization.py

WIP 3
DeltaFile
+28-42src/middlewared/middlewared/plugins/zfs/query_impl.py
+6-8src/middlewared/middlewared/api/v25_10_0/zfs_resource_crud.py
+4-10src/middlewared/middlewared/plugins/zfs/normalization.py
+38-603 files

FreeNAS/freenas 3e65fbdsrc/middlewared/middlewared/alembic/versions/25.10 2025-07-03_17-20_truecloud_ratelimit.py, src/middlewared/middlewared/api/v25_10_0 cloud_backup.py cloud.py

NAS-135927 / 25.10 / Allow upload/download rate limiting on TrueCloud tasks (#16689)

* Add `rate_limit` option to TrueCloud Backup tasks which limits the
upload/download speeds of all syncs/restores that the task performs
(KiB/s)
* Add `rate_limit` option to `cloud_backup.sync` and
`cloud_backup.restore` which serves the same purpose but can override
the task's default rate limit
* Small API docs improvements/fixes
* Basic test cases

http://jenkins.eng.ixsystems.net:8080/job/tests/job/api_tests/5004/
DeltaFile
+40-17tests/api2/test_cloud_backup.py
+32-0src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_17-20_truecloud_ratelimit.py
+13-3src/middlewared/middlewared/api/v25_10_0/cloud_backup.py
+5-5src/middlewared/middlewared/api/v25_10_0/cloud.py
+5-3src/middlewared/middlewared/plugins/cloud_backup/sync.py
+3-0src/middlewared/middlewared/api/v25_10_0/cloud_sync.py
+98-284 files not shown
+103-3010 files

FreeNAS/freenas 2036437tests/api2 test_261_iscsi_cmd.py test_300_nfs.py

test
DeltaFile
+0-3,324tests/api2/test_261_iscsi_cmd.py
+0-2,063tests/api2/test_300_nfs.py
+0-1,619tests/api2/test_nvmet_tcp.py
+0-1,404tests/api2/test_200_ftp.py
+0-1,053tests/api2/test_fibre_channel.py
+0-936tests/api2/test_345_acl_nfs4.py
+0-10,399244 files not shown
+0-35,822250 files

FreeNAS/freenas 4340c23tests/api2 test_cloud_backup.py

validate restore logs
DeltaFile
+6-4tests/api2/test_cloud_backup.py
+6-41 files

FreeNAS/freenas 7431e82src/middlewared/middlewared/api/v25_10_0 zfs_resource_crud.py, src/middlewared/middlewared/plugins/zfs query_impl.py resource_crud.py

WIP 2
DeltaFile
+39-18src/middlewared/middlewared/plugins/zfs/query_impl.py
+1-1src/middlewared/middlewared/api/v25_10_0/zfs_resource_crud.py
+1-1src/middlewared/middlewared/plugins/zfs/resource_crud.py
+41-203 files

FreeNAS/freenas c1880f1src/middlewared/middlewared/plugins/pool_ dataset_query_utils.py

Add .webshare-private to filter list
DeltaFile
+1-0src/middlewared/middlewared/plugins/pool_/dataset_query_utils.py
+1-01 files

FreeNAS/freenas e91ca05tests/api2 test_261_iscsi_cmd.py test_300_nfs.py

test
DeltaFile
+0-3,324tests/api2/test_261_iscsi_cmd.py
+0-2,063tests/api2/test_300_nfs.py
+0-1,619tests/api2/test_nvmet_tcp.py
+0-1,404tests/api2/test_200_ftp.py
+0-1,053tests/api2/test_fibre_channel.py
+0-936tests/api2/test_345_acl_nfs4.py
+0-10,399244 files not shown
+0-35,822250 files

FreeNAS/freenas ac50171src/middlewared/middlewared/alembic/versions/25.10 2025-07-01_17-20_truecloud_ratelimit.py 2025-07-03_17-20_truecloud_ratelimit.py

update migration
DeltaFile
+0-32src/middlewared/middlewared/alembic/versions/25.10/2025-07-01_17-20_truecloud_ratelimit.py
+32-0src/middlewared/middlewared/alembic/versions/25.10/2025-07-03_17-20_truecloud_ratelimit.py
+32-322 files

FreeNAS/freenas 36355a6tests/api2 test_425_smb_protocol.py test_smb_client.py, tests/sharing_protocols conftest.py

Merge branch 'master' of https://github.com/truenas/middleware into NAS-135927-test
DeltaFile
+818-0tests/sharing_protocols/smb/test_smb_protocol_base.py
+0-818tests/api2/test_425_smb_protocol.py
+0-243tests/api2/test_smb_client.py
+243-0tests/sharing_protocols/smb/test_smb_client.py
+156-0tests/sharing_protocols/conftest.py
+135-0tests/sharing_protocols/smb/test_smb_null_empty_dacl.py
+1,352-1,06121 files not shown
+1,850-1,55127 files

FreeNAS/freenas 896b9b0src/middlewared/middlewared/api/v25_10_0 zfs_resource_crud.py, src/middlewared/middlewared/plugins/zfs property_management.py query_impl.py

WIP
DeltaFile
+523-0tests/unit/test_property_management.py
+371-0tests/unit/test_zfs_asdict_normliazation.py
+319-0src/middlewared/middlewared/api/v25_10_0/zfs_resource_crud.py
+167-0src/middlewared/middlewared/plugins/zfs/property_management.py
+120-0src/middlewared/middlewared/plugins/zfs/query_impl.py
+115-0src/middlewared/middlewared/plugins/zfs/normalization.py
+1,615-03 files not shown
+1,700-09 files

FreeNAS/freenas bcfa8f6src/middlewared/middlewared/api/v25_10_0 zfs_resource_crud.py, src/middlewared/middlewared/plugins/zfs property_management.py query_impl.py

WIP
DeltaFile
+523-0tests/unit/test_property_management.py
+371-0tests/unit/test_zfs_asdict_normliazation.py
+316-0src/middlewared/middlewared/api/v25_10_0/zfs_resource_crud.py
+167-0src/middlewared/middlewared/plugins/zfs/property_management.py
+120-0src/middlewared/middlewared/plugins/zfs/query_impl.py
+115-0src/middlewared/middlewared/plugins/zfs/normalization.py
+1,612-03 files not shown
+1,697-09 files