Version 1.653
Released: 2023-09-18
Debug flag for running CustomBuild from CLI new
Running CustomBuild script from CLI now has debug mode, which is enabled with --debug flag. Example usage:
da build --debug wp
Enabling debug mode changes CustomBuild behaviour in the following way:
- CustomBuild script will be executed in bash trace mode, which will print all executed commands to the output.
- Temporary directories used to compile software will not be wiped-out after script exits. Temporary files are stored in
/usr/local/directadmin/custombuild/tmpchecking it out can be useful when debugging software compilation or configuration errors.
Simplified multi-server (cluster) IP binding logic update
If DA is configured to use multi-server (cluster) feature outgoing requests to other DA instances used a complicated set of logic to bind the request to a specific IP address on the source server. It depended on combination of cluster_ip_bind, lan_ip and ethernet_dev values in directadmin.conf
The logic for binding request to specific source IP address or allowing OS to pick suitable source IP address is changed in the follwing way.
Old behaviour:
- If
cluster_ip_bindis empty andlan_ipis empty, bind to first IP address of network device set inethernet_dev. This behaviour used to cause unexpected problems if first IP address on the interface is not suitable for outgoing connections. - If
cluster_ip_bindis empty andlan_ipis not empty, bind to IP set intlan_ip. - If
cluster_ip_bindis non empty and not set toNULL(case insensitive) value, then bind to the specified address. - If
cluster_ip_bindis non empty but set toNULL(case insensitive) value allow OS to pick source IP address.
New behaviour:
- If
cluster_ip_bindis not empty, bind to the specified address. - If
cluster_ip_bindis empty, allow OS to pick source IP address.
Update script will detect if cluster_ip_bind is set to NULL and automatically set it to empty value to continue using OS preferred IP address as before this upgrade.
Permissions command files structure update
da permissions command is responsible for ensuring correct DirectAdmin files structure. It is automatically called on DirectAdmin install and updates.
Permissions command had a minor flaw which caused it to exit early if some operation fails. The comman has been improved to rather continue its execution, printing all errors it encounters.
CloudLinux Solo licenses can use lsphp PHP mode custombuild update
CloudLinux Solo licenses can now use mod_lsapi package for using lsphp PHP mode. CustomBuild script is updated to allow selecting lsphp on servers using CloudLinux solo licenses.
This mode could be enabled with command:
da build set php1_mode lsphp
Software version changes custombuild update
MariaDB 10.4updated from10.4.30to10.4.31MariaDB 10.5updated from10.5.21to10.5.22MariaDB 10.6updated from10.6.14to10.6.15MariaDB 10.11added with10.11.5versionPHP 8.1updated from8.1.22to8.1.23PHP 8.2updated from8.2.8to8.2.10phalcon5updated from5.2.3to5.3.1roundcubemailupdated from1.6.2to1.6.3composerupdated from2.5.8to2.6.3nginxupdated from1.25.1to1.25.2redisupdated from7.0.12to7.2.1owasp3_rulesupdated from3.3.4to3.3.5unitupdated from1.30.0to1.31.0ioncube_loadersupdated from12.0.4to13.0.1dovecotupdated from2.3.20to2.3.21pigeonhole23updated from0.5.20to0.5.21openlitespeedupdated from1.7.17to1.7.18.1
Notes:
- new ionCube loaders now support PHP 8.2
- MariaDB 10.11 is now available
Default PHP opcache extension configuration custombuild update
This version has updated opcache PHP extension configuration (file custombuild/configure/opcache/opcache.ini). It does not set explicit configuration options that matches default opcache configuration.
Option opcache.enable_cli=1 is removed so the default value of opcache.enable_cli=0 will be used.
Using opcache for CLI calls is not recommended and causes compatibility issues with ioncube PHP loader extension. With this change latest ioncube loader can be used.
Remove cbl.abuseat.org from exim.conf custombuild update
The project was merged with the spamhouse and we do already have the zen.spamhouse.org in our rbl check list:
More information - https://www.abuseat.org/cutover.html.
Sent email limit for individual mail-boxes custombuild fix
In some cases sending an email would be counted only towards DirectAdmin user account limit but not for the particular mailbox limit.
This happens if upper-case characters were used in SMTP authentication for mail delivery.
This version updates exim.conf and exim.pl scripts to ensure Exim would always use lower-cased version of mailbox address. This fixes the limits accounting issue.
Compiling PHP readline extension on PHP 7.1 custombuild fix
Some systems failed to compile PHP readline extension on PHP 7.1 because of incorrect rl_completion_matches function detection. Compilation would fail with error:
...
/usr/local/directadmin/custombuild/php-7.1.33/ext/readline/readline.c:34:31: error: conflicting types for ‘completion_matches’
34 | #define rl_completion_matches completion_matches
| ^~~~~~~~~~~~~~~~~~
In file included from /usr/local/directadmin/custombuild/php-7.1.33/ext/readline/readline.c:38:
/usr/include/editline/readline.h:183:15: note: previous declaration of ‘completion_matches’ was here
183 | char **completion_matches(/* const */ char *, rl_compentry_func_t *);
| ^~~~~~~~~~~~~~~~~~
This version includes a patch for PHP sources that allows this extension to be compiled successfully.
Infinite Evolution skin reload loop on user password change fix
Changing user password used to cause Evolution skin to enter infinite reload loop. This release fixes the issue.
With this release - changing user password will no longer terminate active user sessions. Only prevent new logins using old password. Next DA versions will have separate page for listing and terminating active used sessions if needed as a separate action, not tied to the password change action.
Redis service clean-up on user deletion fix
Removing user which had active redis service running used to leave stopped and failed systemd redis instance unit. This version extends user deletion code to clean-up no longer needed systemd redis unit.
Sending emails from jailed environment using old msmtp version fix
Accounts in jailed environments uses msmtp tool to send email from CLI. Default config file for MSTP data/templates/exim.bubblewrap.conf used patterns %U and %H to generate sender address, but these patterns are only supported starting msmtp version 1.8.7.
Some distros are still using older msmtp versions (Debian 10 has msmtp 1.8.3 and Ubuntu 20 has msmtp 1.8.6). On these system using patterns in the configuration file fails preventing users from sending email in jailed environment.
This release updates the config file to generate from email address using DirectAdmin template system. This makes configs compatible with older msmtp on old distros.
After update configuration files will be updated automatically so no additional actions are needed.
Package renaming fix
Renaming a package to a same name used to delete the package entirely instead of leaving it untouched. This is now fixed so renaming package to the same name is no-op.
Preserving fragment URL part when loading plugins fix evolution
Some plugins render menus with URLs that contain fragment part (part after # symbol). Older Evolution versions ignored this part. With this release fragment part is preserved.
Fade-in/fade-out animation when navigating between pages removal evolution
Fade animation when navigating between pages in Evolution skin is removed. Skin option to disable these animations is removed as well with the new default being no animations.
