Enhance

Developer ToolsAI extracted

Clustered web hosting control panel with website, server and reseller management.

Latest 12.25.4 · by Enhance Hosting AutomationWebsite

Release activity

Release activity — 70 releases across 60 days in the last year. Each cell is one day; darker means more releases that day. Older weeks are hidden at this screen width.
MayJunJulAug
SundayNo releases on Apr 19, 2026No releases on Apr 26, 2026No releases on May 3, 20261 release on May 10, 2026No releases on May 17, 2026No releases on May 24, 2026No releases on May 31, 2026No releases on Jun 7, 2026No releases on Jun 14, 2026No releases on Jun 21, 2026No releases on Jun 28, 2026No releases on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026
MondayNo releases on Apr 20, 2026No releases on Apr 27, 2026No releases on May 4, 2026No releases on May 11, 2026No releases on May 18, 2026No releases on May 25, 20261 release on Jun 1, 2026No releases on Jun 8, 20261 release on Jun 15, 20261 release on Jun 22, 2026No releases on Jun 29, 2026No releases on Jul 6, 2026No releases on Jul 13, 20261 release on Jul 20, 2026No releases on Jul 27, 20261 release on Aug 3, 2026
TuesdayNo releases on Apr 21, 20261 release on Apr 28, 2026No releases on May 5, 2026No releases on May 12, 2026No releases on May 19, 20261 release on May 26, 2026No releases on Jun 2, 2026No releases on Jun 9, 2026No releases on Jun 16, 2026No releases on Jun 23, 2026No releases on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 2026No releases on Jul 21, 2026No releases on Jul 28, 2026No releases on Aug 4, 2026
WednesdayNo releases on Apr 22, 2026No releases on Apr 29, 2026No releases on May 6, 20261 release on May 13, 2026No releases on May 20, 2026No releases on May 27, 2026No releases on Jun 3, 2026No releases on Jun 10, 2026No releases on Jun 17, 2026No releases on Jun 24, 2026No releases on Jul 1, 2026No releases on Jul 8, 2026No releases on Jul 15, 2026No releases on Jul 22, 2026No releases on Jul 29, 2026No releases on Aug 5, 2026
ThursdayNo releases on Apr 23, 2026No releases on Apr 30, 2026No releases on May 7, 2026No releases on May 14, 2026No releases on May 21, 20261 release on May 28, 2026No releases on Jun 4, 2026No releases on Jun 11, 2026No releases on Jun 18, 2026No releases on Jun 25, 2026No releases on Jul 2, 2026No releases on Jul 9, 2026No releases on Jul 16, 20261 release on Jul 23, 20261 release on Jul 30, 2026No releases on Aug 6, 2026
FridayNo releases on Apr 24, 2026No releases on May 1, 20261 release on May 8, 2026No releases on May 15, 2026No releases on May 22, 2026No releases on May 29, 2026No releases on Jun 5, 2026No releases on Jun 12, 2026No releases on Jun 19, 2026No releases on Jun 26, 20261 release on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026
SaturdayNo releases on Apr 25, 2026No releases on May 2, 2026No releases on May 9, 2026No releases on May 16, 20261 release on May 23, 2026No releases on May 30, 2026No releases on Jun 6, 2026No releases on Jun 13, 2026No releases on Jun 20, 2026No releases on Jun 27, 2026No releases on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 20261 release on Aug 1, 2026

70 releases in the last year, busiest day 5

Changelog

12.25.4

12.25.4 Latest

Changed 2
  • cPanel importer now tolerates numeric values for 'ssl' and 'port' in cPanel userdata domain files to mitigate recent changes in cPanel
  • WordPress installation via wp-cli now prefers the zip archive to mitigate an issue with extraction of long path names from tar files in the current version of wp-cli
Fixed 1
  • When a customer package defines preinstalled WordPress plugins, a false error message is no longer displayed when Openclaw is installed

Enhanced cPanel importer now tolerates numeric values for 'ssl' and 'port' in cPanel userdata domain files, to mitigate recent changes in cPanel. WordPress installation via wp-cli now prefers the zip archive to mitigate an issue in with extraction of long path names from tar files in the current version of wp-cli. Fixed When a customer package defines preinstalled WordPress plugins, a false error message is no longer displayed when Openclaw is installed.

View originalPermalink
How 12.25.4 went

12.25.3

Fixed 1
  • Customer stickiness now ignores service websites belonging to that customer when determining placement of a new website
Security 1
  • SVG uploads from resellers and end users are now explicitly checked for Javascript content which might be executed if the SVG file were opened directly in the browser

Security SVG uploads from resellers and end users are now eplicitly checked for Javascript content which might be executed if the SVG file were opened directly in the browser. Fixed Customer 'stickiness', if enabled, now ignores service websites belonging to that customer when determining placement of a new website.

View originalPermalink
How 12.25.3 went

12.25.2

Changed 1
  • Dev dependencies are now removed before running the composer install command when installing the wp-cli login package as part of the ecp-core postinst script

Enhanced When installing the wp-cli login package as part of the ecp-core postinst script, dev dependencies are removed before running the composer install command.

View originalPermalink
How 12.25.2 went

12.25.1

Changed 4
  • Search login on Customers has been moved from UI code to API to improve performance on larger clusters
  • Improved phpMyAdmin error reporting
  • Overrides back heading now contains the primary domain of the website being edited
  • getGlobalInstallableApps and getInstallableApps endpoints now return OpenClaw as a supported application
Fixed 3
  • cPanel imports now complete where PostgreSQL is enabled on cPanel but not on Enhance by skipping any PostgreSQL databases during the import process
  • phpMyAdmin domain selection for resellers now ignores soft-deleted domains
  • API will no longer accept syntactically invalid ".." in email local part

Enhanced cPanel imports are now able to complete where PostgreSQL is enabled on cPanel but not on Enhance, by skipping any PostgreSQL databases during the import process. The search login on 'Customers' has been moved from UI code to API to improve performance on larger clusters. Improved phpMyAdmin error reporting. "Overrides" back heading now contains the primary domain of the website being edited. getGlobalInstallableApps and getInstallableApps endpoints now return OpenClaw as a supported application. getInstallableApps returns applications subject to package restrictions. Fixed phpMyAdmin domain selection for resellers now ignores soft-deleted domains. API will no longer accept syntactically invalid ".." in email local part.

View originalPermalink
How 12.25.1 went

12.25.0

Added 5
  • 3rd party DNS hooks added to Integrations
  • Default DMARC policy set to p=none for all new zones, editable per website or as platform DNS zone template
  • installServerRole API endpoint has an additional parameter to disable the role on installation
  • Disabled server roles are automatically enabled when a customer is subscribed to a dedicated plan using that server/role
  • New getPhpMyAdminWebsiteSSOUrl endpoint added which does not require a specific database name
Changed 6
  • Improved Danish translations
  • New Quick Links section added for website dashboard
  • Reseller subscription recalculation is now triggered after a soft deletion of a customer org
  • orchd, appcd and appd now only start if started by systemd to prevent overzealous LLMs starting duplicate copies
  • orchd will no longer start as root
  • Improved email transfer logic and failure handling
Fixed 3
  • Push live now copies cron jobs
  • Push live now copies IonCube
  • Reseller control panel domain warning

Added 3rd party DNS hooks added to 'Integrations'. Default DMARC added for all new zones. The default policy is set to 'p=none', this can be edited on a per website in Website > Domain > DNS records or as a platform DNS zone template in Settings > Platform > DNS. installServerRole API endpoint has an additional parameter to disable the role on installation. Disabled server roles are automatically enabled when a customer is subscribed to a dedicated plan using that server/role. Enhanced New getPhpMyAdminWebsiteSSOUrl endpoint added which does not require a specific database name (existing getPhpMyAdminSSOUrl endpoint is still functional) Improved Danish translations. New 'Quick Links' section for website dashboard. A reseller subscription recalculation is now triggered after a soft deletion of a customer org. orchd, appcd and appd now only start if started by systemd, to prevent overzealous LLMs starting duplicate copies of appcd. orchd will no longer start as root. Improved email transfer logic and failure handling Fixed "Push live" now copies cron jobs. "Push live" now copies IonCube. Reseller control panel domain warning.

View originalPermalink
How 12.25.0 went

12.24.0

Added 4
  • Enable the ability to edit cron jobs with SSH or any other process running under the website container via the developer tools section of the website dashboard
  • OpenClaw is now available as an installable application via the apps tab of the website dashboard
  • OpenClaw toolkit can add API provider keys, rotate tokens and configure device authentication
  • Packages can now be configured to restrict the installable applications
Changed 1
  • Numeric progress indicator added to file manager upload
Fixed 1
  • Additional improvements to UI domain sorting login on domains tab of website dashboard

Added Customers can now enable the ability to edit cron jobs with SSH (or any other process running under the website container) via the "developer tools" section of the website dashboard. OpenClaw is now available as an installable application via the "apps" tab of the website dashboard. OpenClaw toolkit can add API provider keys, rotate tokens and configure device authentication. Packages can now be configured to restrict the installable applications. Enhanced Numeric progress indicator added to file manager upload. Minor UI improvements. Fixed Additional improvements to UI domain sorting login on "domains" tab of website dashboard.

View originalPermalink
How 12.24.0 went

12.23.1

Fixed 2
  • 401 error no longer returned when attempting to "log out all devices" from user profile
  • Primary domain now correctly shows at the top of page 1 when listing website mapped domains spanning multiple pages

Fixed 401 error no longer returned when attempting to "log out all devices" from user profile. Primary domain now correctly shows at the top of page 1 when listing website mapped domains spanning multiple pages.

View originalPermalink
How 12.23.1 went

12.23.0

Added 2
  • Node.js websocket proxy support
  • Inode resource limit per website as a package setting that can be overridden on a per website basis
Changed 9
  • PostGIS and PGVector now enabled by default on new PostgreSQL installations
  • Automatically recalculate subscription on cloning failure
  • Default post_max_size and upload_max_filesize now 1000M if no specific limit is configured
  • Explicitly set WordPress site url and home when using search replace to mitigate object cache issue on cloning
  • Copy button added to domains table
  • Improved Hebrew and Portugese translations
Fixed 1
  • Application installations now adhere to package database resource limits

It is very important for this release that all servers are updated to the same version to avoid undefined behaviour. As root on each server in your cluster run 'apt update && apt upgrade'. Added Node.js websocket proxy support. Inode resource limit per website. This is a package setting and can be overriden on a per website basis. Documentation can be found here. Enhanced PostGIS and PGVector now enabled by default on new PostgreSQL installations. Automatically recalculate subscription on cloning failure. Default post_max_size and upload_max_filesize now 1000M if no specific limit is configured. Explicitly set WordPress site url and home when using search replace to mitigate object cache issue on cloning. Copy button added to domains table. Improved Hebrew and Portugese translations. Increased timeout for email role migration again. Primary domain now always listed first on domains table. wp-admin button on the website dashboard now defaults to the installation in public_html ahead of any addon domains. Fixed Application installations now adhere to package database resource limits.

View originalPermalink
How 12.23.0 went

12.22.2

Changed 4
  • Increased timeout for WHM API client to 1 hour to improve cPanel import from remote server when dealing with very large accounts
  • Improved error messages for website cloning and push-live
  • Improved cleanup of mysql.db table when a MySQL database is removed
  • Panel lists now use brand accent colour
Fixed 2
  • Resolved error when creating PostgreSQL databases under a website beginning with a number
  • Fixed spacing issue on catch-all checkbox

It is very important for this release that all servers are updated to the same version to avoid undefined behaviour. As root on each server in your cluster run 'apt update && apt upgrade'. Fixed Resolved error when creating PostgreSQL databases under a website beginning with a number. Enhanced Increased timeout for WHM API client to 1 hour to improve cPanel import from remote server when dealing with very large accounts. Improved error messages for website cloning and push-live. Improved cleanup of mysql.db table when a MySQL database is removed. Panel lists now use brand accent colour. Spacing issue on catch-all checkbox.

View originalPermalink
How 12.22.2 went

12.22.1

Changed 1
  • Increased RPC timeout for application role transfer
Fixed 3
  • PostgreSQL resource count now shows correctly in package resource listing where the resource was set to 0 during initial package creation
  • Mitigation for rsync "link dest" regression in 3.2.7-1ubuntu1.4 package
  • Backup restoration no longer returns a false failure notice when no PostgreSQL server is available

It is very important for this release that all servers are updated to the same version to avoid undefined behaviour. As root on each server in your cluster run 'apt update && apt upgrade'. Fixed PostgreSQL resource count now shows correctly in package resource listing where the resource was set to 0 during initial package creation. Mitigation for rsync "link dest" regression in 3.2.7-1ubuntu1.4 package. Backup restoration no longer returns a false failure notice when no PostgreSQL server is available. Enhanced Increased RPC timeout for application role transfer.

View originalPermalink
How 12.22.1 went

12.22.0

Added 2
  • Optionally install the PostgreSQL role to servers within your cluster and provide PostgreSQL hosting to your customers
  • pgsql and pdo_pgsql PHP modules are enabled automatically if a PostgreSQL database is created by the customer
Changed 16
  • Increased email transfer RPC timeout
  • Additional prompt for resellers to set a control panel domain when creating a customer, if no control panel domain has been set
  • phpMyAdmin button added to database listing
  • In the file manager, document roots are now highlighted by a 'globe' icon
  • Connection guidance added to database management page for end users
  • MariaDB LTS initial installation now explicitly sets utf8mb4 server character set in my.cnf
Fixed 5
  • Removed onclick and 'manage' dropdown option for preview aliases which cannot be managed
  • UI for resellers no longer attempts to set deprecated 'processes' resource
  • WordPress username update via WordPress toolkit now functional
  • Corrected chowning logic for Litespeed (commercial) virtual host config files
  • SMTP SASL auth now correctly disabled when configuring a smart host with no credentials

It is very important for this release that all servers are updated to the same version to avoid undefined behaviour. As root on each server in your cluster run 'apt update && apt upgrade'. Documentation here Added It is now possible to optionally install the PostgreSQL role to servers within your cluster and to provide PostgreSQL hosting to your customers. pgsql and pdo_pgsql PHP modules are enabled automatically if a PostgreSQL database is created by the customer. Enhanced Increased email transfer RPC timeout. Additional prompt for resellers to set a control panel domain when creating a customer, if no control panel domain has been set. phpMyAdmin button added to database listing. In the file manager, document roots are now highlighted by a 'globe' icon. Connection guidance added to database management page for end users. MariaDB LTS initial installation now explicitly sets utf8mb4 server character set in my.cnf. Efficiency and performance improvements to internal APIs. dump.rdb (Redis persistent data store) now automaticallyt excluded from website cloning. Improvements to backup transfer guard logic when attempting new website backups. Roundcube version bumped to 1.6.16. Removing all database privileges for a user means the user is no longer listed under the database. Improved error messages for remote MySQL connection failure. Added database size to backup listing. Container IP now automatically allowed for new MySQL users where the application and database roles are on the same server. Plesk importer now handles backups with missing 'directories' param. MySQL databases now listed on the package subscription card where the resource is set to unlimited. Fixed Removed onclick and 'manage' dropdown option for preview aliases which cannot be managed. UI for resellers no longer attempts to set deprecated 'processes' resource. WordPress username update via WordPress toolkit now functional. Corrected chowning logic for Litespeed (commercial) virtual host config files. SMTP SASL auth now correctly disabled when configuring a smart host with no credentials.

View originalPermalink
How 12.22.0 went
1.30.2

Nginx 1.30.2

Security 1
  • Addresses CVE-2026-9256

New nginx stable package. Run apt update && apt upgrade to update. Addresses CVE-2026-9256.

View originalPermalink
How 1.30.2 went
1.30.1

Nginx 1.30.1

Changed 1
  • Update to new nginx stable package
Security 1
  • Address various recent CVEs in Nginx

New nginx stable package. Run apt update && apt upgrade to update. Addresses various recent CVEs in Nginx, see nginx.org for more details.

View originalPermalink
How 1.30.1 went

12.21.6

Changed 1
  • Improved cleanup of expired "run in customer container" tasks initiated by WordPress/Joomla toolkit to prevent potential task queue overrun
Security 1
  • Hide 'mailq' and 'postqueue' binaries from customer container

Security Hide 'mailq' and 'postqueue' binaries from customer container. Enhanced Improved cleanup of expired "run in customer container" tasks initiated by WordPress/Joomla toolkit to prevent potential task queue overrun.

View originalPermalink
How 12.21.6 went

12.21.5

Security 1
  • Hide known setuid binaries from website containers to limit attack vectors from local privilege escalation vulnerabilities in the Linux kernel

Security Due to the recent local privilege escalation (LPE) vulnerabilities in the Linux kernel targetting setuid binaries (CVE-2026-43284, CVE-2026-43500, CVE-2026-31431, etc), this release now hides known setuid binaries from website containers. This does not make your system immune to such vulnerabilities but it does limit potential attack vectors and would frustrate any attacks originating from a compromised CMS or a malicious customer.

View originalPermalink
How 12.21.5 went

12.21.4

Fixed 1
  • Backup destination is now updated on application and email servers when migrating a website that previously had no backup server set to a new backup server

Failure to update backup destination on application/email server when migrating a website which previously had no backup server set to a new backup server.

View originalPermalink
How 12.21.4 went

12.21.3

Changed 1
  • End user must now supply subscription ID when cloning to a new website via API
Removed 1
  • Ability of collaborator role to add or delete Cloudflare tokens via API

Removed ability of collaborator role to add/delete Cloudflare tokens via API. End user must supply subscription ID when cloning to a new website via API.

View originalPermalink
How 12.21.3 went

12.21.2

Changed 2
  • Global backup settings are now re-applied on installation of a new Backup role
  • Expired snapshot cleanup runs less frequently and on a separate scheduler
Fixed 2
  • Improved handling of expired snapshot deletion where directories are missing read or execute permissions
  • File manager can now handle directories which are unreadable due to file permissions

All global backup settings are now re-applied on installation of a new Backup role. Improved handling of expired snapshot deletion where directories are missing read or execute permissions. Expired snapshot cleanup runs less frequently and on a separate scheduler. File manager can now handle directories which are unreadable due to file permissions.

View originalPermalink
How 12.21.2 went

12.21.1

Added 1
  • Unix username generation for numeric domains of more than 8 characters in length
Changed 4
  • Increased Let's Encrypt initial connection timeout
  • Improved Polish language pack
  • Altered RPC keepalive strategy for transfer of backup data between servers
  • Built in PHP extensions displayed in website dashboard now include compulsory extensions loaded at runtime in addition to those compiled in to PHP

Increased Let's Encrypt initial connection timeout. Improvements to Polish language pack. Altered RPC keepalive strategy for transfer of backup data between servers. "Built in" PHP extensions displayed in website dashboard now include compulsory extensions loaded at runtime in addition to those compiled in to PHP. Unix username generation for numeric domains of more than 8 characters in length.

View originalPermalink
How 12.21.1 went

12.21.0

Added 2
  • PHP extension manager now allows enabling any extension built or installed within the global extension directory for the chosen PHP version
  • Developer tools section now lists built-in PHP extensions in addition to optional extensions
Changed 6
  • Incompatible extensions are now disabled automatically when changing PHP version
  • mod_security is now explicitly disabled for the per-server Roundcube installation on Apache and Nginx web servers
  • New backups are no longer started during a backup migration to improve transfer performance
  • Cleanup of expired snapshots is no longer performed during a backup migration to improve transfer performance
  • Improved efficiency and speed of expired snapshot cleanup
  • MySQL 8.4 is now the default version when MySQL is selected due to 8.0 EOL
Fixed 3
  • Enabled PHP extensions now persist after server migration
  • Website backup destination is now performed after a successful transfer of the backup role
  • Prevent excessive logging where the per-server Roundcube website has not yet been created
Removed 1
  • Control panel websites can no longer be mapped to a database server

The PHP extension manager under 'Developer tools' > 'PHP' now allows customers to enable any extension that you have built/installed within the global extension directory for their chosen version of PHP, in place of the predefined list. For guidance on how to add additional configurable extensions click here. The "developer tools" section of the website dashboard now lists built-in PHP extensions in addition to optional extensions. Enabled PHP extensions now persist after server migration. When changing PHP version, any incompatible extensions are now disabled automatically. On Apache and Nginx web server kinds, mod_security is explicitly disabled for the per-server Roundcube installation ( https://mail.customerdomain). Control panel websites can no longer be mapped to a database server. New backups are no longer started during a backup migration to improve transfer performance. Cleanup of expired snapshots is no longer performed during a backup migration to improve transfer performance. Website backup destination is now performed after a successful traansfer of the backup role. Improvements to the effiency/speed of expired snapshot cleanup. MySQL 8.4 is now the default version when MySQL is selected due to 8.0 EOL. Prevent excessive logging where the per-server Roundcube website has not yet been created.

View originalPermalink
How 12.21.0 went
8.4.19

PHP packages

Added 1
  • PHP 8.x packages now include the pgsql and pdo_pgsql extensions, disabled by default

All PHP 8.x packages now ship with the pgsql and pdo_pgsql extensions, disabled by default.

View originalPermalink
How 8.4.19 went
8.1.34

PHP packages

Added 1
  • PHP 8.x packages now include the pgsql and pdo_pgsql extensions, disabled by default

All PHP 8.x packages now ship with the pgsql and pdo_pgsql extensions, disabled by default.

View originalPermalink
How 8.1.34 went
8.2.30

PHP packages

Added 1
  • All PHP 8.x packages now include the pgsql and pdo_pgsql extensions, disabled by default

All PHP 8.x packages now ship with the pgsql and pdo_pgsql extensions, disabled by default.

View originalPermalink
How 8.2.30 went
8.5.4

PHP packages

Added 1
  • PHP 8.x packages now include pgsql and pdo_pgsql extensions, disabled by default

All PHP 8.x packages now ship with the pgsql and pdo_pgsql extensions, disabled by default.

View originalPermalink
How 8.5.4 went
8.3.30

PHP packages

Added 1
  • All PHP 8.x packages now ship with the pgsql and pdo_pgsql extensions, disabled by default

All PHP 8.x packages now ship with the pgsql and pdo_pgsql extensions, disabled by default.

View originalPermalink
How 8.3.30 went

12.20.1

Added 1
  • An optional description has been added to token creation from CLI
Changed 2
  • Supported Roundcube version has been updated to 1.6.15
  • File manager proxy configuration is automatically regenerated when a server's primary IPv4 address is updated in the Enhance user admin interface

An optional description has been added to token creation from CLI. Supported Roundcube version has been updated to 1.6.15. File manager proxy configuration is automatically regenerated when a server's primary IPv4 address is updated in the Enhance user admin interface.

View originalPermalink
How 12.20.1 went

12.20.0

Changed 1
  • Per-server Roundcube now auto-updates to the latest supported version, currently 1.6.14
Fixed 1
  • Minor UI rendering issues during role installation

Per-server Roundcube (responsible for https://mail.domain) now auto-updates to the latest supported Roundcube version, currently 1.6.14. Minor UI rendering issues during role installation.

View originalPermalink
How 12.20.0 went

12.19.0

Added 2
  • Service websites can have their PHP version changed with the bulk update tool
  • Onboarding help card can now be permanently dismissed across all devices
Changed 3
  • Default PHP version for Central Roundcube and phpMyAdmin is now 8.3
  • Joomla installation now allows 10 character passwords
  • Swap limit system resource can now be set to 0

Default PHP version for Central Roundcube and phpMyAdmin is now 8.3. Service websites can have their PHP version changed with the bulk update tool. Onboarding help card can now be permanently dismissed across all devices. Please hard refresh in your browser prior to dismissing the banner. Joomla installation now allows 10 character passwords. Swap limit (system resource) can now be set to 0.

View originalPermalink
How 12.19.0 went

12.18.0

Added 1
  • Joomla one click installer that automatically makes Joomla available to users when 'Allow software installer' is enabled on a package
Changed 2
  • Default PHP version for new websites and packages is now 8.3
  • Underscores are now valid in NS names

Joomla one click installer. If 'Allow software installer' is enabled on a package, Joomla will automatically be available to the user. Default PHP version for new websites and packages is now 8.3. Underscores are now valid is NS names.

View originalPermalink
How 12.18.0 went

12.17.0

Added 2
  • Roundcube SSO support
  • Option to overwrite conflicting files when unzipping with the file manager
Changed 2
  • Improved Vietnamese language pack
  • Overriding website memory limit to unlimited is now applied immediately
Fixed 2
  • File manager no longer allows quota bypass
  • Fixed typo on Plesk importer

It is very important for this release that all servers are updated to the same version to avoid undefined behaviour. As root on each server in your cluster run 'apt update && apt upgrade'. Roundcube SSO support. This requires SSO to be enabled on a per-server basis. Documentation can be found here. Improved Vietnamese language pack File manager no longer allows quota bypass Overriding website memory limit to unlimited is now applied immediately Option to overwrite conflicting files when unzipping with the file manager Fixed typo on Plesk importer

View originalPermalink
How 12.17.0 went

12.16.1

Changed 1
  • Dovecot reload after adding a domain is now debounced to prevent excessive reloading when a large amount of domains are added in a short period of time

Dovecot reload after adding a domain is now debounced to prevent excessive reloading when a large amount of domains are added in a short period of time.

View originalPermalink
How 12.16.1 went

12.16.0

Added 2
  • Ability to clone to staging from the website dashboard hero section
  • Database sizes now show in database listing
Changed 1
  • Website size now includes home directory, databases and emails
Fixed 3
  • Subscription disk usage now properly counts database and email usage
  • Clone to staging can no longer bypass staging website limit
  • Global smart host is now applied to standalone control panel servers on save

The ability to clone to staging from the website dashboard hero section Database sizes now show in database listing Website size now includes home directory, databases and emails Subscription disk usage now properly counts database and email usage Clone to staging can no longer bypass staging website limit Global smart host is now applied to standalone control panel servers on save

View originalPermalink
How 12.16.0 went

12.15.1

Fixed 2
  • Impersonation now persists when a hard refresh is performed in the browser
  • Swap limit now displays correctly on packages created on versions < 12.15.0

Impersonation now persists when a hard refresh is performed in the browser. Swap limit now displays correctly on packages created on versions < 12.15.0.

View originalPermalink
How 12.15.1 went

12.15.0

Added 2
  • Restore individual files from an Enhance website backup
  • Limit swap usage under system resource limits
Changed 3
  • S3 backups are now tagged with 'S3' to indicate that granular file restores are not supported
  • IMAP module enabled by default on PHP 8.4 and 8.5 for new and existing websites
  • imagick module enabled by default on PHP 8.5 for new and existing websites
Fixed 1
  • Database restore can now handle databases which have been dropped from the command line

It is very important for this release that all servers are updated to the same version to avoid undefined behaviour. As root on each server in your cluster run 'apt update && apt upgrade'. The ability to restore individual files from an Enhance website backup. S3 backups are now tagged with 'S3' (this is visible to the end user). This is essential to highlight as S3 backups do not allow granular file restores. Ability to limit swap usage under "system resource limits". Packages created before the upgrade to 12.15.0 may show the swap limit as being 0 but this will remain at the previous setting (unlimited) until the package is updated. Database restore can now handle databases which have been dropped from the command line. IMAP module enabled by default on PHP 8.4 and 8.5 (new and existing websites). imagick module enabled by default on PHP 8.5 (new and existing websites).

View originalPermalink
How 12.15.0 went

12.14.3

Changed 3
  • Subscription recalculation is now forced after successful website clone
  • Cloning process only checks for database resource on the destination package where databases exist on the source website
  • Improved fault tolerance for automated o/s package installation (apt)
Fixed 1
  • Corrected subscription bandwidth calculation

Corrected subscription bandwidth calculation. Subscription recalculation is now forced after successful website clone. Cloning process only checks for database resource on the destination package where databases exist on the source website. Improved fault tolerance for automated o/s package installation (apt).

View originalPermalink
How 12.14.3 went

12.14.2

Changed 3
  • Check /usr/bin/composer for validity on installation of ecp-core and re-download composer if not valid
  • Apply stricter RPC timeouts to DNS sync queue to prevent slow queue processing when some DNS servers in the cluster are offline
  • Improve miscellaneous UI elements
Fixed 2
  • Fix race condition causing a node.js application not to be placed into the correct control group when automatically started via Enhance
  • Remove duplicate API call for memory usage on server management dashboard

Race condition causing a node.js application, when automatically started via Enhance, not to be placed into the correct control group. Removed duplicate API call for memory usage on server management dashboard. /usr/bin/composer is now checked for validity on installation of ecp-core and, if not valid, composer is re-downloaded. Miscellaneous UI improvements. Stricter RPC timeouts to DNS sync queue to prevent slow queue processing where some DNS servers in the cluster are offline.

View originalPermalink
How 12.14.2 went

12.14.1

Changed 3
  • Application role installation now explicitly installs the mariadb-client package if the database role is not installed
  • Database role transfer now checks mysql client version for appropriate command line arguments when the transfer is initiated by a standalone app server with no database role installed
  • Improved Polish language pack
Fixed 1
  • Incorrect CPU core count on virtual machines where cores are presented by the hypervisor to the guest as separate physical CPUs

Incorrect CPU core count on virtual machines where cores are presented by the hypervisor to the guest as separate physical CPUs. Application role installation now explicitly installs the mariadb-client package if the database role is not installed. Database role transfer now checks mysql client version for appropriate command line arguments when the transfer is initiated by a standalone app server with no database role installed. Improved Polish language pack.

View originalPermalink
How 12.14.1 went

12.14.0

Added 4
  • Server specifications now shown in master organisation servers dashboard
  • Customers with dedicated subscriptions can now view server specifications, load, memory and swap usage
  • Traditional Chinese (Taiwan) locale (Beta)
  • Decommission and delete options are now accessible for an offline server
Changed 5
  • Backup settings are now explicitly re-applied to servers on role installation and reinstallation
  • Migration of application role to a server where the email role is already placed now explicitly applies the local and remote setting per domain from the control panel database
  • WordPress SSO plugin is now downloaded and cached at a server level for faster activation and avoidance of Github API rate limits
  • Reduced API calls from servers page for better performance
  • Improved performance and reduced memory usage of website DNS resolution check
Fixed 1
  • Editing IP in connectivity check modal no longer resets the IP when the existing IP is totally removed

Server specifications now shown in master organisation "servers" dashboard. Customers with dedicated subscriptions can now view server specifications, load, memory and swap usage. Traditional Chinese (Taiwan) locale (Beta). Editing IP in "connectivity check" modal no longer resets the IP when the existing IP is totally removed. It is now possible to access decommission/delete options for an offline server. Backup settings are now explicitly re-applied to servers on role installation/reinstallation. Migration of application role to a server where the email role is already placed now explicitly applies the local/remote setting per domain from the control panel database. WordPress SSO plugin is now downloaded and cached at a server level for faster activation and avoidance of Github API rate limits. Reduced API calls from /servers page for better performance. Improved performance and reduced memory usage of website DNS resolution check.

View originalPermalink
How 12.14.0 went

12.13.2

Added 2
  • Connectivity diagnosis for servers which are unreachable from the control panel server
  • Additional error logging for S3 errors
Changed 1
  • On OpenLiteSpeed install, systemctl daemon-reload is retried multiple times
Fixed 1
  • Fix for a cPanel import where home dir on the cPanel side is non-standard

Connectivity diagnosis for servers which are unreachable from the control panel server. Additional error logging for S3 errors. On OpenLiteSpeed install, "systemctl daemon-reload" is retried multiple times. Fix for a cPanel import where home dir on the cPanel side is non-standard.

View originalPermalink
How 12.13.2 went

12.13.1

Changed 1
  • When a Node.js app is enabled on a website, only the primary domain is proxied instead of all domains
Fixed 3
  • Exclude .well-known/acme-challenge from proxy when the root of a domain is proxied to a Node.js app on all web server kinds
  • Web server icon is now immediately updated when changing the web server through the application role settings
  • Explicitly mount /var/roundcube to the website container to resolve password change plugin issues

When the root of a domain is proxied to a Node.js app, .well-known/acme-challenge is explicitly excluded from the proxy on all web server kinds. When a Node.js app is enabled on a website, only the primary domain is proxied. If you would like to point multiple domains at the same app, add them as aliases and redirect them with .htaccess in the document root. When changing the web server through the application role settings, the icon is immediately updated with the selected web server kind. /var/roundcube is now explicitly mounted to the website container to solve a problem with the password change plugin where /var was a separate mount point on the host o/s.

View originalPermalink
How 12.13.1 went

12.13.0

Added 1
  • Users on per-server Roundcube can now change their password in the Roundcube UI

Users on the per-server Roundcube ( https://mail.customer-domain) can now change their password in the Roundcube UI.

View originalPermalink
How 12.13.0 went
12.12.0

Added

Added 5
  • DS/CAA records can now be added to DNS zones and DNS templates
  • Default TTL setting can now be set under Platform Settings
  • LSAPI_CHILDREN can now be limited via the website overrides panel when the web server is OpenLitespeed/Litespeed
  • Backups can now be disabled on a website via the website overrides panel
  • WordPress username can now be an email
Changed 6
  • When creating a new record if a TTL is not specified, it now mirrors the SOA TTL
  • PHP FPM settings are now hidden from website overrides panel when the web server is Litespeed/OpenLitespeed
  • Mariadb installation now uses alternative apt repository
  • Increased timeouts for Let's Encrypt provisioning (automatic and manual)
  • Improved NL language pack
  • Improved Turkish language pack

DS/CAA records can now be added to DNS zones and DNS templates. Default TTL setting can now be set under Platform Settings. The default TTL is 1400 sec and will only apply to new websites. When creating a new record if a TTL is not specified, it now mirrors the SOA TTL. Where the web server is OpenLitespeed/Litespeed, it is now possible to limit LSAPI_CHILDREN via the website overrides panel. It is now possible to disable backups on a website via the website overrides panel. A WordPress username can be an email. Improved NL language pack. Improved Turkish language pack. PHP FPM settings now hidden from website overrides panel when the web server is Litespeed/OpenLitespeed. Mariadb installation now uses alternative apt repository. Increased timeouts for Let's Encrypt provisioning (automatic and manual).

View originalPermalink
How 12.12.0 went
12.11.10

Added

Added 2
  • Display warnings in UI when I/O and IOPS limits are set too low on package level and per-website override
  • Add Hanken Grotesk Google font
Changed 5
  • MariaDB repo config no longer uses mariadb install script
  • Update ghost button consistency
  • Increase timeout for manual Let's Encrypt issuance
  • Improve Turkish language pack
  • Redesign logs page
Fixed 2
  • Correct IOPS limit calculations
  • Fix IO bandwidth being applied in the wrong order of magnitude (gigabytes instead of megabytes)

Warnings in UI when I/O and IOPS limits are set too low on package level and per-website override. Hanken Grotesk Google font. MariaDB repo config no longer uses mariadb install script. Ghost button consistency. IOPS limit calculations. IO bandwidth was applied in the wrong order of magnitude (gigabytes instead of megabytes). Warning: if you had set very low IO limits previously and these were not being enforced, they will be enforced on the next container update. Check your package settings are sensible. Increased timeout for manual Let's Encrypt issuance Turkish language pack improvements. Logs page redesign.

View originalPermalink
How 12.11.10 went
12.11.9

Enhanced

Updated mysql.com trusted GPG key.

View originalPermalink
How 12.11.9 went
12.11.8

Fixed

Changed 2
  • Reduced memory usage of appcd service during backup runs
  • System MTA is explicitly installed and configured during control panel initialisation
Fixed 2
  • Fixed double search and replace on WordPress site URL during cloning or push-live when perform search and replace is selected
  • Failure to update WordPress site URL during website cloning is now non-fatal

Double search/replace on WordPress site URL during cloning or push-live when "perform search and replace" is selected. Reduced memory usage of appcd service during backup runs. System MTA is explicitly installed and configured during control panel initialisation. Failure to update WordPress site URL during website cloning is now non-fatal.

View originalPermalink
How 12.11.8 went
12.11.7

Fixed

Changed 2
  • The list of endpoints accessible to a login session which has not yet completed 2 factor authentication has been further restricted
  • German translation improvements
Fixed 1
  • Resellers can no longer create customers via the API without the resellerSubResellers allowance on their own package

A reseller can no longer create customers via the API without the "resellerSubResellers" allowance on their own package. German translation improvements. The list of endpoints accessible to a login session which has not yet completed 2 factor authentication has been further restricted.

View originalPermalink
How 12.11.7 went
12.11.6

Enhanced

Changed 2
  • libsasl2-modules package is now specifically installed alongside Postfix MTA
  • Tighter rate limiting for 2FA
Fixed 1
  • Reinstated missing context menu on database user listing with table row height fix
Removed 2
  • Support user can no longer change screenshot settings
  • Master organisation collaborator can no longer view activity log

libsasl2-modules package is now specifically installed alongside Postfix MTA. Support user can no longer change screenshot settings. Master organisation collaborator can no longer view activity log. Reinstated missing context menu on database user listing with table row height fix. Tighter rate limiting for 2FA.

View originalPermalink
How 12.11.6 went
12.11.5

Fixed

Changed 1
  • Improved validation of collaborator access level
Fixed 2
  • White page bug in UI when managing control panel websites
  • External application names in Openlitespeed web server are now unique when using Node.js

White page bug in UI when managing control panel websites. External application names in Openlitespeed web server are now unique when using Node.js. Improved validation of collaborator access level.

View originalPermalink
How 12.11.5 went
12.11.4

Fixed

Changed 4
  • Deleting an addon domain now also removes the DNS zone
  • Improved Ukrainian language pack
  • Improved tag functionality on subscriptions
  • Inline logs and general UI improvements to PHP section
Fixed 5
  • App role migration reinstates Node.js deployments
  • Prevent system actions by Support user
  • API no longer allows % in email username
  • Cleanup of created databases and database users if failure occurs during the creation phase
  • Download email data no longer shows on dashboard where no email server exists

App role migration reinstates Node.js deployments. Prevent system actions by Support user. Deleting an addon domain now also removes the DNS zone. API no longer allows % in email username. Cleanup of created databases and database users if failure occurs during the creation phase. "Download email data" no longer shows on dashboard where no email server exists. Improved Ukrainian language pack. Improved 'tag' functionality on subscriptions. Inline logs and general UI improvements to 'PHP' section.

View originalPermalink
How 12.11.4 went
12.11.3

Fixed

Fixed 1
  • UI bug when packages are created by a reseller where the reseller's own package does not support Node.js

UI bug when packages are created by a reseller where the reseller's own package does not support Node.js.

View originalPermalink
How 12.11.3 went
12.11.2

Fixed

Changed 2
  • Invited master organisation support and business users can no longer update the licence key
  • appinit now sets PHPRC environment variable when starting lsphp to prevent loading of custom php.ini from the home directory

Invited master organisation support and business users can no longer update the licence key. appinit now sets PHPRC environment variable when starting lsphp to prevent loading of custom php.ini from the home dir where it has been imported from another panel.

View originalPermalink
How 12.11.2 went
12.11.1

Security

Security 1
  • Fix user role permission handling in the control panel API

This update contains a security patch related to user role permission handling in the control panel API. We recommend applying it as soon as possible.

View originalPermalink
How 12.11.1 went
12.11.0

IMPORTANT

Added 1
  • Node.js support
Changed 3
  • Performance improvements to how containers are started
  • Improvements to simplified Chinese language pack
  • Improved Portuguese language pack
Fixed 1
  • Force HTTPS setting now properly redirects requests to /api paths instead of bypassing them when running Apache on the control panel web server

Prior to this version, "force https" if enabled on your control panel domain would not redirect requests for paths beginning with /api when running Apache on your control panel web server. This behaviour has been corrected and requests to /api now obey the "force https" setting. If /api is accessed on port 80, a 301 response will be sent. Node.js support. See documentation Performance improvements to how containers are started. Improvements to simplified Chinese language pack. Improved Portuguese language pack.

View originalPermalink
How 12.11.0 went
12.10.6

Fixed

Changed 2
  • Add additional validation of MySQL database names
  • Reduce concurrency for deletion of expired backup snapshots to lower load on backup servers with limited I/O

Additional validation of mysql database names. Reduced concurrency for deletion of expired backup snapshots to reduce load on backup servers with limited i/o.

View originalPermalink
How 12.10.6 went
12.10.5

Fixed

Further improvements to validation of pre-hashed mailbox passwords.

View originalPermalink
How 12.10.5 went
12.10.4

Fixed

Fixed 1
  • Improved validation of pre-hashed mailbox passwords to prevent potential breakage of dovecot user database

Improved validation of pre-hashed mailbox passwords to prevent potential breakage of dovecot user db.

View originalPermalink
How 12.10.4 went
12.10.3

Enhanced

Added 1
  • Additional Content-Type header for auto reply messages to fix Roundcube display issue
Changed 1
  • Improved image handling and detection for SVG images in branding settings

Improved image handling and detection for SVG images in branding settings. Added additional Content-Type header for auto reply messages to fix Roundcube display issue.

View originalPermalink
How 12.10.3 went
12.10.1

Enhanced

Changed 1
  • Document root permissions are now checked and reset after backup upload
Fixed 2
  • Downloadable backups now skip unreadable files
  • Home dir data is no longer copied when downloading email-only backup where the app and email roles are placed on the same server

Downloadable backups skip unreadable files. Document root permissions are now checked/reset after backup upload. Home dir data no longer copied when downloading email-only backup where the app + email roles are placed on the same server.

View originalPermalink
How 12.10.1 went
12.10.2

Fixed

Fixed 1
  • UI white screen bug when managing control panel and central webmail websites

UI white screen bug when managing control panel and central webmail websites. Clear your browser cache after applying this update.

View originalPermalink
How 12.10.2 went
12.10.0

Added

Added 2
  • Ability to download and upload an Enhance website backup
  • Azerbaijani language pack (beta)
Changed 2
  • Improved Norwegian language pack
  • Pre-existing mailbox directory is no longer a fatal error if owned by the website user
Fixed 1
  • Intermittent bug with maildir user creation group ownership
Removed 1
  • Upload limit for file uploads to the Enhance panel

Ability to download/upload an Enhance website backup. See documentation Azerbaijani language pack (beta). Improved Norwegian language pack. Fixed intermittent bug with maildir user creation group ownership. Pre-existing mailbox directory is no longer a fatal error if owned by the website user. Removed upload limit for file uploads to the Enhance panel.

View originalPermalink
How 12.10.0 went
12.9.9

Enhanced

Changed 1
  • On installation, Enhance now installs the latest version of LiteSpeed (v6.3.4)

On installation, Enhance now installs the latest version of LiteSpeed (v6.3.4). Only run the below command if you are using commercial Litespeed Existing Enhance users running LiteSpeed can update to Litespeed v6.3.4 by running the following command on each server running LiteSpeed; mv /usr/local/lsws /usr/local/lsws_old && appcd-cli change-webserver lite-speed put-your-serial-no-here

View originalPermalink
How 12.9.9 went
12.9.8

Enhanced

Added 2
  • Display a user's 2FA status on the Users page
  • Enable deletion of a preview domain
Changed 1
  • S3 backup is now tolerant of missing mail directories
Fixed 1
  • Moving an application role away from a server whilst leaving the email role behind now removes the user crontab from the source server

A users 2FA status is now displayed on the 'Users' page. It is now possible to delete a preview domain. See documentation S3 backup is now tolerant of missing mail directories. Moving an application role away from a server whilst leaving the email role behind now removes the user crontab from the source server.

View originalPermalink
How 12.9.8 went
12.9.7

Enhanced

Added 1
  • A reseller can set an upper limit on dynamic mailbox size if their own subscription is unlimited
Changed 2
  • Improved startup time of appcd for servers with a high website count (5000+)
  • Increased RPC timeout for post migration success cleanup
Fixed 1
  • A reseller can be downgraded to a non-reseller package if they have previously created and deleted customers

Improved startup time of appcd for servers with a high website count (5000+). Increased RPC timeout for post migration success cleanup. A reseller can be downgraded to a non-reseller package if they have previously created and deleted customers. A reseller can set an upper limit on dynamic mailbox size if their own subscription is unlimited.

View originalPermalink
How 12.9.7 went
12.9.6

Fixed

Fixed 2
  • appcd process monitor no longer waits for pids it has not explicitly killed
  • Prevented double slash in nginx SCRIPT_FILENAME env var passed to PHP

appcd process monitor no longer waits for pids it has not explicitly killed. Prevention of "double slash" in nginx SCRIPT_FILENAME env var passed to PHP

View originalPermalink
How 12.9.6 went
12.9.5

Fixed

Updating preinstalled theme on an existing package had no effect.

View originalPermalink
How 12.9.5 went
12.9.4

Enhanced

Added 1
  • appinit will clean up orphaned processes that it becomes the owner of due to the original parent process ending
Changed 3
  • Cloudflare integration now explicitly sends quotation marks around TXT record
  • Onboarding of new servers to an existing cluster will ignore any ipv6 records in DNS
  • Additional guidance in ecp join error output
Fixed 1
  • It was not possible to remove a domain mapping from a website if another domain existed which ended in the domain to be deleted

appinit will clean up orphaned processes that it becomes the owner of due to the original parent process ending. Cloudflare integration now explicitly sends quotation marks around TXT record. Onboarding of new servers to an existing cluster will ignore any ipv6 records in DNS. Additional guidance in ecp join error output. It was not possible to remove a domain mapping from a website if another domain existed which ended in the domain to be deleted.

View originalPermalink
How 12.9.4 went
12.9.3

Added

Added 1
  • Limit the number of DNS records that can be created per domain on a package level
Changed 2
  • Increased timeouts for wp-cli, composer and ioncube loader install during ecp-core package postinst script
  • ecp init now sets noninteractive environment variable when calling apt-get to aid users who have preinstalled Enhance via automation
Fixed 1
  • Installation of control panel now succeeds where the /tmp directory is a separate mount point

It is now possible to limit the number of DNS records that can be created per domain on a package level. Increased timeouts for wp-cli, composer and ioncube loader install during ecp-core package postinst script. ecp init now sets noninteractive environment variable when calling apt-get to aid users who have preinstalled Enhance via automation. Installation of control panel now succeeds where the /tmp directory is a separate mount point.

View originalPermalink
How 12.9.3 went
12.9.2

Fixed

Fixed 2
  • Custom backup restore on S3
  • Database failure when restoring S3 full website backup

Custom backup restore not possible on S3. Database failure to restore when restoring S3 full website backup.

View originalPermalink
How 12.9.2 went
12.9.1

Fixed

UI bug when editing empty user cron tab.

View originalPermalink
How 12.9.1 went
12.9.0

Added

Added 1
  • Each server within a cluster now displays the Enhance version it is running
Changed 3
  • PHP SAPI now starts on demand by default to reduce memory usage from idle websites
  • Idle websites now use approximately 2MB of RAM instead of 60MB
  • Staging domains are now noindex by default for newly added websites

By default PHP SAPI starts on demand to reduce memory usage from idle websites, whilst maintaining containerisation. Idle websites now use approximately 2mb of RAM not 60mb. Each server within a cluster now displays the Enhance version it's running. Staging domains are now 'noindex' by default to newly added websites.

View originalPermalink
How 12.9.0 went

12.8.0

Added 4
  • Catch-all email addresses
  • Access token IP lockdown
  • Ability to edit roles for existing access tokens
  • Access token management added to ecp CLI tool
Changed 1
  • Host and Port prompts added to the FTP Login credential card

Added Catch-all email addressses. Documentation can be found here. Access token IP lockdown. Ability to edit roles for existing access tokens. Access token management added to ecp CLI tool. Enhanced 'Host' and 'Port' prompts added to the FTP Login credential card.

View originalPermalink
How 12.8.0 went

12.7.1

Changed 1
  • Email role transfer RPC timeout increased to 1 day
Fixed 2
  • UI rendering error on customer management page, email tab
  • Excessive truncation of file size on website backup card

Fixed UI rendering error on customer management page, email tab. Excessive truncation of file size on website backup card. Enhanced Email role transfer RPC timeout increased to 1 day.

View originalPermalink
How 12.7.1 went

12.7.0

Added 1
  • Master organisation can restore backups of websites which were permanently deleted if they were backed up using the Enhance backup role
Changed 8
  • Website restore logic improved for customers using the Enhance backup role
  • Disaster recovery logic improved for customers using the Enhance backup role
  • Email and mailbox logic moved to the application server (appcd) in preparation for future portable backup and CLI restore functionality
  • Norwegian language pack improved
  • Polish language pack improved
  • Backups using the Enhance backup role now contain DNS data
  • WordPress toolkit can now handle deprecated warnings injected inline from plugins such as Elementor
  • Error messages for RPC connectivity improved
Fixed 1
  • Group ID bug in file manager (filerd) service
Security 1
  • This update contains breaking API changes related to emails, see API spec for details

Important: You must update all the servers in your cluster when applying this update. Important: This update contains breaking API changes related to emails, see API spec for details. Added It is now possible for the master organisation to restore backups of websites which were permanently deleted if they were backed up using the Enhance backup role. Note, it may not always be possible to restore backups created prior to version 12.7.0. Documentation can be found here. Enhanced Improvements to website restore logic for customers using the Enhance backup role. Improvements to disaster recovery logic for customers using the Enhance backup role. Email and mailbox logic moved to the application server (appcd) in preparation for future "portable backup" and CLI restore functionality. Improvements to Norwegian language pack. Improvements to Polish language pack. Backups using the Enhance backup role now contain DNS data. WordPress toolkit can now handle deprecated warnings injected inline from plugins such as Elementor. Improved error messages for RPC connectivity. Fixed Group ID bug in file manager (filerd) service.

View originalPermalink
How 12.7.0 went

12.6.2

Changed Default Roundcube version for per-server installation is now 1.6.11.

View originalPermalink
How 12.6.2 went

12.6.1

Changed 7
  • Automatic and manual backups will now retry the rsync operation if it fails on the first attempt
  • Backup process can now recover if the home directory for the backup user is manually deleted
  • Backup process is now less sensitive to hard disk quota issues on the source server
  • Upgrade from v11 now explicitly sets www-data group ownership on public_html even if it does not match the document root of a mapped domain
  • No S3 settings is now logged to the trace log rather than the error log to avoid excessive log noise
  • MariaDB repo download script now forces ipv4 to mitigate an issue with some ipv6 IPs being blocked by MariaDB
  • Improvements to wp-cli cache warmer utility
Fixed 4
  • Mitigation for issue where email and website backup run on separate servers at the exact same time
  • Bandwidth counter (total) rounding error
  • Resource calculation endpoint now saves the result to the database
  • Moving a standalone database role from a decommissioned server did not update the remote SQL settings on the target application server

Enhanced Automatic and manual backups will now retry the rsync operation if it fails on the first attempt. Backup process can now recover if the home directory for the backup user is manually deleted. Backup process is now less sensitive to hard disk quota issues on the source server. Upgrade from v11 now explicitly sets www-data group ownership on public_html even if it does not match the document root of a mapped domain. "No S3 settings" is now logged to the trace log rather than the error log to avoid excessive log noise. MariaDB repo download script now forces ipv4 to mitigate an issue with some ipv6 IPs being blocked by MariaDB. Improvements to wp-cli cache warmer utility. Fixed Mitigation for issue where email and website backup run on separate servers at the exact same time. Bandwidth counter (total) rounding error. Resource calculation endpoint now saves the result to the database. Moving a standalone database role from a decommissioned server did not update the remote SQL settings on the target application server.

View originalPermalink
How 12.6.1 went

12.6.0

Added 4
  • Reinstated backup failure logging to the activity log for customers on version 12.x
  • Attempting to create a central webmail website with no database role installed now generates a descriptive error
  • Added mitigation for incompatible collations when cloning a website from a server with MariaDB to a server with MySQL
  • SuperAdmin can now set admin lockdown via API to allow for automation with bearer token
Changed 3
  • Moved logic for management of local .my.cnf file to appcd service for improved performance
  • Local .my.cnf is now checked and repaired before each backup or restore operation
  • Hide /var/lib/mysql and /var/lib/docker totally from website containers
Fixed 3
  • Race condition where the local .my.cnf had been modified and website files were restored before databases which prevented a restore of the database
  • Descriptive text for email rate limits was incorrect in English language
  • Issue backing up databases with massive text rows on some versions of MariaDB

Important: You must update all the servers in your cluster when applying this update. Enhanced Reinstated backup failure logging to the activity log for customers on version 12.x. Moved logic for management of local .my.cnf file to appcd service for improved performance. Local .my.cnf is now checked and repaired before each backup or restore operation. Attempting to create a central webmail website with no database role installed now generates a descriptive error. Added mitigation for incompatible collations when cloning a website from a server with MariaDB to a server with MySQL. SuperAdmin can now set admin lockdown via API to allow for automation with bearer token. /var/lib/mysql and /var/lib/docker now totally hidden from website containers. Fixed Race condition where the local .my.cnf had been modified and website files were restored before databases which prevented a restore of the database. Descriptive text for email rate limits was incorrect in English language. System commands in platform update instructions excluded from translation. Issue backing up databases with massive text rows on some versions of MariaDB.

View originalPermalink
How 12.6.0 went

12.5.1

Changed 1
  • Added additional guidance on licence settings page where licence status is Unknown
Fixed 1
  • SSO no longer requires a hard refresh when a previously expired session existed

Fixed Using SSO when a previously expired session existed would require a hard refresh. Enhanced Additional guidance on licence settings page where licence status is Unknown.

View originalPermalink
How 12.5.1 went

12.5.0

Added 1
  • Ability to restrict access to the Master Organisation by IP address for interactive login and SSO
Changed 2
  • pt-PT language pack improvements
  • Plesk importer can now handle generated XML with self-closing tags
Fixed 3
  • Incorrect domain sort order on email creation for users of Chrome browser
  • Auto generated invite link was missing :2087 for clusters without a control panel domain configured
  • Prohibited domain UI was incorrectly shown to resellers

Added Ability to restrict access to the Master Organisation (interactive login and SSO) by IP address. This does not affect access tokens. Click here for documentation. Fixed Incorrect domain sort order on email creation for users of Chrome browser. Auto generated invite link was missing :2087 for clusters without a control panel domain configured. Prohibited domain UI was incorrectly shown to resellers. Enhanced pt-PT language pack improvements. With thanks to João Costa – WebDig Host. Plesk importer can now handle generated XML with self-closing tags, created by some versions of Plesk.

View originalPermalink
How 12.5.0 went

12.4.0

Added 1
  • Setting to enable email server stickiness, to default the Email role for a website to be placed on the same server as the Application role if the Email role is installed
Changed 1
  • Improved guidance for setting of HELO name
Fixed 1
  • Customer and subscription stickiness were incorrectly applied when toggled in the UI

Added Setting to enable "email server stickiness", to default the Email role for a website to be placed or the same server as the Application role if the Email role is installed. Fixed Customer and subscription stickiness were incorrectly applied when toggled in the UI. Enhanced Improved guidance for setting of HELO name.

View originalPermalink
How 12.4.0 went

12.3.3

Added 1
  • Port 587 added to email client config guidance
Changed 9
  • Primary domain now appears at the top of the domain selector when creating a new email address
  • In file manager, files with non-utf8 encoded filenames no longer cause a fatal error, instead any invalid characters are displayed as replacement character
  • appcd-cli list-websites now returns JSON output
  • Hebrew language improvements
  • More informative error is given when a reseller or master organisation has no phpMyAdmin domain configured
  • Custom CORS feature now permits multiple origins
Fixed 5
  • Redis status persisted on website migration
  • Ioncube status persisted on website migration
  • Package setting for automatic installation of WooCommerce now working
  • WP plugin list tolerates boolean update parameter in json plugin listing from wp-cli
  • File manager text editor now functional in RTL locales

Fixed Redis status persisted on website migration. Ioncube status persisted on website migration. Package setting for automatic installation of WooCommerce now working. WP plugin list tolerates boolean "update" parameter in json plugin listing from wp-cli. File manager text editor now functional in RTL locales. Enhanced Primary domain now appear at the top of the domain selector when creating a new email address. In file manager, files with non-utf8 encoded filenames no longer cause a fatal error, instead any invalid characters are displayed as �. appcd-cli list-websites now returns JSON output. Hebrew language improvements. A more informative error is given when a reseller or master organisation has no phpMyAdmin domain configured. Custom CORS feature now permits multiple origins. Openlitespeed is now explicitly restarted after installation to pick up Enhance systemd override drop-in. Openlitespeed is now explicitly uninstalled when changing to another web server type. WordPress auto discovery tolerates longer database names from imported websites. Added port 587 to email client config guidance.

View originalPermalink
How 12.3.3 went

12.3.2

Changed 2
  • Improved French language pack
  • orchd service will now wait for initialisation of master organisation before starting internal workers
Fixed 2
  • Fixed intermittent issue with restoring large database tables when using S3-compatible backup system
  • Fixed failure to remove expired snapshots when using S3-compatible backup system

Enhanced French language pack improvements. orchd service will now wait for initialisation of master organisation before starting internal workers. Fixed Intermittent issue with restoring large database tables when using S3-compatible backup system. Failure to remove expired snapshots when using S3-compatible backup system.

View originalPermalink
How 12.3.2 went

12.3.1

Changed 3
  • Improved licence check logic in orchd service
  • Website backup restore now removes files which exist on the website but do not exist in the chosen restore point, matching behaviour from versions before 12.0.0
  • Improved pt-BR locale

Enhanced Improvements to licence check logic in orchd service. Website backup restore now matches previous behaviour from versions < 12.0.0; files which exist on the website but which do not exist in the chosen restore point are removed. Improved pt-BR locale.

View originalPermalink
How 12.3.1 went

12.3.0

Added 1
  • The createWebsite endpoint now installs WordPress and any preinstalled plugins and themes if specified on the customer's hosting package
Changed 3
  • Norwegian language pack improved
  • Arabic language pack improved
  • Ukrainian language pack improved
Fixed 2
  • Added new override for apache2 systemd unit to mitigate problem with large file uploads when mod_security is enabled
  • Fixed internal filerd token timeout during large website clones

Enhanced The createWebsite endpoint will now install WordPress and any preinstalled plugins and themes if specified on the customer's hosting package. This removes the need for separate API calls. Important if you have an external integration, please verify compatibility before upgrading Enhance to this version. Improved Norwegian language pack. Improved Arabic language pack. Thank you to WebGee Ltd ( https://webgee.com). Improved Ukranian language pack. Fixed New override for apache2 systemd unit to mitigate problem with large file uploads when mod_security is enabled. Internal filerd token timeout during large website clones.

View originalPermalink
How 12.3.0 went

12.2.0

Added 2
  • Hebrew language pack
  • Support for legacy PHP 5.2 - 5.5
Changed 2
  • Improved Portugese and Bulgarian language pack
  • Added Restart=always to lshttpd systemd override
Fixed 2
  • Fix for missing /dev/tty device in customer SSH environment
  • CHMOD setting now applies recursively

Added Hebrew language pack (kindly provided by Devim Cloud) Support for legacy PHP 5.2 - 5.5. Running PHP 5.2, PHP 5.3, PHP 5.4 and PHP 5.5 is optional. To provide these PHP version you will need to manually install the packages on your platform. Follow this guide. Enhanced Improved Portugese and Bulgarian language pack. Added Restart=always to lshttpd systemd override. Fixed Fix for missing /dev/tty device in customer SSH environment. CHMOD setting now applies recursively.

View originalPermalink
How 12.2.0 went

12.1.0

Added 1
  • Support for sending custom access-Host-Allowed-Origin header from control panel API
Changed 2
  • Backup process is now tolerant of the previous snapshot having been manually removed
  • WordPress plugin installation API can now accept a URL for installation of plugins not registered with WordPress.org

Added Support for sending custom access-Host-Allowed-Origin header from control panel API. Enhanced Backup process is now tolerant of the previous snapshot having been manually removed. WordPress plugin installation API can now accept a URL for installation of plugins not registered with WordPress.org.

View originalPermalink
How 12.1.0 went

12.0.28

Changed 1
  • Improved logic for error handling in backups to the Enhance backup target

Enhanced Improved logic for error handling in backups to the Enhance backup target.

View originalPermalink
How 12.0.28 went

12.0.29

Enhanced Automatic rebuild of resolv.conf within postfix chroot.

View originalPermalink
How 12.0.29 went

12.0.30

Changed 1
  • Improved logic for de-duplication of backup data during role migration

Enhanced Improved logic for de-duplication of backup data during role migration.

View originalPermalink
How 12.0.30 went

12.0.27

Changed 2
  • ecp sso now prints an SSO link for the control panel domain in addition to the IP
  • Increased timeout for post migration cleanup activities
Fixed 1
  • Backup destination was not updated on the destination server during application role transfer

Fixed Backup destination was not updated on the destination server during application role transfer. Enhanced ecp sso now prints an SSO link for the control panel domain in addition to the IP. Increased timeout for post migration cleanup activities.

View originalPermalink
How 12.0.27 went

12.0.26

Enhanced appcd-cli utility can optionally specify the website kind.

View originalPermalink
How 12.0.26 went

12.0.25

Changed 1
  • Minor improvements to logic of v12-upgrade fix-backup-permissions utility

Enhanced Minor improvements to logic of v12-upgrade fix-backup-permissions utility.

View originalPermalink
How 12.0.25 went

12.0.23

Fixed Nginx configuration for mod_security. Nginx custom vhost includes were not properly detected.

View originalPermalink
How 12.0.23 went

12.0.24

Added New ecp CLI tool to synchronise http enabled status across all servers.

View originalPermalink
How 12.0.24 went

12.0.22

v12-upgrade fix-backup-permissions command now runs the required commands automatically for customers upgrading their backup server from version 11.x. v12-upgrade fix-backup-permissions now fixes file size reporting for legacy backups. v12-upgrade fix-backup-permissions fixes de-duplication of legacy backups.

View originalPermalink
How 12.0.22 went

12.0.21

Czech language not appearing in profile listing.

View originalPermalink
How 12.0.21 went

12.0.20

Pure-ftpd TLS config. Run systemctl restart pure-ftpd after applying this update. Corrected suggested file name for Plesk SCP upload from .tar to .tar.gz. Customer contributed translation corrections for Czech language pack. Additional directories hidden from customer website containers. v12-upgrade will now wait longer for apt lock when converting MySQL server. Tighter permissions on importer directory on control panel server.

View originalPermalink
How 12.0.20 went
View all

Discussion