Skip to content
jonmatifa edited this page Oct 31, 2014 · 25 revisions

Things that need to be done

Feature set

Pools:

  • Better VDEV management (easily set up mirror or raidz arrays with cache and/or log devices, etc)
  • VDEV Replace
  • Show VDEVs by associated hierarchy (mirror devices are shown under mirror, etc)
  • Manipulation of pool specific properties (both on management and creation)
  • Add zpool upgrade -v to the version property view

File systems:

  • Recursively create file systems as option
  • Add Deduplication to file system creation page
  • Add zfs upgrade -v to the version property view

Snapshots:

  • Rollback
  • Send / Receive
  • Show differences

UI

  • BUGFIX - perl errors when viewing page of obsolete pool / file system / snapshot
  • BUGFIX - if vdev contains the same pattern as pool name, then that vdev doesn't appear in list
  • BUGFIX - support for spaces, escaped characters in mountpoint property

Misc

  • Scheduled tasks (either use webmin API or automatically generate cron jobs with configuration)
  • Rename pools, file systems and snapshots

Core Code

  • Convert ui_ subroutines to allow for print expression
  • Convert status and list functions to utilize regex for better reliability and more robust code
  • Move redundant UI functions into zfsmanager-lib.pl
  • Trim obsolete commented code out
  • Achieve higher standard of code / efficiency wherever possible
  • "Lock down" API functionality of zfsmanager-lib.pl (goal for beta release)
  • Webmin ACL functions (they don't seem to work in general, will take some digging to find out more)
  • Overhaul command functions

Translating

  • Move relevant strings into lang directory to allow for translation effort
  • Create function for determining language and looking up properties-desc.pl

Compatibility & Testing

  • Test against old versions of Webmin
  • Test browser compatibility
  • Test on various versions of ZFS
  • Test on all generally supported platforms of Webmin/ZFS (Linux varients, FreeBSD, OpenBSD, NetBSD, Solaris, MacOSX)
Clone this wiki locally