# Enhance: what changed from 8 to 12 - Product: Enhance (https://whatsnew.fyi/product/enhance) - Vendor: Enhance Hosting Automation - Range: changelog entries numbered after 8.5.4 up to and including 12.25.8, stable releases only - Entries below: 89 releases (newest first) - Resolved: 8 is 8.5.4 and 12 is 12.25.8, the newest stable release of each major we track - Carrying security changes: 4 · CVEs mentioned: 3 · Mentioning breaking changes: 0 · Removing or deprecating something: 3 - Page: https://whatsnew.fyi/product/enhance/compare/8...12 What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## What changed (368 changes, grouped by kind) ### Added #### 12.25.1 (2026-07-23) - getGlobalInstallableApps and getInstallableApps endpoints now return OpenClaw as a supported application #### 12.25.0 (2026-07-20) - 3rd party DNS hooks added to Integrations - Default DMARC added for all new zones with policy set to p=none, editable per website or as a 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 or role - New getPhpMyAdminWebsiteSSOUrl endpoint added which does not require a specific database name #### 12.24.0 (2026-07-03) - 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 #### 12.23.0 (2026-06-15) - Node.js websocket proxy support - Inode resource limit per website as a package setting that can be overridden on a per website basis - Copy button added to domains table #### 12.22.0 (2026-05-26) - 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 #### 12.21.1 (2026-04-04) - Unix username generation for numeric domains of more than 8 characters in length #### 12.21.0 (2026-04-03) - 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 #### 12.20.1 (2026-03-30) - An optional description has been added to token creation from CLI #### 12.19.0 (2026-03-18) - Service websites can have their PHP version changed with the bulk update tool - Onboarding help card can now be permanently dismissed across all devices #### 12.18.0 (2026-03-16) - Joomla one click installer that automatically makes Joomla available to users when 'Allow software installer' is enabled on a package #### 12.17.0 (2026-03-02) - Roundcube SSO support - Option to overwrite conflicting files when unzipping with the file manager #### 12.16.0 (2026-01-28) - Ability to clone to staging from the website dashboard hero section - Database sizes now show in database listing #### 12.15.0 (2026-01-21) - Restore individual files from an Enhance website backup - Limit swap usage under system resource limits #### 12.14.0 (2026-01-03) - 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 #### 12.13.2 (2025-12-10) - Connectivity diagnosis for servers which are unreachable from the control panel server - Additional error logging for S3 errors #### 12.13.0 (2025-11-27) - Users on per-server Roundcube can now change their password in the Roundcube UI - PHP 8.5 support - S3 credentials are automatically synchronised to servers on installation of the application or email role - UI to pre-install custom WordPress plugins from a URL #### 12.12.0 (2025-11-20) - 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 #### 12.11.10 (2025-11-12) - 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 - Increase timeout for manual Let's Encrypt issuance #### 12.11.0 (2025-09-22) - Add Node.js support #### 12.10.6 (2025-09-11) - Additional validation of MySQL database names #### 12.10.0 (2025-08-27) - Ability to download/upload an Enhance website backup - Azerbaijani language pack (beta) #### 12.9.8 (2025-08-13) - A user's 2FA status is now displayed on the Users page - It is now possible to delete a preview domain #### 12.9.7 (2025-08-11) - A reseller can set an upper limit on dynamic mailbox size if their own subscription is unlimited #### 12.9.3 (2025-08-01) - Limit the number of DNS records that can be created per domain on a package level #### 12.9.0 (2025-07-28) - Each server within a cluster now displays the Enhance version it is running #### 12.8.0 (2025-07-22) - Catch-all email addresses - Access token IP lockdown - Ability to edit roles for existing access tokens - Access token management added to ecp CLI tool - 'Host' and 'Port' prompts added to the FTP Login credential card #### 12.7.0 (2025-07-03) - Master organisation can restore backups of websites which were permanently deleted if they were backed up using the Enhance backup role - Backups using the Enhance backup role now contain DNS data #### 12.6.0 (2025-05-27) - Reinstate backup failure logging to the activity log for customers on version 12.x - Generate a descriptive error when attempting to create a central webmail website with no database role installed - Add 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 #### 12.5.1 (2025-05-21) - Additional guidance provided on licence settings page when licence status is Unknown #### 12.5.0 (2025-05-20) - Ability to restrict access to the Master Organisation by IP address for interactive login and SSO #### 12.4.0 (2025-05-14) - 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 #### 12.3.0 (2025-04-23) - createWebsite endpoint now installs WordPress and any preinstalled plugins and themes if specified on the customer's hosting package - New override for apache2 systemd unit to mitigate problem with large file uploads when mod_security is enabled #### 12.2.0 (2025-04-11) - Hebrew language pack - Support for legacy PHP 5.2 - 5.5 - Added Restart=always to lshttpd systemd override #### 12.1.0 (2025-03-24) - Support for sending custom access-Host-Allowed-Origin header from control panel API - WordPress plugin installation API can now accept a URL for installation of plugins not registered with WordPress.org ### Changed #### 12.25.8 (2026-09-01) - Updated Openclaw installation process to be compatible with the latest Openclaw release #### 12.25.5 (2026-08-06) - Improved network isolation for ephemeral containers - Added additional restriction on website backup upload for service websites #### 12.25.4 (2026-08-03) - cPanel importer now tolerates numeric values for 'ssl' and 'port' in cPanel userdata domain files - WordPress installation via wp-cli now prefers the zip archive to mitigate an issue with extraction of long path names from tar files #### 12.25.2 (2026-07-30) - 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 #### 12.25.1 (2026-07-23) - Search login on Customers page 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 #### 12.25.0 (2026-07-20) - Improved Danish translations - New Quick Links section added 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 - orchd will no longer start as root - Improved email transfer logic and failure handling #### 12.24.0 (2026-07-03) - Numeric progress indicator added to file manager upload #### 12.23.0 (2026-06-15) - 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 - Improved Hebrew and Portugese translations - Increased timeout for email role migration - 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 #### 12.22.2 (2026-06-01) - 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 #### 12.22.1 (2026-05-28) - Increased RPC timeout for application role transfer #### 12.22.0 (2026-05-26) - 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 automatically 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 #### 12.21.6 (2026-05-10) - Hide 'mailq' and 'postqueue' binaries from customer container #### 12.21.3 (2026-04-14) - End user must now supply subscription ID when cloning to a new website via API #### 12.21.2 (2026-04-09) - 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 #### 12.21.1 (2026-04-04) - Increased Let's Encrypt initial connection timeout - Improved Polish language pack (also in 12.14.1; 12.13.0) - 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 #### 12.21.0 (2026-04-03) - 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 #### 12.20.1 (2026-03-30) - 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 #### 12.20.0 (2026-03-20) - Per-server Roundcube now auto-updates to the latest supported version, currently 1.6.14 #### 12.19.0 (2026-03-18) - 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 #### 12.18.0 (2026-03-16) - Default PHP version for new websites and packages is now 8.3 - Underscores are now valid in NS names #### 12.17.0 (2026-03-02) - Improved Vietnamese language pack - Overriding website memory limit to unlimited is now applied immediately #### 12.16.1 (2026-02-26) - 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 #### 12.16.0 (2026-01-28) - Website size now includes home directory, databases and emails #### 12.15.0 (2026-01-21) - 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 #### 12.14.3 (2026-01-10) - 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) #### 12.14.2 (2026-01-06) - 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 #### 12.14.1 (2026-01-04) - 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 #### 12.14.0 (2026-01-03) - 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 #### 12.13.2 (2025-12-10) - On OpenLiteSpeed install, systemctl daemon-reload is retried multiple times #### 12.13.0 (2025-11-27) - When a container is restarted, the previous virtual interface device is now explicitly taken down in case another process is holding open the network namespace - Improved Turkish language pack (also in 12.12.0) - Improved Spanish language pack - Global webmail has been positioned as the secondary option under the advanced dropdown #### 12.12.0 (2025-11-20) - Default TTL is set to 1400 sec and applies only to new websites - When creating a new record without a specified TTL, it now mirrors the SOA TTL - Improved NL 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 for automatic and manual requests #### 12.11.10 (2025-11-12) - MariaDB repo config no longer uses mariadb install script - Improve ghost button consistency - Update IOPS limit calculations - Redesign logs page - Improve Turkish language pack #### 12.11.8 (2025-10-16) - Reduced memory usage of appcd service during backup runs - System MTA is explicitly installed and configured during control panel initialisation #### 12.11.7 (2025-10-14) - German translation improvements #### 12.11.6 (2025-10-06) - 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 - Tighter rate limiting for 2FA #### 12.11.5 (2025-10-02) - External application names in Openlitespeed web server are now unique when using Node.js - Improved validation of collaborator access level #### 12.11.4 (2025-10-01) - 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 #### 12.11.2 (2025-09-29) - Invited master organisation support and business users can no longer update the licence key #### 12.11.0 (2025-09-22) - Improve performance for how containers are started - Improve simplified Chinese language pack - Improve Portuguese language pack #### 12.10.6 (2025-09-11) - Reduced concurrency for deletion of expired backup snapshots to reduce load on backup servers with limited I/O #### 12.10.3 (2025-08-29) - Improved image handling and detection for SVG images in branding settings #### 12.10.0 (2025-08-27) - Improved Norwegian language pack (also in 12.3.0) - Pre-existing mailbox directory is no longer a fatal error if owned by the website user #### 12.10.1 (2025-08-27) - Downloadable backups now skip unreadable files - Document root permissions are now checked and reset after backup upload - Home directory data is no longer copied when downloading email-only backup where the app and email roles are placed on the same server #### 12.9.9 (2025-08-20) - Enhance now installs the latest version of LiteSpeed (v6.3.4) on installation #### 12.9.7 (2025-08-11) - Improved startup time of appcd for servers with a high website count (5000+) - Increased RPC timeout for post migration success cleanup #### 12.9.4 (2025-08-04) - 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 #### 12.9.3 (2025-08-01) - Increased timeouts for wp-cli, composer and ioncube loader install during ecp-core package postinst script #### 12.9.0 (2025-07-28) - PHP SAPI now starts on demand by default to reduce memory usage from idle websites, reducing idle RAM usage from approximately 60mb to 2mb - Staging domains are now marked as 'noindex' by default for newly added websites - Improvements made to Hebrew language pack - php-error.log no longer backs up - Session cookie now sends SameSite=none when custom CORS is enabled - Cron jobs handling improved for cases with blank lines or environment variables in the user's crontab when edited from the UI #### 12.7.1 (2025-07-04) - Email role transfer RPC timeout increased to 1 day #### 12.7.0 (2025-07-03) - 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 - WordPress toolkit can now handle deprecated warnings injected inline from plugins such as Elementor - Error messages for RPC connectivity improved #### 12.6.1 (2025-06-03) - Automatic and manual backups will now retry the rsync operation if it fails on the first attempt - Backup process is now less sensitive to hard disk quota issues on the source server - No S3 settings is now logged to the trace log rather than the error log to avoid excessive log noise - Improvements to wp-cli cache warmer utility - Resource calculation endpoint now saves the result to the database #### 12.6.0 (2025-05-27) - Move logic for management of local .my.cnf file to appcd service for improved performance - Check and repair local .my.cnf before each backup or restore operation - Hide /var/lib/mysql and /var/lib/docker totally from website containers #### 12.5.0 (2025-05-20) - pt-PT language pack improvements #### 12.4.0 (2025-05-14) - Improved guidance for setting of HELO name #### 12.3.3 (2025-05-12) - Primary domain now appears at the top of the domain selector when creating a new email address - appcd-cli list-websites now returns JSON output - Custom CORS feature now permits multiple origins - A more informative error is given when a reseller or master organisation has no phpMyAdmin domain configured - Added port 587 to email client config guidance #### 12.3.2 (2025-05-02) - French language pack improvements - orchd service will now wait for initialisation of master organisation before starting internal workers #### 12.3.1 (2025-04-29) - 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 #### 12.3.0 (2025-04-23) - Improved Arabic language pack - Improved Ukranian language pack #### 12.2.0 (2025-04-11) - Improved Portugese and Bulgarian language pack - CHMOD setting now applies recursively #### 12.1.0 (2025-03-24) - Backup process is now tolerant of the previous snapshot having been manually removed #### 12.0.27 (2025-03-05) - 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 #### 12.25.8 (2026-09-01) - Removed automatic device authentication option for Openclaw as this is no longer supported in the latest Openclaw release #### 12.25.7 (2026-08-31) - Regression causing incorrect permissions to be set on document root directories during creation of a new website #### 12.25.4 (2026-08-03) - False error message no longer displayed when a customer package defines preinstalled WordPress plugins and Openclaw is installed #### 12.25.3 (2026-08-01) - Customer stickiness, if enabled, now ignores service websites belonging to that customer when determining placement of a new website #### 12.25.1 (2026-07-23) - cPanel imports now complete when PostgreSQL is enabled on cPanel but not on Enhance by skipping PostgreSQL databases during import - phpMyAdmin domain selection for resellers now ignores soft-deleted domains - API will no longer accept syntactically invalid '..' in email local part #### 12.25.0 (2026-07-20) - Push live now copies cron jobs - Push live now copies IonCube - Reseller control panel domain warning #### 12.24.0 (2026-07-03) - Additional improvements to UI domain sorting login on domains tab of website dashboard #### 12.23.1 (2026-06-22) - 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 #### 12.23.0 (2026-06-15) - Application installations now adhere to package database resource limits #### 12.22.2 (2026-06-01) - Resolved error when creating PostgreSQL databases under a website beginning with a number - Fixed spacing issue on catch-all checkbox #### 12.22.1 (2026-05-28) - 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 #### 12.22.0 (2026-05-26) - 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 #### 12.21.6 (2026-05-10) - Improved cleanup of expired "run in customer container" tasks initiated by WordPress/Joomla toolkit to prevent potential task queue overrun #### 12.21.4 (2026-04-28) - 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 #### 12.21.2 (2026-04-09) - 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 #### 12.21.0 (2026-04-03) - 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 #### 12.20.0 (2026-03-20) - Minor UI rendering issues during role installation #### 12.17.0 (2026-03-02) - File manager no longer allows quota bypass - Fixed typo on Plesk importer #### 12.16.0 (2026-01-28) - 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 #### 12.15.1 (2026-01-22) - 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 #### 12.15.0 (2026-01-21) - Database restore can now handle databases which have been dropped from the command line #### 12.14.3 (2026-01-10) - Corrected subscription bandwidth calculation #### 12.14.2 (2026-01-06) - 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 #### 12.14.1 (2026-01-04) - Incorrect CPU core count on virtual machines where cores are presented by the hypervisor to the guest as separate physical CPUs #### 12.14.0 (2026-01-03) - Editing IP in connectivity check modal no longer resets the IP when the existing IP is totally removed #### 12.13.2 (2025-12-10) - Fix for a cPanel import where home dir on the cPanel side is non-standard #### 12.13.1 (2025-11-30) - 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 #### 12.11.10 (2025-11-12) - Fix IO bandwidth being applied in the wrong order of magnitude (gigabytes instead of megabytes) #### 12.11.8 (2025-10-16) - Double search/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 #### 12.11.7 (2025-10-14) - Resellers can no longer create customers via the API without the resellerSubResellers allowance on their own package #### 12.11.6 (2025-10-06) - Reinstated missing context menu on database user listing with table row height fix #### 12.11.5 (2025-10-02) - White page bug in UI when managing control panel websites #### 12.11.4 (2025-10-01) - 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 #### 12.11.2 (2025-09-29) - 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 #### 12.11.3 (2025-09-29) - Fix UI bug when packages are created by a reseller where the reseller's own package does not support Node.js #### 12.11.0 (2025-09-22) - Fix force https setting to now redirect /api requests when enabled on the control panel domain running Apache #### 12.10.4 (2025-09-05) - Improved validation of pre-hashed mailbox passwords to prevent potential breakage of dovecot user db #### 12.10.3 (2025-08-29) - Added additional Content-Type header for auto reply messages to fix Roundcube display issue #### 12.10.0 (2025-08-27) - Intermittent bug with maildir user creation group ownership #### 12.10.2 (2025-08-27) - UI white screen bug when managing control panel and central webmail websites #### 12.9.8 (2025-08-13) - 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 #### 12.9.7 (2025-08-11) - A reseller can now be downgraded to a non-reseller package if they have previously created and deleted customers #### 12.9.6 (2025-08-07) - 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 #### 12.9.4 (2025-08-04) - appinit will clean up orphaned processes that it becomes the owner of due to the original parent process ending - It was not possible to remove a domain mapping from a website if another domain existed which ended in the domain to be deleted #### 12.9.2 (2025-07-30) - Fix custom backup restore on S3 - Fix database failure when restoring S3 full website backup #### 12.9.0 (2025-07-28) - Cron jobs no longer get overwritten when added via the UI if the crontab contained blank lines, comments or environment variables - False backup error logging when no primary domain mapping existed on the Application server - Process manager interrogation of existing processes #### 12.7.1 (2025-07-04) - UI rendering error on customer management page, email tab - Excessive truncation of file size on website backup card #### 12.7.0 (2025-07-03) - Group ID bug in file manager (filerd) service #### 12.6.1 (2025-06-03) - Backup process can now recover if the home directory for the backup user is manually deleted - 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 - MariaDB repo download script now forces ipv4 to mitigate an issue with some ipv6 IPs being blocked by MariaDB - Mitigation for issue where email and website backup run on separate servers at the exact same time - Bandwidth counter (total) rounding error - Moving a standalone database role from a decommissioned server did not update the remote SQL settings on the target application server #### 12.6.0 (2025-05-27) - Fix race condition where the local .my.cnf had been modified and website files were restored before databases which prevented a restore of the database - Fix incorrect descriptive text for email rate limits in English language - Fix system commands in platform update instructions excluded from translation - Fix issue backing up databases with massive text rows on some versions of MariaDB #### 12.5.1 (2025-05-21) - SSO no longer requires a hard refresh when a previously expired session existed #### 12.5.0 (2025-05-20) - 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 - Plesk importer can now handle generated XML with self-closing tags created by some versions of Plesk #### 12.4.0 (2025-05-14) - Customer and subscription stickiness were incorrectly applied when toggled in the UI #### 12.3.3 (2025-05-12) - 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 - In file manager, files with non-utf8 encoded filenames no longer cause a fatal error, instead any invalid characters are displayed as replacement character - 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 #### 12.3.2 (2025-05-02) - Intermittent issue with restoring large database tables when using S3-compatible backup system - Failure to remove expired snapshots when using S3-compatible backup system #### 12.3.0 (2025-04-23) - Internal filerd token timeout during large website clones #### 12.2.0 (2025-04-11) - Fix for missing /dev/tty device in customer SSH environment #### 12.0.27 (2025-03-05) - Backup destination is now updated on the destination server during application role transfer ### Removed #### 12.21.3 (2026-04-14) - Ability of collaborator role to add or delete Cloudflare tokens via API #### 12.21.0 (2026-04-03) - Control panel websites can no longer be mapped to a database server #### 12.10.0 (2025-08-27) - Upload limit for file uploads to the Enhance panel ### Security #### 12.25.3 (2026-08-01) - 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 #### 12.21.5 (2026-05-08) - Hide known setuid binaries from website containers to limit attack vectors from compromised CMS or malicious customers targeting local privilege escalation vulnerabilities #### 12.11.7 (2025-10-14) - The list of endpoints accessible to a login session which has not yet completed 2 factor authentication has been further restricted #### 12.11.1 (2025-09-27) - Fix user role permission handling in the control panel API _12 releases carry no categorized changes yet: 12.25.6, 12.24.1, 12.13.3, 12.11.9, 12.10.5, 12.9.5, 12.9.1, 12.6.2, 12.0.28, 12.0.29, 12.0.30, 12.0.26._ ## Release notes ### 12.25.8 — 12.25.8 Latest - Date: 2026-09-01 - Version: 12.25.8 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.8 - **changed** — Updated Openclaw installation process to be compatible with the latest Openclaw release - **fixed** — Removed automatic device authentication option for Openclaw as this is no longer supported in the latest Openclaw release Enhanced Updated Openclaw installation process to be compatible with the latest Openclaw release. Fixed Removed automatic device authentication option for Openclaw as this is no longer supported in the latest Openclaw release. ### 12.25.7 - Date: 2026-08-31 - Version: 12.25.7 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.7 - **fixed** — Regression causing incorrect permissions to be set on document root directories during creation of a new website Fixed Regression causing incorrect permissions to be set on document root directories during creation of a new website. ### 12.25.6 - Date: 2026-08-27 - Version: 12.25.6 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.6 Enhanced Improved PHP version detection logic for cPanel importer. ### 12.25.5 - Date: 2026-08-06 - Version: 12.25.5 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.5 - **changed** — Improved network isolation for ephemeral containers - **changed** — Added additional restriction on website backup upload for service websites Enhanced Improved network isolation for ephemeral containers. Additional restriction on website backup upload for service websites. ### 12.25.4 - Date: 2026-08-03 - Version: 12.25.4 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.4 - **changed** — cPanel importer now tolerates numeric values for 'ssl' and 'port' in cPanel userdata domain files - **changed** — WordPress installation via wp-cli now prefers the zip archive to mitigate an issue with extraction of long path names from tar files - **fixed** — False error message no longer displayed when a customer package defines preinstalled WordPress plugins and 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. ### 12.25.3 - Date: 2026-08-01 - Version: 12.25.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.3 - **security** — 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 - **fixed** — Customer stickiness, if enabled, now ignores service websites belonging to that customer when determining placement of a new website 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. ### 12.25.2 - Date: 2026-07-30 - Version: 12.25.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.2 - **changed** — 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. ### 12.25.1 - Date: 2026-07-23 - Version: 12.25.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.1 - **fixed** — cPanel imports now complete when PostgreSQL is enabled on cPanel but not on Enhance by skipping PostgreSQL databases during import - **changed** — Search login on Customers page moved from UI code to API to improve performance on larger clusters - **changed** — Improved phpMyAdmin error reporting - **changed** — Overrides back heading now contains the primary domain of the website being edited - **added** — getGlobalInstallableApps and getInstallableApps endpoints now return OpenClaw as a supported application - **fixed** — phpMyAdmin domain selection for resellers now ignores soft-deleted domains - **fixed** — 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. ### 12.25.0 - Date: 2026-07-20 - Version: 12.25.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.25.0 - **added** — 3rd party DNS hooks added to Integrations - **added** — Default DMARC added for all new zones with policy set to p=none, editable per website or as a platform DNS zone template - **added** — installServerRole API endpoint has an additional parameter to disable the role on installation - **added** — Disabled server roles are automatically enabled when a customer is subscribed to a dedicated plan using that server or role - **added** — New getPhpMyAdminWebsiteSSOUrl endpoint added which does not require a specific database name - **changed** — Improved Danish translations - **changed** — New Quick Links section added for website dashboard - **changed** — A reseller subscription recalculation is now triggered after a soft deletion of a customer org - **changed** — orchd, appcd and appd now only start if started by systemd - **changed** — orchd will no longer start as root - **changed** — Improved email transfer logic and failure handling - **fixed** — Push live now copies cron jobs - **fixed** — Push live now copies IonCube - **fixed** — 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. ### 12.24.0 - Date: 2026-07-03 - Version: 12.24.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.24.0 - **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 - **added** — OpenClaw is now available as an installable application via the apps tab of the website dashboard - **added** — OpenClaw toolkit can add API provider keys, rotate tokens and configure device authentication - **added** — Packages can now be configured to restrict the installable applications - **changed** — Numeric progress indicator added to file manager upload - **fixed** — 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. ### 12.24.1 - Date: 2026-07-03 - Version: 12.24.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.24.1 Enhanced Default RoundCube version bumped to 1.6.17 ### 12.23.1 - Date: 2026-06-22 - Version: 12.23.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.23.1 - **fixed** — 401 error no longer returned when attempting to log out all devices from user profile - **fixed** — 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. ### 12.23.0 - Date: 2026-06-15 - Version: 12.23.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.23.0 - **added** — Node.js websocket proxy support - **added** — Inode resource limit per website as a package setting that can be overridden on a per website basis - **changed** — PostGIS and PGVector now enabled by default on new PostgreSQL installations - **changed** — Automatically recalculate subscription on cloning failure - **changed** — Default post_max_size and upload_max_filesize now 1000M if no specific limit is configured - **changed** — Explicitly set WordPress site url and home when using search replace to mitigate object cache issue on cloning - **added** — Copy button added to domains table - **changed** — Improved Hebrew and Portugese translations - **changed** — Increased timeout for email role migration - **changed** — Primary domain now always listed first on domains table - **changed** — 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 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. ### 12.22.2 - Date: 2026-06-01 - Version: 12.22.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.22.2 - **fixed** — Resolved error when creating PostgreSQL databases under a website beginning with a number - **changed** — Increased timeout for WHM API client to 1 hour to improve cPanel import from remote server when dealing with very large accounts - **changed** — Improved error messages for website cloning and push-live - **changed** — Improved cleanup of mysql.db table when a MySQL database is removed - **changed** — Panel lists now use brand accent colour - **fixed** — 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. ### 12.22.1 - Date: 2026-05-28 - Version: 12.22.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.22.1 - **fixed** — PostgreSQL resource count now shows correctly in package resource listing where the resource was set to 0 during initial package creation - **fixed** — Mitigation for rsync "link dest" regression in 3.2.7-1ubuntu1.4 package - **fixed** — Backup restoration no longer returns a false failure notice when no PostgreSQL server is available - **changed** — Increased RPC timeout for application role transfer 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. ### 12.22.0 - Date: 2026-05-26 - Version: 12.22.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.22.0 - **added** — Optionally install the PostgreSQL role to servers within your cluster and provide PostgreSQL hosting to your customers - **added** — pgsql and pdo_pgsql PHP modules are enabled automatically if a PostgreSQL database is created by the customer - **changed** — Increased email transfer RPC timeout - **changed** — Additional prompt for resellers to set a control panel domain when creating a customer, if no control panel domain has been set - **changed** — phpMyAdmin button added to database listing - **changed** — In the file manager, document roots are now highlighted by a 'globe' icon - **changed** — Connection guidance added to database management page for end users - **changed** — MariaDB LTS initial installation now explicitly sets utf8mb4 server character set in my.cnf - **changed** — Efficiency and performance improvements to internal APIs - **changed** — dump.rdb (Redis persistent data store) now automatically excluded from website cloning - **changed** — Improvements to backup transfer guard logic when attempting new website backups - **changed** — Roundcube version bumped to 1.6.16 - **changed** — Removing all database privileges for a user means the user is no longer listed under the database - **changed** — Improved error messages for remote MySQL connection failure - **changed** — Added database size to backup listing - **changed** — Container IP now automatically allowed for new MySQL users where the application and database roles are on the same server - **changed** — Plesk importer now handles backups with missing 'directories' param - **changed** — 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 - **fixed** — UI for resellers no longer attempts to set deprecated 'processes' resource - **fixed** — WordPress username update via WordPress toolkit now functional - **fixed** — Corrected chowning logic for Litespeed (commercial) virtual host config files - **fixed** — 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. ### 12.21.6 - Date: 2026-05-10 - Version: 12.21.6 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.6 - **changed** — Hide 'mailq' and 'postqueue' binaries from customer container - **fixed** — Improved cleanup of expired "run in customer container" tasks initiated by WordPress/Joomla toolkit to prevent potential task queue overrun Hide 'mailq' and 'postqueue' binaries from customer container. Improved cleanup of expired "run in customer container" tasks initiated by WordPress/Joomla toolkit to prevent potential task queue overrun. ### 12.21.5 - Date: 2026-05-08 - Version: 12.21.5 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.5 - **security** — Hide known setuid binaries from website containers to limit attack vectors from compromised CMS or malicious customers targeting local privilege escalation vulnerabilities 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. This provides no protection from attacks originating from a non-Enhance user or from a remote code execution (RCE) in software which does not run within an Enhance website container. This does not negate the need to keep your system up to date or to apply any temporary mitigations to current or future LPE vulnerabilities. To benefit from this change, you must reboot the system after installing the updated Enhance packages. ### 12.21.4 - Date: 2026-04-28 - Version: 12.21.4 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.4 - **fixed** — 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. ### 12.21.3 - Date: 2026-04-14 - Version: 12.21.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.3 - **removed** — Ability of collaborator role to add or delete Cloudflare tokens via API - **changed** — End user must now supply subscription ID when cloning to a new website 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. ### 12.21.2 - Date: 2026-04-09 - Version: 12.21.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.2 - **changed** — Global backup settings are now re-applied on installation of a new Backup role - **fixed** — Improved handling of expired snapshot deletion where directories are missing read or execute permissions - **changed** — Expired snapshot cleanup runs less frequently and on a separate scheduler - **fixed** — 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. ### 12.21.1 - Date: 2026-04-04 - Version: 12.21.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.1 - **changed** — Increased Let's Encrypt initial connection timeout - **changed** — Improved Polish language pack - **changed** — Altered RPC keepalive strategy for transfer of backup data between servers - **changed** — Built in PHP extensions displayed in website dashboard now include compulsory extensions loaded at runtime in addition to those compiled in to PHP - **added** — Unix username generation for numeric domains of more than 8 characters in length 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. ### 12.21.0 - Date: 2026-04-03 - Version: 12.21.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.21.0 - **added** — PHP extension manager now allows enabling any extension built or installed within the global extension directory for the chosen PHP version - **added** — Developer tools section now lists built-in PHP extensions in addition to optional extensions - **fixed** — Enabled PHP extensions now persist after server migration - **changed** — Incompatible extensions are now disabled automatically when changing PHP version - **changed** — mod_security is now explicitly disabled for the per-server Roundcube installation on Apache and Nginx web servers - **removed** — Control panel websites can no longer be mapped to a database server - **changed** — New backups are no longer started during a backup migration to improve transfer performance - **changed** — Cleanup of expired snapshots is no longer performed during a backup migration to improve transfer performance - **fixed** — Website backup destination is now performed after a successful transfer of the backup role - **changed** — Improved efficiency and speed of expired snapshot cleanup - **changed** — MySQL 8.4 is now the default version when MySQL is selected due to 8.0 EOL - **fixed** — Prevent excessive logging where the per-server Roundcube website has not yet been created 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. ### 12.20.1 - Date: 2026-03-30 - Version: 12.20.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.20.1 - **added** — An optional description has been added to token creation from CLI - **changed** — Supported Roundcube version has been updated to 1.6.15 - **changed** — 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. ### 12.20.0 - Date: 2026-03-20 - Version: 12.20.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.20.0 - **changed** — Per-server Roundcube now auto-updates to the latest supported version, currently 1.6.14 - **fixed** — 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. ### 12.19.0 - Date: 2026-03-18 - Version: 12.19.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.19.0 - **changed** — Default PHP version for Central Roundcube and phpMyAdmin is now 8.3 - **added** — Service websites can have their PHP version changed with the bulk update tool - **added** — Onboarding help card can now be permanently dismissed across all devices - **changed** — Joomla installation now allows 10 character passwords - **changed** — 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. ### 12.18.0 - Date: 2026-03-16 - Version: 12.18.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.18.0 - **added** — Joomla one click installer that automatically makes Joomla available to users when 'Allow software installer' is enabled on a package - **changed** — Default PHP version for new websites and packages is now 8.3 - **changed** — 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. ### 12.17.0 - Date: 2026-03-02 - Version: 12.17.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.17.0 - **added** — Roundcube SSO support - **changed** — Improved Vietnamese language pack - **fixed** — File manager no longer allows quota bypass - **changed** — Overriding website memory limit to unlimited is now applied immediately - **added** — Option to overwrite conflicting files when unzipping with the file manager - **fixed** — 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 ### 12.16.1 - Date: 2026-02-26 - Version: 12.16.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.16.1 - **changed** — 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. ### 12.16.0 - Date: 2026-01-28 - Version: 12.16.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.16.0 - **added** — Ability to clone to staging from the website dashboard hero section - **added** — Database sizes now show in database listing - **changed** — Website size now includes home directory, databases and emails - **fixed** — Subscription disk usage now properly counts database and email usage - **fixed** — Clone to staging can no longer bypass staging website limit - **fixed** — 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 ### 12.15.1 - Date: 2026-01-22 - Version: 12.15.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.15.1 - **fixed** — Impersonation now persists when a hard refresh is performed in the browser - **fixed** — 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. ### 12.15.0 - Date: 2026-01-21 - Version: 12.15.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.15.0 - **added** — Restore individual files from an Enhance website backup - **added** — Limit swap usage under system resource limits - **changed** — S3 backups are now tagged with 'S3' to indicate that granular file restores are not supported - **fixed** — Database restore can now handle databases which have been dropped from the command line - **changed** — IMAP module enabled by default on PHP 8.4 and 8.5 for new and existing websites - **changed** — imagick module enabled by default on PHP 8.5 for new and existing websites 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). ### 12.14.3 - Date: 2026-01-10 - Version: 12.14.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.14.3 - **fixed** — Corrected subscription bandwidth calculation - **changed** — Subscription recalculation is now forced after successful website clone - **changed** — Cloning process only checks for database resource on the destination package where databases exist on the source website - **changed** — Improved fault tolerance for automated o/s package installation (apt) 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). ### 12.14.2 - Date: 2026-01-06 - Version: 12.14.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.14.2 - **fixed** — Fix race condition causing a node.js application not to be placed into the correct control group when automatically started via Enhance - **fixed** — Remove duplicate API call for memory usage on server management dashboard - **changed** — Check /usr/bin/composer for validity on installation of ecp-core and re-download composer if not valid - **changed** — Apply stricter RPC timeouts to DNS sync queue to prevent slow queue processing when some DNS servers in the cluster are offline - **changed** — Improve miscellaneous UI elements 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. ### 12.14.1 - Date: 2026-01-04 - Version: 12.14.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.14.1 - **fixed** — Incorrect CPU core count on virtual machines where cores are presented by the hypervisor to the guest as separate physical CPUs - **changed** — Application role installation now explicitly installs the mariadb-client package if the database role is not installed - **changed** — 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 - **changed** — Improved Polish language pack 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. ### 12.14.0 - Date: 2026-01-03 - Version: 12.14.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.14.0 - **added** — Server specifications now shown in master organisation servers dashboard - **added** — Customers with dedicated subscriptions can now view server specifications, load, memory and swap usage - **added** — Traditional Chinese (Taiwan) locale (Beta) - **fixed** — Editing IP in connectivity check modal no longer resets the IP when the existing IP is totally removed - **added** — Decommission and delete options are now accessible for an offline server - **changed** — Backup settings are now explicitly re-applied to servers on role installation and reinstallation - **changed** — 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 - **changed** — WordPress SSO plugin is now downloaded and cached at a server level for faster activation and avoidance of Github API rate limits - **changed** — Reduced API calls from servers page for better performance - **changed** — Improved performance and reduced memory usage of website DNS resolution check 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. ### 12.13.3 - Date: 2025-12-14 - Version: 12.13.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.13.3 Default Roundcube version is now 1.6.12. ### 12.13.2 - Date: 2025-12-10 - Version: 12.13.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.13.2 - **added** — Connectivity diagnosis for servers which are unreachable from the control panel server - **added** — Additional error logging for S3 errors - **changed** — On OpenLiteSpeed install, systemctl daemon-reload is retried multiple times - **fixed** — 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. ### 12.13.1 - Date: 2025-11-30 - Version: 12.13.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.13.1 - **fixed** — 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 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. ### 12.13.0 - Date: 2025-11-27 - Version: 12.13.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.13.0 - **added** — Users on per-server Roundcube can now change their password in the Roundcube UI - **added** — PHP 8.5 support - **added** — S3 credentials are automatically synchronised to servers on installation of the application or email role - **added** — UI to pre-install custom WordPress plugins from a URL - **changed** — When a container is restarted, the previous virtual interface device is now explicitly taken down in case another process is holding open the network namespace - **changed** — Improved Polish language pack - **changed** — Improved Turkish language pack - **changed** — Improved Spanish language pack - **changed** — Global webmail has been positioned as the secondary option under the advanced dropdown Users on the per-server Roundcube (https://mail.customer-domain) can now change their password in the Roundcube UI. To enable this functionality on existing installations, run "ecp install-round-cube-password-plugin" as root on each mail server. PHP 8.5 support. Currently Ioncube and PECL imagick modules are not supported on PHP 8.5, pending release of new versions by these providers. To provide PHP 8.5 to customers, please ensure that 'PHP 8.5' is enabled on their hosting package. On installation of the application or email role on a server, the S3 credentials (if present) are automatically synchronised to that server. Supporting UI to pre-install a custom WordPress plugins from a URL. When a container is restarted, the previous virtual interface device is now explicitly taken down incase another process is holding open the network namespace. Improved Polish language pack. Improved Turkish language pack. Improved Spanish language pack. Global webmail has been positioned as the secondary option under the 'advanced' dropdown ### 12.12.0 - Date: 2025-11-20 - Version: 12.12.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.12.0 - **added** — DS/CAA records can now be added to DNS zones and DNS templates - **added** — Default TTL setting can now be set under Platform Settings - **added** — LSAPI_CHILDREN can now be limited via the website overrides panel when the web server is OpenLitespeed/Litespeed - **added** — Backups can now be disabled on a website via the website overrides panel - **added** — WordPress username can now be an email - **changed** — Default TTL is set to 1400 sec and applies only to new websites - **changed** — When creating a new record without a specified TTL, it now mirrors the SOA TTL - **changed** — Improved NL language pack - **changed** — Improved Turkish language pack - **changed** — PHP FPM settings now hidden from website overrides panel when the web server is Litespeed/OpenLitespeed - **changed** — Mariadb installation now uses alternative apt repository - **changed** — Increased timeouts for Let's Encrypt provisioning for automatic and manual requests 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). ### 12.11.10 - Date: 2025-11-12 - Version: 12.11.10 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.10 - **added** — Display warnings in UI when I/O and IOPS limits are set too low on package level and per-website override - **added** — Add Hanken Grotesk Google font - **added** — Increase timeout for manual Let's Encrypt issuance - **changed** — MariaDB repo config no longer uses mariadb install script - **changed** — Improve ghost button consistency - **changed** — Update IOPS limit calculations - **changed** — Redesign logs page - **changed** — Improve Turkish language pack - **fixed** — 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. ### 12.11.9 - Date: 2025-10-25 - Version: 12.11.9 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.9 Updated mysql.com trusted GPG key. ### 12.11.8 - Date: 2025-10-16 - Version: 12.11.8 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.8 - **fixed** — Double search/replace on WordPress site URL during cloning or push-live when perform search and replace is selected - **changed** — Reduced memory usage of appcd service during backup runs - **changed** — System MTA is explicitly installed and configured during control panel initialisation - **fixed** — 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. ### 12.11.7 - Date: 2025-10-14 - Version: 12.11.7 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.7 - **fixed** — Resellers can no longer create customers via the API without the resellerSubResellers allowance on their own package - **changed** — German translation improvements - **security** — The list of endpoints accessible to a login session which has not yet completed 2 factor authentication has been further restricted 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. ### 12.11.6 - Date: 2025-10-06 - Version: 12.11.6 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.6 - **changed** — libsasl2-modules package is now specifically installed alongside Postfix MTA - **changed** — Support user can no longer change screenshot settings - **changed** — Master organisation collaborator can no longer view activity log - **fixed** — Reinstated missing context menu on database user listing with table row height fix - **changed** — Tighter rate limiting for 2FA 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. ### 12.11.5 - Date: 2025-10-02 - Version: 12.11.5 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.5 - **fixed** — White page bug in UI when managing control panel websites - **changed** — External application names in Openlitespeed web server are now unique when using Node.js - **changed** — Improved validation of collaborator access level 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. ### 12.11.4 - Date: 2025-10-01 - Version: 12.11.4 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.4 - **fixed** — App role migration reinstates Node.js deployments - **fixed** — Prevent system actions by Support user - **changed** — Deleting an addon domain now also removes the DNS zone - **fixed** — API no longer allows % in email username - **fixed** — Cleanup of created databases and database users if failure occurs during the creation phase - **fixed** — Download email data no longer shows on dashboard where no email server exists - **changed** — Improved Ukrainian language pack - **changed** — Improved tag functionality on subscriptions - **changed** — Inline logs and general UI improvements to PHP section 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. ### 12.11.2 - Date: 2025-09-29 - Version: 12.11.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.2 - **changed** — Invited master organisation support and business users can no longer update the licence key - **fixed** — 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 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. ### 12.11.3 - Date: 2025-09-29 - Version: 12.11.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.3 - **fixed** — Fix 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. ### 12.11.1 - Date: 2025-09-27 - Version: 12.11.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.1 - **security** — 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. ### 12.11.0 - Date: 2025-09-22 - Version: 12.11.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.11.0 - **fixed** — Fix force https setting to now redirect /api requests when enabled on the control panel domain running Apache - **added** — Add Node.js support - **changed** — Improve performance for how containers are started - **changed** — Improve simplified Chinese language pack - **changed** — Improve Portuguese language pack IMPORTANT: 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. ### 12.10.6 - Date: 2025-09-11 - Version: 12.10.6 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.6 - **changed** — Reduced concurrency for deletion of expired backup snapshots to reduce load on backup servers with limited I/O - **added** — Additional validation of MySQL database names Additional validation of mysql database names. Reduced concurrency for deletion of expired backup snapshots to reduce load on backup servers with limited i/o. ### 12.10.5 - Date: 2025-09-06 - Version: 12.10.5 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.5 Further improvements to validation of pre-hashed mailbox passwords. ### 12.10.4 - Date: 2025-09-05 - Version: 12.10.4 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.4 - **fixed** — Improved validation of pre-hashed mailbox passwords to prevent potential breakage of dovecot user db Improved validation of pre-hashed mailbox passwords to prevent potential breakage of dovecot user db. ### 12.10.3 - Date: 2025-08-29 - Version: 12.10.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.3 - **changed** — Improved image handling and detection for SVG images in branding settings - **fixed** — Added additional Content-Type header for auto reply messages to fix Roundcube display issue 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. ### 12.10.0 - Date: 2025-08-27 - Version: 12.10.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.0 - **added** — Ability to download/upload an Enhance website backup - **added** — Azerbaijani language pack (beta) - **changed** — Improved Norwegian language pack - **fixed** — Intermittent bug with maildir user creation group ownership - **changed** — 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 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. ### 12.10.1 - Date: 2025-08-27 - Version: 12.10.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.1 - **changed** — Downloadable backups now skip unreadable files - **changed** — Document root permissions are now checked and reset after backup upload - **changed** — Home directory 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. ### 12.10.2 - Date: 2025-08-27 - Version: 12.10.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.10.2 - **fixed** — 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. ### 12.9.9 - Date: 2025-08-20 - Version: 12.9.9 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.9 - **changed** — Enhance now installs the latest version of LiteSpeed (v6.3.4) on installation 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 ### 12.9.8 - Date: 2025-08-13 - Version: 12.9.8 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.8 - **added** — A user's 2FA status is now displayed on the Users page - **added** — It is now possible to delete a preview domain - **fixed** — S3 backup is now tolerant of missing mail directories - **fixed** — 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. ### 12.9.7 - Date: 2025-08-11 - Version: 12.9.7 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.7 - **changed** — Improved startup time of appcd for servers with a high website count (5000+) - **changed** — Increased RPC timeout for post migration success cleanup - **fixed** — A reseller can now be downgraded to a non-reseller package if they have previously created and deleted customers - **added** — A reseller can set an upper limit on dynamic mailbox size if their own subscription is unlimited 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. ### 12.9.6 - Date: 2025-08-07 - Version: 12.9.6 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.6 - **fixed** — appcd process monitor no longer waits for pids it has not explicitly killed - **fixed** — Prevention of 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 ### 12.9.5 - Date: 2025-08-06 - Version: 12.9.5 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.5 Updating preinstalled theme on an existing package had no effect. ### 12.9.4 - Date: 2025-08-04 - Version: 12.9.4 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.4 - **fixed** — appinit will clean up orphaned processes that it becomes the owner of due to the original parent process ending - **changed** — Cloudflare integration now explicitly sends quotation marks around TXT record - **changed** — Onboarding of new servers to an existing cluster will ignore any ipv6 records in DNS - **changed** — Additional guidance in ecp join error output - **fixed** — 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. ### 12.9.3 - Date: 2025-08-01 - Version: 12.9.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.3 - **added** — Limit the number of DNS records that can be created per domain on a package level - **changed** — Increased timeouts for wp-cli, composer and ioncube loader install during ecp-core package postinst script 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. ### 12.9.2 - Date: 2025-07-30 - Version: 12.9.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.2 - **fixed** — Fix custom backup restore on S3 - **fixed** — Fix 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. ### 12.9.0 - Date: 2025-07-28 - Version: 12.9.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.0 - **changed** — PHP SAPI now starts on demand by default to reduce memory usage from idle websites, reducing idle RAM usage from approximately 60mb to 2mb - **added** — Each server within a cluster now displays the Enhance version it is running - **changed** — Staging domains are now marked as 'noindex' by default for newly added websites - **changed** — Improvements made to Hebrew language pack - **changed** — php-error.log no longer backs up - **changed** — Session cookie now sends SameSite=none when custom CORS is enabled - **fixed** — Cron jobs no longer get overwritten when added via the UI if the crontab contained blank lines, comments or environment variables - **fixed** — False backup error logging when no primary domain mapping existed on the Application server - **fixed** — Process manager interrogation of existing processes - **changed** — Cron jobs handling improved for cases with blank lines or environment variables in the user's crontab when edited from the UI 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. Improvements to Hebrew language pack. php-error.log no longer backs up. Session cookie sends SameSite=none when custom CORS is enabled. Fix for cron jobs being overwritten when added via the UI if the crontab contained blank lines, comments or environment variables. Fix for logging of false backup error where no primary domain mapping existed on the Application server. Fix for cron issue where blank lines or environment variables in the user's crontab could cause cron jobs to be overwritten when edited from the UI. Fix for process manager interrogation of existing processes. ### 12.9.1 - Date: 2025-07-28 - Version: 12.9.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.9.1 UI bug when editing empty user cron tab. ### 12.8.0 - Date: 2025-07-22 - Version: 12.8.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.8.0 - **added** — Catch-all email addresses - **added** — Access token IP lockdown - **added** — Ability to edit roles for existing access tokens - **added** — Access token management added to ecp CLI tool - **added** — 'Host' and 'Port' prompts added to the FTP Login credential card 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. 'Host' and 'Port' prompts added to the FTP Login credential card. ### 12.7.1 - Date: 2025-07-04 - Version: 12.7.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.7.1 - **fixed** — UI rendering error on customer management page, email tab - **fixed** — Excessive truncation of file size on website backup card - **changed** — Email role transfer RPC timeout increased to 1 day UI rendering error on customer management page, email tab. Excessive truncation of file size on website backup card. Email role transfer RPC timeout increased to 1 day. ### 12.7.0 - Date: 2025-07-03 - Version: 12.7.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.7.0 - **added** — Master organisation can restore backups of websites which were permanently deleted if they were backed up using the Enhance backup role - **added** — Backups using the Enhance backup role now contain DNS data - **changed** — Website restore logic improved for customers using the Enhance backup role - **changed** — Disaster recovery logic improved for customers using the Enhance backup role - **changed** — Email and mailbox logic moved to the application server (appcd) in preparation for future portable backup and CLI restore functionality - **changed** — Norwegian language pack improved - **changed** — Polish language pack improved - **changed** — WordPress toolkit can now handle deprecated warnings injected inline from plugins such as Elementor - **changed** — Error messages for RPC connectivity improved - **fixed** — Group ID bug in file manager (filerd) service 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. 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. Group ID bug in file manager (filerd) service. ### 12.6.2 - Date: 2025-06-05 - Version: 12.6.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.6.2 Default Roundcube version for per-server installation is now 1.6.11. ### 12.6.1 - Date: 2025-06-03 - Version: 12.6.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.6.1 - **changed** — Automatic and manual backups will now retry the rsync operation if it fails on the first attempt - **fixed** — Backup process can now recover if the home directory for the backup user is manually deleted - **changed** — Backup process is now less sensitive to hard disk quota issues on the source server - **fixed** — 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 - **changed** — No S3 settings is now logged to the trace log rather than the error log to avoid excessive log noise - **fixed** — MariaDB repo download script now forces ipv4 to mitigate an issue with some ipv6 IPs being blocked by MariaDB - **changed** — 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 - **fixed** — Bandwidth counter (total) rounding error - **changed** — Resource calculation endpoint now saves the result to the database - **fixed** — Moving a standalone database role from a decommissioned server did not update the remote SQL settings on the target application server 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. 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. ### 12.6.0 - Date: 2025-05-27 - Version: 12.6.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.6.0 - **added** — Reinstate backup failure logging to the activity log for customers on version 12.x - **changed** — Move logic for management of local .my.cnf file to appcd service for improved performance - **changed** — Check and repair local .my.cnf before each backup or restore operation - **added** — Generate a descriptive error when attempting to create a central webmail website with no database role installed - **added** — Add mitigation for incompatible collations when cloning a website from a server with MariaDB to a server with MySQL - **added** — SuperAdmin can now set admin lockdown via API to allow for automation with bearer token - **changed** — Hide /var/lib/mysql and /var/lib/docker totally from website containers - **fixed** — Fix race condition where the local .my.cnf had been modified and website files were restored before databases which prevented a restore of the database - **fixed** — Fix incorrect descriptive text for email rate limits in English language - **fixed** — Fix system commands in platform update instructions excluded from translation - **fixed** — Fix issue backing up databases with massive text rows on some versions of MariaDB 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. 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. ### 12.5.1 - Date: 2025-05-21 - Version: 12.5.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.5.1 - **fixed** — SSO no longer requires a hard refresh when a previously expired session existed - **added** — Additional guidance provided on licence settings page when licence status is Unknown Using SSO when a previously expired session existed would require a hard refresh. Additional guidance on licence settings page where licence status is Unknown. ### 12.5.0 - Date: 2025-05-20 - Version: 12.5.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.5.0 - **added** — Ability to restrict access to the Master Organisation by IP address for interactive login and SSO - **fixed** — Incorrect domain sort order on email creation for users of Chrome browser - **fixed** — Auto generated invite link was missing :2087 for clusters without a control panel domain configured - **fixed** — Prohibited domain UI was incorrectly shown to resellers - **changed** — pt-PT language pack improvements - **fixed** — Plesk importer can now handle generated XML with self-closing tags created by some versions of Plesk 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. 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. 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. ### 12.4.0 - Date: 2025-05-14 - Version: 12.4.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.4.0 - **added** — 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 - **fixed** — Customer and subscription stickiness were incorrectly applied when toggled in the UI - **changed** — Improved guidance for setting of HELO name 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. Customer and subscription stickiness were incorrectly applied when toggled in the UI. Improved guidance for setting of HELO name. ### 12.3.3 - Date: 2025-05-12 - Version: 12.3.3 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.3.3 - **fixed** — Redis status persisted on website migration - **fixed** — Ioncube status persisted on website migration - **fixed** — Package setting for automatic installation of WooCommerce now working - **fixed** — WP plugin list tolerates boolean update parameter in json plugin listing from wp-cli - **fixed** — File manager text editor now functional in RTL locales - **changed** — Primary domain now appears at the top of the domain selector when creating a new email address - **fixed** — In file manager, files with non-utf8 encoded filenames no longer cause a fatal error, instead any invalid characters are displayed as replacement character - **changed** — appcd-cli list-websites now returns JSON output - **changed** — Custom CORS feature now permits multiple origins - **fixed** — Openlitespeed is now explicitly restarted after installation to pick up Enhance systemd override drop-in - **fixed** — Openlitespeed is now explicitly uninstalled when changing to another web server type - **fixed** — WordPress auto discovery tolerates longer database names from imported websites - **changed** — A more informative error is given when a reseller or master organisation has no phpMyAdmin domain configured - **changed** — Added port 587 to email client config guidance 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. 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. ### 12.3.2 - Date: 2025-05-02 - Version: 12.3.2 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.3.2 - **changed** — French language pack improvements - **changed** — 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 - **fixed** — Failure to remove expired snapshots when using S3-compatible backup system French language pack improvements. orchd service will now wait for initialisation of master organisation before starting internal workers. Intermittent issue with restoring large database tables when using S3-compatible backup system. Failure to remove expired snapshots when using S3-compatible backup system. ### 12.3.1 - Date: 2025-04-29 - Version: 12.3.1 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.3.1 - **changed** — Improved licence check logic in orchd service - **changed** — 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 - **changed** — Improved pt-BR locale 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. ### 12.3.0 - Date: 2025-04-23 - Version: 12.3.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.3.0 - **added** — createWebsite endpoint now installs WordPress and any preinstalled plugins and themes if specified on the customer's hosting package - **changed** — Improved Norwegian language pack - **changed** — Improved Arabic language pack - **changed** — Improved Ukranian language pack - **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 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. 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. ### 12.2.0 - Date: 2025-04-11 - Version: 12.2.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.2.0 - **added** — Hebrew language pack - **added** — Support for legacy PHP 5.2 - 5.5 - **changed** — Improved Portugese and Bulgarian language pack - **added** — Added Restart=always to lshttpd systemd override - **fixed** — Fix for missing /dev/tty device in customer SSH environment - **changed** — CHMOD setting now applies recursively 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. Improved Portugese and Bulgarian language pack. Added Restart=always to lshttpd systemd override. Fix for missing /dev/tty device in customer SSH environment. CHMOD setting now applies recursively. ### 12.1.0 - Date: 2025-03-24 - Version: 12.1.0 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.1.0 - **added** — Support for sending custom access-Host-Allowed-Origin header from control panel API - **changed** — Backup process is now tolerant of the previous snapshot having been manually removed - **added** — WordPress plugin installation API can now accept a URL for installation of plugins not registered with WordPress.org Support for sending custom access-Host-Allowed-Origin header from control panel API. 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. ### 12.0.28 - Date: 2025-03-12 - Version: 12.0.28 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.0.28 Improved logic for error handling in backups to the Enhance backup target. ### 12.0.29 - Date: 2025-03-12 - Version: 12.0.29 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.0.29 Automatic rebuild of resolv.conf within postfix chroot. ### 12.0.30 - Date: 2025-03-12 - Version: 12.0.30 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.0.30 Improved logic for de-duplication of backup data during role migration. ### 12.0.27 - Date: 2025-03-05 - Version: 12.0.27 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.0.27 - **fixed** — Backup destination is now updated on the destination server during application role transfer - **changed** — ecp sso now prints an SSO link for the control panel domain in addition to the IP - **changed** — Increased timeout for post migration cleanup activities Backup destination was not updated on the destination server during application role transfer. ecp sso now prints an SSO link for the control panel domain in addition to the IP. Increased timeout for post migration cleanup activities. ### 12.0.26 - Date: 2025-03-02 - Version: 12.0.26 - Original notes: https://enhance.com/support/release-notes - Permalink: https://whatsnew.fyi/product/enhance/releases/12.0.26 appcd-cli utility can optionally specify the website kind.