This deprecates passing null to non-nullable scale arguments of internal functions, with the eventual goal of making the behavior consistent with userland functions, where null is never accepted for non-nullable arguments. This change is expected to cause quite a lot of fallout. In most cases, calling code should be adjusted to avoid passing null. In some cases, PHP should be adjusted to make some function arguments nullable. I have already fixed a number of functions before landing this, but feel free to file a bug if you encounter a function that doesn't accept null, but probably should. (The rule of thumb for this to be applicable is that the function must have special behavior for 0 or "", which is distinct from the natural behavior of the parameter.) RFC: https://wiki.php.net/rfc/deprecate_null_to_scalar_internal_arg Closes GH-6475.
The imap extension tests
Many of the tests in this directory require a mail server to be running, if there is no mail server the test will skip and warn, see skipif.inc for details.
To make the tests run parameters in the skipif.inc and imap_include.inc
files will need to be changed to match the local mailserver configuration.
The tests have been checked using dovecot (on Linux 32 and 64 bit systems) and hMailServer on Windows. The tests are intended to be mailserver agnostic.
Set-up tests on Ubuntu (checked on Ubuntu 18.04 (Bionic))
The necessary packages can be installed using the following command;
apt-get install libc-client-dev libkrb5-dev dovecot-core dovecot-pop3d dovecot-imapd sendmail
The build of PHP will need to be compiled with the following flags:
--with-imap --with-kerberos --with-imap-ssl
Then run the set-up script ext/imap/tests/setup/setup.sh which will add the vmail
group and user which is used by Dovecot for the mailbox. It will also copy the
ext/imap/tests/setup/dovecot.conf and ext/imap/tests/setup/dovecotpass to the correct
location for Dovecot and restarts it for the new configuration to be enabled.