Back to Changelog

v1.0.381

Minor Release Released July 25, 2026

Plan-aware resource visibility for SSH users, swap limit enforcement, incremental backup and restore fixes, and command-line client corrections.

Improvements

6
  • SSH users now see their own plan CPU and RAM limits (via free, htop, top and /proc/cpuinfo) instead of the whole server's resources.
  • LXCFS is installed and enabled automatically through a guarded, idempotent startup self-heal, so no manual setup is required.
  • Existing customers are automatically grandfathered to a swap allowance equal to their plan's RAM limit, so running sites are not affected.
  • Browse and Restore now serves the Database and Mailbox tabs from the saved index for older backups as well.
  • Full backups were never affected by these issues; only incremental backups needed the fix.
  • Command-line client errors now show the reason reported by the server instead of only a status code.

Bug Fixes

10
  • A plan's RAM limit can no longer be exceeded through swap: the swap ceiling is now enforced alongside the memory limit.
  • SSH sessions now mirror the same swap ceiling into their own resource scope.
  • Incremental backups now always dump databases. Multi-database domains could previously be skipped, leaving those databases out of the backup.
  • Removed an unreliable change-detection step that could mark a changed database as unchanged and skip it.
  • Granular Browse and Restore now correctly lists and restores databases captured in incremental backups.
  • Granular mailbox restore now walks the whole incremental backup chain, so a single mailbox can be restored from any incremental point.
  • Redirects using the Wildcard match type now really match sub-paths; they were previously generated as exact matches.
  • Standard users can manage the cron jobs of their own domains again.
  • Fixed four requests that returned an empty server error: config locks, adding an IP address, the monitoring service list and mailing list creation.
  • Command-line client: commands that called a non-existent API route now use the correct one (for example php restart, database listing and log queries).
See the Demo