BREAKING CHANGES:
- Removed support for all systems except TrueNAS SCALE 25.04+
- Removed SSH-based driver (FreeNASSshDriver) and all SSH functionality
- Removed legacy HTTP REST API support (API v1.0 and v2.0)
- Removed generic ZFS, Synology, and other non-TrueNAS drivers
- Migrated to WebSocket JSON-RPC 2.0 protocol exclusively
Changes:
- Implemented new WebSocket JSON-RPC client using 'ws' package
- Completely rewrote API wrapper (reduced from 4,469 to 468 lines)
- Removed all legacy version detection and compatibility code
- Updated driver factory to only support truenas-nfs, truenas-iscsi, truenas-nvmeof
- Removed ssh2 and axios dependencies, added ws dependency
- Deleted 22 example configuration files for unsupported systems
- Deleted 15 driver implementation files for unsupported systems
The new implementation provides a clean, modern interface to TrueNAS SCALE
using versioned JSON-RPC over WebSocket (/api/current endpoint).
API methods now use direct JSON-RPC calls:
- pool.dataset.* for dataset operations
- zfs.snapshot.* for snapshot operations
- iscsi.* for iSCSI configuration (to be implemented)
- sharing.nfs.* for NFS shares (to be implemented)
- nvmet.* for NVMe-oF (to be implemented)