Using Moodle 4.2 dev

- Blue, reviewed, all ok.
- Red, requires action.

Global note #1: All the "Attributes are not supported in PHP 7.4 or earlier. Found: #[ReturnTypeWillChange]" reported changes have been removed from the report because they are a BC Compatible PHP 8.x attribute. Interpreted as normal comment by PHP 7.4

FILE: repository/s3/S3.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 14 WARNINGS AFFECTING 14 LINES
------------------------------------------------------------------------------------------------------------------------------------
  357 | WARNING | Function openssl_free_key() is deprecated since PHP 8.0
  374 | WARNING | Method name "S3::__triggerError" is discouraged; PHP has reserved all method names with a double underscore
      |         | prefix for future use.
 1615 | WARNING | Method name "S3::__getCloudFrontInvalidationBatchXML" is discouraged; PHP has reserved all method names with a
      |         | double underscore prefix for future use.
 1696 | WARNING | Method name "S3::__getCloudFrontDistributionConfigXML" is discouraged; PHP has reserved all method names with a
      |         | double underscore prefix for future use.
 1736 | WARNING | Method name "S3::__parseCloudFrontDistributionConfig" is discouraged; PHP has reserved all method names with a
      |         | double underscore prefix for future use.
 1796 | WARNING | Method name "S3::__getCloudFrontResponse" is discouraged; PHP has reserved all method names with a double
      |         | underscore prefix for future use.
 1829 | WARNING | Method name "S3::__getMIMEType" is discouraged; PHP has reserved all method names with a double underscore prefix
      |         | for future use.
 1878 | WARNING | Method name "S3::__getTime" is discouraged; PHP has reserved all method names with a double underscore prefix for
      |         | future use.
 1891 | WARNING | Method name "S3::__getSignature" is discouraged; PHP has reserved all method names with a double underscore
      |         | prefix for future use.
 1906 | WARNING | Method name "S3::__getHash" is discouraged; PHP has reserved all method names with a double underscore prefix for
      |         | future use.
 2291 | WARNING | Method name "S3Request::__sortMetaHeadersCmp" is discouraged; PHP has reserved all method names with a double
      |         | underscore prefix for future use.
 2309 | WARNING | Method name "S3Request::__responseWriteCallback" is discouraged; PHP has reserved all method names with a double
      |         | underscore prefix for future use.
 2325 | WARNING | Method name "S3Request::__dnsBucketName" is discouraged; PHP has reserved all method names with a double
      |         | underscore prefix for future use.
 2344 | WARNING | Method name "S3Request::__responseHeaderCallback" is discouraged; PHP has reserved all method names with a double
      |         | underscore prefix for future use.
------------------------------------------------------------------------------------------------------------------------------------
^^^
All those changes are "discouraged" but not forbidden. Hence, no action needed. The openssl_free_key() is protected with PHP check.

FILE: cache/stores/mongodb/MongoDB/Model/BSONDocument.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 3 ERRORS AND 1 WARNING AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
  36 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
     |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: cache/stores/mongodb/MongoDB/Model/IndexInput.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 41 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: cache/stores/mongodb/MongoDB/Model/BSONArray.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 3 ERRORS AND 1 WARNING AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
  37 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
     |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: cache/stores/mongodb/MongoDB/Exception/InvalidArgumentException.php
----------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
----------------------------------------------------------------------------------------------------------
 60 | ERROR | The function get_debug_type() is not present in PHP version 7.4 or earlier
----------------------------------------------------------------------------------------------------------
^^^
Need check. The problem seems to be real. Normal MongoDB installation solves that with symfony polyfill
via composer. We don't install that in our import. Maybe we don't use it, but needs verification.
Created MDL-77097

FILE: cache/stores/mongodb/MongoDB/Exception/ResumeTokenException.php
------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------
 33 | ERROR | The function get_debug_type() is not present in PHP version 7.4 or earlier
------------------------------------------------------------------------------------------------------
^^^
Need check. The problem seems to be real. Normal MongoDB installation solves that with symfony polyfill
via composer. We don't install that in our import. Maybe we don't use it, but needs verification.
Created MDL-77097

FILE: auth/cas/CAS/vendor/apereo/phpcas/source/CAS/GracefullTerminationException.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 64 | WARNING | When exit() is called within an object constructor, the object destructor will no longer be called since PHP 8.0
    |         | While no __destruct() method was found in this class, one may be declared in the parent class or in a trait being
    |         | used.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: All ok, there isn't any __destruct(), and parent class is PHP's core one (no destruct either). This was also in the PHP 8.0 report.

FILE: auth/cas/CAS/vendor/apereo/phpcas/source/CAS/AuthenticationException.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 79 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: auth/cas/CAS/vendor/apereo/phpcas/source/CAS/Client.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 1080 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
      |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
      |       | set.
 4184 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
      |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
      |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: auth/cas/CAS/vendor/apereo/phpcas/source/CAS.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 612 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: admin/renderer.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 983 | ERROR | Passing the $glue and $pieces parameters in reverse order to implode has been deprecated since PHP 7.4 and is
     |       | removed since PHP 8.0; $glue should be the first parameter and $pieces the second
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, it's correct, just the $glue is too big. This was also in the PHP 8.0 report.

FILE: admin/cli/mysql_collation.php
------------------------------------------------------------------------------------------------------------
FOUND 4 ERRORS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------
  60 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
 153 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
 233 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
 256 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, all the functions detected above are Moodle ones, not extension ones. This was also in the PHP 8.0 report.

FILE: enrol/lti/ims-blti/blti_util.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 4 ERRORS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
 125 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 126 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 158 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 159 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: enrol/lti/ims-blti/OAuth.php
-------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
-------------------------------------------------------------------------
 154 | WARNING | Function openssl_free_key() is deprecated since PHP 8.0
 177 | WARNING | Function openssl_free_key() is deprecated since PHP 8.0
-------------------------------------------------------------------------
^^^
Note: Already fixed by MDL-73523 . They are conditional. This was also in the PHP 8.0 report.

FILE: enrol/self/bulkchangeforms.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 1 | WARNING | No PHP code was found in this file and short open tags are not allowed by this install of PHP. This file may be
   |         | using short open tags but PHP does not allow them.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Empty file. All ok, so far. This was also in the PHP 8.0 report.

FILE: grade/export/lib.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 77 | WARNING | Since PHP 7.0, functions inspecting arguments, like func_get_args(), no longer report the original value as passed
    |         | to a parameter, but will instead provide the current value. The parameter "$formdata" was used, and possibly
    |         | changed (by reference), on line 76.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive. $formdata is not modified before the func_get_args() call. This was also in the PHP 8.0 report.

FILE: mnet/lib.php
--------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
--------------------------------------------------------------------------
 438 | WARNING | Function openssl_x509_free() is deprecated since PHP 8.0
 450 | WARNING | Function openssl_pkey_free() is deprecated since PHP 8.0
--------------------------------------------------------------------------
^^^
Note: openssl already fixed by MDL-73523 . They are conditional. This was also in the PHP 8.0 report.

FILE: search/classes/document_factory.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 68 | ERROR | Indirect access to variables, properties and methods will be evaluated strictly in left-to-right order since PHP 7.0.
    |       | Use curly braces to remove ambiguity.
 73 | ERROR | Indirect access to variables, properties and methods will be evaluated strictly in left-to-right order since PHP 7.0.
    |       | Use curly braces to remove ambiguity.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: It just works ok, not the more beautiful in the world, but works. Nothing to do. This was also in the PHP 8.0 report.

FILE: lib/plist/classes/CFPropertyList/CFBinaryPropertyList.php
--------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 1 LINE
--------------------------------------------------------------------------------------------------------------
 363 | ERROR | Function recode_string() is removed since PHP 7.4; Use the iconv or mbstring extension instead
 363 | ERROR | Extension 'recode' is removed since PHP 7.4; Use iconv or mbstring instead
--------------------------------------------------------------------------------------------------------------
^^^
Note: It's conditional, using function_exists(). False positive. This was also in the PHP 8.0 report.

FILE: lib/tcpdf/include/tcpdf_static.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 28 ERRORS AND 2 WARNINGS AFFECTING 12 LINES
------------------------------------------------------------------------------------------------------------------------------------
  143 | ERROR   | Function set_magic_quotes_runtime() is deprecated since PHP 5.3 and removed since PHP 7.0
  159 | ERROR   | Function get_magic_quotes_runtime() is deprecated since PHP 7.4 and removed since PHP 8.0
  460 | ERROR   | Function mcrypt_create_iv() is deprecated since PHP 7.1 and removed since PHP 7.2; Use random_bytes() or OpenSSL
      |         | instead
  460 | ERROR   | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
      |         | once available instead
  460 | ERROR   | Function mcrypt_get_iv_size() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
  460 | ERROR   | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
      |         | once available instead
  460 | ERROR   | The constant "MCRYPT_RIJNDAEL_128" is deprecated since PHP 7.1 and removed since PHP 7.2
  460 | ERROR   | The constant "MCRYPT_MODE_CBC" is deprecated since PHP 7.1 and removed since PHP 7.2
  460 | ERROR   | The constant "MCRYPT_RAND" is deprecated since PHP 7.1 and removed since PHP 7.2
  461 | ERROR   | Function mcrypt_encrypt() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
  461 | ERROR   | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
      |         | once available instead
  461 | ERROR   | The constant "MCRYPT_RIJNDAEL_128" is deprecated since PHP 7.1 and removed since PHP 7.2
  461 | ERROR   | The constant "MCRYPT_MODE_CBC" is deprecated since PHP 7.1 and removed since PHP 7.2
  486 | ERROR   | Function mcrypt_get_iv_size() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
  486 | ERROR   | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
      |         | once available instead
  486 | ERROR   | The constant "MCRYPT_RIJNDAEL_128" is deprecated since PHP 7.1 and removed since PHP 7.2
  486 | ERROR   | The constant "MCRYPT_MODE_CBC" is deprecated since PHP 7.1 and removed since PHP 7.2
  487 | ERROR   | Function mcrypt_encrypt() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
  487 | ERROR   | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
      |         | once available instead
  487 | ERROR   | The constant "MCRYPT_RIJNDAEL_128" is deprecated since PHP 7.1 and removed since PHP 7.2
  487 | ERROR   | The constant "MCRYPT_MODE_CBC" is deprecated since PHP 7.1 and removed since PHP 7.2
  504 | ERROR   | Function mcrypt_encrypt() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
  504 | ERROR   | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
      |         | once available instead
  504 | ERROR   | The constant "MCRYPT_ARCFOUR" is deprecated since PHP 7.1 and removed since PHP 7.2
  504 | ERROR   | The constant "MCRYPT_MODE_STREAM" is deprecated since PHP 7.1 and removed since PHP 7.2
 1859 | WARNING | INI directive 'safe_mode' is deprecated since PHP 5.3 and removed since PHP 5.4
 1936 | ERROR   | The default value of the $flags parameter for htmlspecialchars_decode() was changed from ENT_COMPAT to ENT_QUOTES
      |         | | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1949 | ERROR   | The default value of the $flags parameter for htmlspecialchars_decode() was changed from ENT_COMPAT to ENT_QUOTES
      |         | | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1962 | ERROR   | The default value of the $flags parameter for htmlspecialchars_decode() was changed from ENT_COMPAT to ENT_QUOTES
      |         | | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1995 | WARNING | INI directive 'safe_mode' is deprecated since PHP 5.3 and removed since PHP 5.4
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: The set_magic_quotes_runtime() are conditional for old PHp versions.
Note: The mcrypt uses are conditional, only if openssl (that is mandatory) is not available. So all ok.
This was also in the PHP 8.0 report.
Some already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/tcpdf/tcpdf.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 5 ERRORS AFFECTING 3 LINES
------------------------------------------------------------------------------------------------------------------------------------
 10993 | ERROR | Function mcrypt_get_cipher_name() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 10993 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt
       |       | once available instead
 10993 | ERROR | The constant "MCRYPT_RIJNDAEL_128" is deprecated since PHP 7.1 and removed since PHP 7.2
 16427 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
       |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
       |       | explicitly set.
 16436 | ERROR | Self-closing XHTML tags are ignored. Only non-self-closing tags should be used in the strip_tags() $allowed_tags
       |       | parameter since PHP 5.3.4. Found:
       |       | '<marker/><a><b><blockquote><body><br><br/><dd><del><div><dl><dt><em><font><form><h1><h2><h3><h4><h5><h6><hr><hr/><i><img><input><label><li><ol><option><p><pre><s><select><small><span><strike><strong><sub><sup><table><tablehead><tcpdf><td><textarea><th><thead><tr><tt><u><ul>'
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: mcrypt use is conditional, if the extension is loaded, hence, all ok.
Note: the strip_tags() use includes some self-closing (img...) tags, so they will be ignored. Wrong but behavior is not altered.
This was also in the PHP 8.0 report.
Some already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/pear/HTML/QuickForm.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 613 | WARNING | Since PHP 7.0, functions inspecting arguments, like func_get_args(), no longer report the original value as passed
     |         | to a parameter, but will instead provide the current value. The parameter "$element" was used, and possibly
     |         | changed (by reference), on line 609.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, $element is not used, because the array is sliced. This was also in the PHP 8.0 report.

FILE: lib/pear/HTML/Common.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 171 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/pear/HTML/QuickForm/element.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 242 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/pear/HTML/QuickForm/textarea.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 202 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 219 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/pear/PEAR.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AND 3 WARNINGS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
  55 | ERROR   | INI directive 'track_errors' is deprecated since PHP 7.2 and removed since PHP 8.0
 720 | WARNING | INI directive 'safe_mode' is deprecated since PHP 5.3 and removed since PHP 5.4
 737 | WARNING | Function dl() is deprecated since PHP 5.3
 737 | WARNING | Function dl() is deprecated since PHP 5.3
 856 | ERROR   | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
     |         | passed to a parameter, but will instead provide the current value. The parameter "$mode" was changed on line 842.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: The track_errors use doesn't hurt.
Note: dl() is conditional (function_exists()) covered, so all ok.
Note: $mode may be modified, but it doesn't hurt to get the modified (effective) value in the debug_backtrace()
This was also in the PHP 8.0 report.

FILE: lib/phpspreadsheet/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Security/XmlScanner.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 74 | WARNING | Function libxml_disable_entity_loader() is deprecated since PHP 8.0
 85 | WARNING | Function libxml_disable_entity_loader() is deprecated since PHP 8.0
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Ignorable, the 2 uses are conditional. This was also in the PHP 8.0 report.

FILE: lib/phpspreadsheet/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Reader/Csv.php
---------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
---------------------------------------------------------------------------------------------------------------------------
 317 | WARNING | INI directive 'auto_detect_line_endings' is deprecated since PHP 8.1
---------------------------------------------------------------------------------------------------------------------------
^^^ Ok, it's protected with the silence (@) operator.

FILE: lib/phpspreadsheet/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Collection/Memory/SimpleCache3.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 54 | ERROR | 'mixed' return type is not present in PHP version 7.4 or earlier
------------------------------------------------------------------------------------------------------------------------------------
^^^ This can be a problem in MOODLE_401_STABLE if we use it. Check!
Created MDL-77099

FILE: lib/phpspreadsheet/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Shared/XMLWriter.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 92 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/phpspreadsheet/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Helper/TextGrid.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 78 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/phpmailer/src/PHPMailer.php
---------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AND 3 WARNINGS AFFECTING 4 LINES
---------------------------------------------------------------------------------------------------------------
  861 | WARNING | INI directive 'mbstring.func_overload' is deprecated since PHP 7.2 and removed since PHP 8.0
 1471 | ERROR   | The constant "INTL_IDNA_VARIANT_2003" is deprecated since PHP 7.2 and removed since PHP 8.0
 4736 | WARNING | Function openssl_pkey_free() is deprecated since PHP 8.0
 4742 | WARNING | Function openssl_pkey_free() is deprecated since PHP 8.0
---------------------------------------------------------------------------------------------------------------
^^^
Note: The use of mbstring.func_overload doesn't have any effect. Will always return false.
Note: If INTL_IDNA_VARIANT_UTS46 is defined, it's used always. So all right.
Note: The openssl_pkey_free() and conditional, so all ok.
This was also in the PHP 8.0 report.

FILE: lib/adodb/adodb-pear.inc.php
----------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
----------------------------------------------------------------------
 370 | WARNING | Function dl() is deprecated since PHP 5.3
----------------------------------------------------------------------
^^^
Note: Related to old drivers that we don't use. Our big 5 (mariadb, mysql, oracle, postgres and sqlsrv) are working ok and are covered, so NP. This was also in the PHP 8.0 report.

FILE: lib/adodb/adodb-lib.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 10 ERRORS AND 1 WARNING AFFECTING 11 LINES
------------------------------------------------------------------------------------------------------------------------------------
  242 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
  294 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
  304 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
  388 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1200 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1203 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1205 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1224 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1232 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
 1257 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
      |         | passed to a parameter, but will instead provide the current value. The parameter "$ishtml" was used, and possibly
      |         | changed (by reference), on line 1247.
 1280 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
      |         | explicitly set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/adodb/drivers/adodb-oci8po.inc.php
------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 5 WARNINGS AFFECTING 5 LINES
------------------------------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-fbsql.inc.php
----------------------------------------------------------------------------
FOUND 43 ERRORS AFFECTING 23 LINES
----------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-sybase.inc.php
----------------------------------------------------------------------------------
FOUND 36 ERRORS AFFECTING 18 LINES
----------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-informix72.inc.php
---------------------------------------------------------------------------------
FOUND 25 ERRORS AFFECTING 25 LINES
---------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-csv.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-oracle.inc.php
-----------------------------------------------------------------------------
FOUND 30 ERRORS AFFECTING 27 LINES
-----------------------------------------------------------------------------
^^^
Note: Lots of warnings, mainly related to old drivers that we don't use. Our big 5 (mariadb,
mysql, oracle, postgres and sqlsrv) are working ok and are covered, so NP. Maybe people using
other drivers (they can) may face some problem, but that will need to be fixed under demand. This was also in the PHP 8.0 report.

FILE: lib/adodb/drivers/adodb-mysqli.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 1264 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
      |       | set.
 1282 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
      |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
      |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/adodb/drivers/adodb-borland_ibase.inc.php
------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 1 LINE
------------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-sqlitepo.inc.php
-------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 1 LINE
-------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-mssql.inc.php
-------------------------------------------------------------------------------
FOUND 77 ERRORS AFFECTING 41 LINES
-------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-firebird.inc.php
-------------------------------------------------------------------------------
FOUND 36 ERRORS AFFECTING 35 LINES
-------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-ibase.inc.php
----------------------------------------------------------------------------------
FOUND 76 ERRORS AFFECTING 42 LINES
----------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-mssqlpo.inc.php
------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 1 LINE
------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-pdo_firebird.inc.php
-----------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
-----------------------------------------------------------------------------------
FILE: lib/adodb/drivers/adodb-sqlite.inc.php
-----------------------------------------------------------------------------
FOUND 40 ERRORS AFFECTING 22 LINES
-----------------------------------------------------------------------------
FILE: lib/adodb/adodb.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 17 ERRORS AND 1 WARNING AFFECTING 18 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/adodb-perf.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 9 ERRORS AFFECTING 9 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/tohtml.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/adodb-xmlschema.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 6 ERRORS AFFECTING 6 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/adodb-time.inc.php
-----------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 5 WARNINGS AFFECTING 4 LINES
-----------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/adodb-pager.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/perf/perf-mssql.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/perf/perf-postgres.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/perf/perf-mysql.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/perf/perf-mssqlnative.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/perf/perf-oci8.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
FILE: lib/adodb/adodb-xmlschema03.inc.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 10 ERRORS AFFECTING 10 LINES
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Lots of warnings, mainly related to old drivers that we don't use. Our big 5 (mariadb,
mysql, oracle, postgres and sqlsrv) are working ok and are covered, so NP. Maybe people using
other drivers (they can) may face some problem, but that will need to be fixed under demand. This was also in the PHP 8.0 report.

FILE: lib/portfoliolib.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 815 | ERROR | Since PHP 7.0, functions inspecting arguments, like func_get_args(), no longer report the original value as passed
     |       | to a parameter, but will instead provide the current value. The parameter "$plugin" was changed on line 809.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, $plugin is not used, because the args are shifted. This was also in the PHP 8.0 report.

FILE: lib/modinfolib.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 3 WARNINGS AFFECTING 3 LINES
------------------------------------------------------------------------------------------------------------------------------------
  172 | WARNING | Method name "course_modinfo::__empty" is discouraged; PHP has reserved all method names with a double underscore
      |         | prefix for future use.
 1585 | WARNING | Method name "cm_info::__empty" is discouraged; PHP has reserved all method names with a double underscore prefix
      |         | for future use.
 3101 | WARNING | Method name "section_info::__empty" is discouraged; PHP has reserved all method names with a double underscore
      |         | prefix for future use.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: All these changes are "discouraged" but not forbidden. Hence, no action needed, though we should fix them, apart from the Epic is ok. This was also in the PHP 8.0 report.

FILE: lib/xhprof/xhprof_lib/utils/xhprof_runs.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 4 ERRORS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
 155 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 156 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 157 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 158 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/xhprof/xhprof_lib/display/xhprof.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 46 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/simplepie/library/SimplePie.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AND 1 WARNING AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
  685 | ERROR   | When die() is called within an object constructor, the object destructor will no longer be called since PHP 8.0
 3222 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
      |         | passed to a parameter, but will instead provide the current value. The parameter "$method" was used, and possibly
      |         | changed (by reference), on line 3208.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: No problem, the die() only happens for PHP < 5.6. This was also in the PHP 8.0 report.

FILE: lib/simplepie/library/SimplePie/Parser.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 655 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 662 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/simplepie/library/SimplePie/Item.php
--------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
--------------------------------------------------------------------------------------------------------------------
 882 | WARNING | Function strftime() is deprecated since PHP 8.1; Use date() or IntlDateFormatter::format() instead
--------------------------------------------------------------------------------------------------------------------
^^^
Created MDL-77103

FILE: lib/html2text/Html2Text.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AND 1 WARNING AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 241 | WARNING | Since PHP 7.0, functions inspecting arguments, like func_get_args(), no longer report the original value as passed
     |         | to a parameter, but will instead provide the current value. The parameter "$options" was used, and possibly
     |         | changed (by reference), on line 240.
 420 | ERROR   | The default value of the $flags parameter for html_entity_decode() was changed from ENT_COMPAT to ENT_QUOTES |
     |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
     |         | explicitly set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive. The $options parameter is not modified before calling to func_get_args(). This was also in the PHP 8.0 report.
Some already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/google/src/Google/Signer/P12.php
---------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
---------------------------------------------------------------------------
 79 | WARNING | Function openssl_pkey_free() is deprecated since PHP 8.0
---------------------------------------------------------------------------
^^^
Note: Already fixed by MDL-73523 . They are conditional. This was also in the PHP 8.0 report.

FILE: lib/google/src/Google/Model.php
---------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
---------------------------------------------------------------------------------------------------
 254 | ERROR | Attributes are not supported in PHP 7.4 or earlier. Found: #[\ReturnTypeWillChange]
---------------------------------------------------------------------------------------------------
^^^
Note: No problem. They are conditional.

FILE: lib/google/src/Google/Verifier/Pem.php
-----------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
-----------------------------------------------------------------------------
 55 | WARNING | Function openssl_x509_free() is deprecated since PHP 8.0
-----------------------------------------------------------------------------
^^^
Note: Already fixed by MDL-73523 . They are conditional. This was also in the PHP 8.0 report.

FILE: lib/dml/moodle_database.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 528 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
     |         | passed to a parameter, but will instead provide the current value. The parameter "$error" was used, and possibly
     |         | changed (by reference), on line 518.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, the $error parameter is not modified before the call to debug_backtrace(). This was also in the PHP 8.0 report.

FILE: lib/graphlib.php
-----------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 10 WARNINGS AFFECTING 10 LINES
-----------------------------------------------------------------------------------------------------------
 1568 | WARNING | The "num_points" parameter for function ImageFilledPolygon() is deprecated since PHP 8.1
 1571 | WARNING | The "num_points" parameter for function ImagePolygon() is deprecated since PHP 8.1
 1574 | WARNING | The "num_points" parameter for function ImageFilledPolygon() is deprecated since PHP 8.1
 1577 | WARNING | The "num_points" parameter for function ImagePolygon() is deprecated since PHP 8.1
 1668 | WARNING | The "num_points" parameter for function ImageFilledPolygon() is deprecated since PHP 8.1
 1669 | WARNING | The "num_points" parameter for function ImagePolygon() is deprecated since PHP 8.1
 1689 | WARNING | The "num_points" parameter for function ImageFilledPolygon() is deprecated since PHP 8.1
 1692 | WARNING | The "num_points" parameter for function ImagePolygon() is deprecated since PHP 8.1
 1779 | WARNING | The "num_points" parameter for function ImageFilledPolygon() is deprecated since PHP 8.1
 1786 | WARNING | The "num_points" parameter for function ImageFilledPolygon() is deprecated since PHP 8.1
-----------------------------------------------------------------------------------------------------------
^^^
Note: Fixed by MDL-75945 - the 10 cases, putting the calls under PHP version conditions.

FILE: lib/horde/framework/Horde/Imap/Client/Mailbox.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 29 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Url.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 26 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Ids/Map.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 28 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Search/Query.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 25 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Ids.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 41 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/AclRights.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 23 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/Envelope.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 36 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/SearchCharset.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 27 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/Capability.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 24 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/Acl.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 23 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/Namespace.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 34 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Imap/Client/Data/Thread.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 24 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Crypt/Blowfish/Mcrypt.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 17 ERRORS AFFECTING 8 LINES
------------------------------------------------------------------------------------------------------------------------------------
 53 | ERROR | Function mcrypt_module_open() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 53 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 53 | ERROR | The constant "MCRYPT_BLOWFISH" is deprecated since PHP 7.1 and removed since PHP 7.2
 60 | ERROR | Function mcrypt_generic_init() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 60 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 61 | ERROR | Function mcrypt_generic() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 61 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 62 | ERROR | Function mcrypt_generic_deinit() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 62 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 71 | ERROR | Function mcrypt_generic_init() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 71 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 72 | ERROR | Function mdecrypt_generic() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 73 | ERROR | Function mcrypt_generic_deinit() is deprecated since PHP 7.1 and removed since PHP 7.2; Use OpenSSL instead
 73 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 83 | ERROR | Function mcrypt_create_iv() is deprecated since PHP 7.1 and removed since PHP 7.2; Use random_bytes() or OpenSSL
    |       | instead
 83 | ERROR | Extension 'mcrypt' is deprecated since PHP 7.1 and removed since PHP 7.2; Use openssl (preferred) or pecl/mcrypt once
    |       | available instead
 83 | ERROR | The constant "MCRYPT_RAND" is deprecated since PHP 7.1 and removed since PHP 7.2
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Everything happens conditionally, if PHP < 7.1 and the extension is loaded, in the supported() method. So all ok. This was also in the PHP 8.0 report.

FILE: lib/horde/framework/Horde/Mail/Transport/Mail.php
-------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
-------------------------------------------------------------------------------------------------
 102 | WARNING | INI directive 'safe_mode' is deprecated since PHP 5.3 and removed since PHP 5.4
-------------------------------------------------------------------------------------------------
^^^
Note: No problem, it will return always false. This was also in the PHP 8.0 report.

FILE: lib/horde/framework/Horde/Mail/Rfc822/List.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 34 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Stream/Filter/Htmlspecialchars.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 33 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/horde/framework/Horde/Variables.php
-----------------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
-----------------------------------------------------------------------------------
 338 | WARNING | The constant "FILTER_SANITIZE_STRING" is deprecated since PHP 8.1
 339 | WARNING | The constant "FILTER_SANITIZE_STRING" is deprecated since PHP 8.1
-----------------------------------------------------------------------------------
^^^
Note: To be fixed by MDL-76089 (waiting for integration as of 20230131).

FILE: lib/horde/framework/Horde/Stream.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 27 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Support/Backtrace.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 37 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
    |         | passed to a parameter, but will instead provide the current value. The parameter "$backtrace" was used, and
    |         | possibly changed (by reference), on line 30.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, the $backtrace parameter is not modified before the debug_backtrace() call. This was also in the PHP 8.0 report.

FILE: lib/horde/framework/Horde/String.php
--------------------------------------------------------------------------------------------------------------------------------
FOUND 11 ERRORS AFFECTING 11 LINES
--------------------------------------------------------------------------------------------------------------------------------
 148 | ERROR | The variable '$php_errormsg' is deprecated since PHP 7.2 and removed since PHP 8.0; Use error_get_last() instead
 149 | ERROR | INI directive 'track_errors' is deprecated since PHP 7.2 and removed since PHP 8.0
 151 | ERROR | The variable '$php_errormsg' is deprecated since PHP 7.2 and removed since PHP 8.0; Use error_get_last() instead
 487 | ERROR | The variable '$php_errormsg' is deprecated since PHP 7.2 and removed since PHP 8.0; Use error_get_last() instead
 488 | ERROR | INI directive 'track_errors' is deprecated since PHP 7.2 and removed since PHP 8.0
 490 | ERROR | INI directive 'track_errors' is deprecated since PHP 7.2 and removed since PHP 8.0
 491 | ERROR | The variable '$php_errormsg' is deprecated since PHP 7.2 and removed since PHP 8.0; Use error_get_last() instead
 497 | ERROR | The variable '$php_errormsg' is deprecated since PHP 7.2 and removed since PHP 8.0; Use error_get_last() instead
 498 | ERROR | INI directive 'track_errors' is deprecated since PHP 7.2 and removed since PHP 8.0
 509 | ERROR | INI directive 'track_errors' is deprecated since PHP 7.2 and removed since PHP 8.0
 510 | ERROR | The variable '$php_errormsg' is deprecated since PHP 7.2 and removed since PHP 8.0; Use error_get_last() instead
--------------------------------------------------------------------------------------------------------------------------------
^^^
Note: This doesn't seem to be affecting us. Was reviewed @ MDL-73520. And there is https://github.com/horde/Util/pull/7 to fix it. This was also in the PHP 8.0 report.

FILE: lib/horde/framework/Horde/Mime/Headers.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 27 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Mime/Headers/ContentParam.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 27 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Mime/Part.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 24 | WARNING | "Only Serializable" classes are deprecated since PHP 8.1. The magic __serialize() and __unserialize() methods need
    |         | to be implemented for cross-version compatibility. Missing implementation of: __serialize() and __unserialize()
------------------------------------------------------------------------------------------------------------------------------------
^^^
Being managed @ MDL-77095. It continues working ok for now (deprecation message aside), but will stop working with PHP 9.

FILE: lib/horde/framework/Horde/Util.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 3 ERRORS AND 3 WARNINGS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
  93 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
     |         | explicitly set.
  93 | ERROR   | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |         | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
     |         | explicitly set.
 117 | ERROR   | Function get_magic_quotes_gpc() is deprecated since PHP 7.4 and removed since PHP 8.0
 512 | WARNING | INI directive 'safe_mode' is deprecated since PHP 5.3 and removed since PHP 5.4
 538 | WARNING | Function dl() is deprecated since PHP 5.3
 538 | WARNING | Function dl() is deprecated since PHP 5.3
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: get_magic_quotes_gpc() is used conditionally, all ok. This was also in the PHP 8.0 report.
Note: dl() is used conditionally (function_exists()), so all ok. This was also in the PHP 8.0 report.
Some already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/php-enum/src/Enum.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AND 2 WARNINGS AFFECTING 3 LINES
------------------------------------------------------------------------------------------------------------------------------------
   7 | WARNING | 'enum' is a soft reserved keyword as of PHP version 8.1 and should not be used to name a class, interface or trait
     |         | or as part of a namespace (namespace declaration)
  22 | WARNING | 'enum' is a soft reserved keyword as of PHP version 8.1 and should not be used to name a class, interface or trait
     |         | or as part of a namespace (class declaration)
  22 | ERROR   | Function name, class name, namespace name or constant name can not be reserved keyword 'implements' (since version
     |         | 5.0)
------------------------------------------------------------------------------------------------------------------------------------
^^^
Created MDL-77101

FILE: lib/tests/moodlelib_test.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 545 | ERROR | The behaviour of hexadecimal numeric strings was inconsistent prior to PHP 7 and support has been removed in PHP 7.
     |       | Found: '0X5'
 562 | ERROR | The behaviour of hexadecimal numeric strings was inconsistent prior to PHP 7 and support has been removed in PHP 7.
     |       | Found: '0X5'
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, we aren't trying to perform any hexadecimal operation there, just verify PARAM_LOCALISEDFLOAT behavior. This was also in the PHP 8.0 report.

FILE: lib/setuplib.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
 1955 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
      |         | passed to a parameter, but will instead provide the current value. The parameter "$method" was used, and possibly
      |         | changed (by reference), on line 1953.
 2180 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
      |         | passed to a parameter, but will instead provide the current value. The parameter "$code" was used, and possibly
      |         | changed (by reference), on line 2179.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, the $method and $code parameters are not modified before the debug_backtrace() call. This was also in the PHP 8.0 report (one of them).

FILE: lib/mustache/src/Mustache/Tokenizer.php
--------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
--------------------------------------------------------------------------------------------------------------
 106 | WARNING | INI directive 'mbstring.func_overload' is deprecated since PHP 7.2 and removed since PHP 8.0
--------------------------------------------------------------------------------------------------------------
^^^
Note: This is under conditional PHP version check, so all right. This was also in the PHP 8.0 report.

FILE: lib/phpxmlrpc/Response.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 3 WARNINGS AFFECTING 3 LINES
------------------------------------------------------------------------------------------------------------------------------------
 206 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
     |         | passed to a parameter, but will instead provide the current value. The parameter "$name" was used, and possibly
     |         | changed (by reference), on line 198.
 227 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
     |         | passed to a parameter, but will instead provide the current value. The parameter "$name" was used, and possibly
     |         | changed (by reference), on line 216.
 259 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
     |         | passed to a parameter, but will instead provide the current value. The parameter "$name" was used, and possibly
     |         | changed (by reference), on line 248.
------------------------------------------------------------------------------------------------------------------------------------
Note: False positive, the $name parameter is not modified before the debug_backtrace() call.

FILE: lib/moodlelib.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 6139 | ERROR | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
      |       | passed to a parameter, but will instead provide the current value. The parameter "$subject" was changed on line
      |       | 5997.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: The $subject parameter is effectively changed sometimes (diverted mail). But it doesn't hurt in case we show that value on debug backtrace information. This was also in the PHP 8.0 report.

FILE: lib/scssphp/Parser.php
---------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
---------------------------------------------------------------------------------------------------------------
 4187 | WARNING | INI directive 'mbstring.func_overload' is deprecated since PHP 7.2 and removed since PHP 8.0
---------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, it's used conditionally. This was also in the PHP 8.0 report.

FILE: lib/htmlpurifier/HTMLPurifier/AttrTransform/ImgSpace.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 28 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/htmlpurifier/HTMLPurifier/HTMLModule/Tidy.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 89 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/htmlpurifier/HTMLPurifier/CSSDefinition.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 533 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/htmlpurifier/HTMLPurifier/HTMLDefinition.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 4 ERRORS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
 310 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 369 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 370 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 386 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/htmlpurifier/HTMLPurifier/Config.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 4 ERRORS AFFECTING 4 LINES
------------------------------------------------------------------------------------------------------------------------------------
 184 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 229 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 312 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
 806 | ERROR | Function get_magic_quotes_gpc() is deprecated since PHP 7.4 and removed since PHP 8.0
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: The code is conditional (function_exists()), hence, correct.
Some already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/htmlpurifier/HTMLPurifier/DoctypeRegistry.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 89 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
    |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
    |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/htmlpurifier/HTMLPurifier/Lexer.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 133 | ERROR | The default value of the $flags parameter for htmlspecialchars() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/openspout/src/Reader/CSV/Reader.php
--------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 3 WARNINGS AFFECTING 3 LINES
--------------------------------------------------------------------------------------
 106 | WARNING | INI directive 'auto_detect_line_endings' is deprecated since PHP 8.1
 107 | WARNING | INI directive 'auto_detect_line_endings' is deprecated since PHP 8.1
 146 | WARNING | INI directive 'auto_detect_line_endings' is deprecated since PHP 8.1
--------------------------------------------------------------------------------------
^^^
Note: This are under php version check conditions, so all ok.

FILE: lib/ltiprovider/src/ToolProvider/ResourceLink.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 604 | ERROR | The default value of the $flags parameter for htmlentities() was changed from ENT_COMPAT to ENT_QUOTES |
     |       | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be explicitly
     |       | set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Already reviewed by MDL-74853 . Maybe some slight change of behaviour can happen here or there...

FILE: lib/ltiprovider/src/ToolProvider/DataConnector/DataConnector_mysql.php
-------------------------------------------------------------------------------------------------------------
FOUND 110 ERRORS AFFECTING 55 LINES
-------------------------------------------------------------------------------------------------------------
   64 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
   64 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
   66 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
   66 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  103 | ERROR | Function mysql_free_result() is deprecated since PHP 5.5 and removed since PHP 7.0
  103 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  171 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  171 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  174 | ERROR | Function mysql_insert_id() is deprecated since PHP 5.5 and removed since PHP 7.0
  174 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  197 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  197 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  205 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  205 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  214 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  214 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  222 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  222 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  231 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  231 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  239 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  239 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  248 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  248 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  255 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  255 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  263 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  263 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  270 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  270 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  277 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  277 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  300 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  300 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  302 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  302 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  336 | ERROR | Function mysql_free_result() is deprecated since PHP 5.5 and removed since PHP 7.0
  336 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  403 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  403 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  405 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  405 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  459 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  459 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  462 | ERROR | Function mysql_insert_id() is deprecated since PHP 5.5 and removed since PHP 7.0
  462 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  488 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  488 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  496 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  496 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  504 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  504 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  511 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  511 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  518 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  518 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  559 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  559 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  561 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  561 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  655 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  655 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  658 | ERROR | Function mysql_insert_id() is deprecated since PHP 5.5 and removed since PHP 7.0
  658 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  682 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  682 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  689 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  689 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  698 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  698 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  706 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  706 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  750 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  750 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  752 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  752 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  787 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  787 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  789 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  789 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  821 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  821 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  826 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  826 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  828 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  828 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  852 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  852 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  878 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  878 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  881 | ERROR | Function mysql_real_escape_string() is deprecated since PHP 5.5 and removed since PHP 7.0
  881 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  885 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  885 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  887 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  887 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  919 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  919 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  937 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  937 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  975 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
  975 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
  977 | ERROR | Function mysql_fetch_object() is deprecated since PHP 5.5 and removed since PHP 7.0
  977 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
 1020 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
 1020 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
 1023 | ERROR | Function mysql_insert_id() is deprecated since PHP 5.5 and removed since PHP 7.0
 1023 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
 1046 | ERROR | Function mysql_query() is deprecated since PHP 5.5 and removed since PHP 7.0
 1046 | ERROR | Extension 'mysql_' is deprecated since PHP 5.5 and removed since PHP 7.0; Use mysqli instead
-------------------------------------------------------------------------------------------------------------
^^^
Note: This code is not used by core at all. This was also in the PHP 8.0 report.

FILE: lib/editor/tinymce/plugins/spellchecker/classes/EnchantSpell.php
--------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 4 WARNINGS AFFECTING 4 LINES
--------------------------------------------------------------------------------------------------------------
 35 | WARNING | Function enchant_broker_free_dict() is deprecated since PHP 8.0; Use unset the object instead
 39 | WARNING | Function enchant_broker_free() is deprecated since PHP 8.0; Use unset the object instead
 60 | WARNING | Function enchant_broker_free_dict() is deprecated since PHP 8.0; Use unset the object instead
 65 | WARNING | Function enchant_broker_free() is deprecated since PHP 8.0; Use unset the object instead
--------------------------------------------------------------------------------------------------------------
^^^
Note: Nothing to change, it was verified by MDL-73496 (not used by our tinymce). This was also in the PHP 8.0 report.

FILE: lib/editor/tinymce/plugins/spellchecker/classes/GoogleSpell.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 3 ERRORS AFFECTING 3 LINES
------------------------------------------------------------------------------------------------------------------------------------
 132 | ERROR | preg_replace() - /e modifier is deprecated since PHP 5.5 and removed since PHP 7.0
 133 | ERROR | preg_replace() - /e modifier is deprecated since PHP 5.5 and removed since PHP 7.0
 135 | ERROR | The default value of the $flags parameter for get_html_translation_table() was changed from ENT_COMPAT to ENT_QUOTES
     |       | | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For cross-version compatibility, the $flags parameter should be
     |       | explicitly set.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Nothing to change, it was verified by MDL-52468 (not used by our tinymce). This was also in the PHP 8.0 report.

FILE: lib/editor/tinymce/plugins/spellchecker/rpc.php
-----------------------------------------------------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 2 LINES
-----------------------------------------------------------------------------------------------------------------------------------
 32 | ERROR | Global variable '$HTTP_RAW_POST_DATA' is deprecated since PHP 5.6 and removed since PHP 7.0; Use php://input instead
 33 | ERROR | Global variable '$HTTP_RAW_POST_DATA' is deprecated since PHP 5.6 and removed since PHP 7.0; Use php://input instead
-----------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Its existence is checked with isset() so it's safe. This was also in the PHP 8.0 report.

FILE: lib/weblib.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
------------------------------------------------------------------------------------------------------------------------------------
  437 | WARNING | Since PHP 7.0, functions inspecting arguments, like func_get_args(), no longer report the original value as
      |         | passed to a parameter, but will instead provide the current value. The parameter "$params" was used, and possibly
      |         | changed (by reference), on line 436.
 3290 | WARNING | Since PHP 7.0, functions inspecting arguments, like debug_backtrace(), no longer report the original value as
      |         | passed to a parameter, but will instead provide the current value. The parameter "$level" was used, and possibly
      |         | changed (by reference), on line 3280.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive, the parameter $params is not modified before the call to func_get_args(). This was also in the PHP 8.0 report.
Note: False positive, the parameter $level is not modified before the call to debug_backtrace. This was also in the PHP 8.0 report.

FILE: h5p/h5plib/v124/joubel/editor/h5peditor-ajax.class.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 108 | WARNING | Since PHP 7.0, functions inspecting arguments, like func_get_args(), no longer report the original value as passed
     |         | to a parameter, but will instead provide the current value. The parameter "$endpoint" was used, and possibly
     |         | changed (by reference), on line 101.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: False positive. The $endpoint is shifted away (and not modified), so use is correct. This was also in the PHP 8.0 report.

FILE: h5p/h5plib/v124/joubel/editor/h5peditor-file.class.php
---------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
---------------------------------------------------------------------------------------------
 18 | WARNING | The constant "FILTER_SANITIZE_STRING" is deprecated since PHP 8.1
---------------------------------------------------------------------------------------------
^^^
Note: To be fixed by MDL-76691 (waiting for integration as of 20230131).

FILE: mod/imscp/locallib.php
-------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
-------------------------------------------------------------------------------------
 289 | WARNING | Function libxml_disable_entity_loader() is deprecated since PHP 8.0
-------------------------------------------------------------------------------------
^^^
Note: It's used conditionally. MDL-70896 fixed it. This was also in the PHP 8.0 report.

FILE: mod/chat/gui_header_js/chatmsg.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 1 | WARNING | No PHP code was found in this file and short open tags are not allowed by this install of PHP. This file may be
   |         | using short open tags but PHP does not allow them.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Empty file. All ok, so far. This was also in the PHP 8.0 report.

FILE: mod/chat/empty.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 1 | WARNING | No PHP code was found in this file and short open tags are not allowed by this install of PHP. This file may be
   |         | using short open tags but PHP does not allow them.
------------------------------------------------------------------------------------------------------------------------------------
^^^
Note: Empty file. All ok, so far. This was also in the PHP 8.0 report.

FILE: mod/wiki/classes/external.php
--------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
--------------------------------------------------------------------------------------------------------------
 516 | WARNING | INI directive 'mbstring.func_overload' is deprecated since PHP 7.2 and removed since PHP 8.0
--------------------------------------------------------------------------------------------------------------
^^^
Created MDL-77102

FILE: mod/wiki/tests/externallib_test.php
--------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
--------------------------------------------------------------------------------------------------------------
 655 | WARNING | INI directive 'mbstring.func_overload' is deprecated since PHP 7.2 and removed since PHP 8.0
--------------------------------------------------------------------------------------------------------------
^^^
Created MDL-77102

FILE: mod/lti/OAuth.php
-------------------------------------------------------------------------
FOUND 0 ERRORS AND 2 WARNINGS AFFECTING 2 LINES
-------------------------------------------------------------------------
 268 | WARNING | Function openssl_free_key() is deprecated since PHP 8.0
 291 | WARNING | Function openssl_free_key() is deprecated since PHP 8.0
-------------------------------------------------------------------------
^^^
Note: Already fixed by MDL-73523 . They are conditional. This was also in the PHP 8.0 report.

FILE: mod/lti/locallib.php
--------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
--------------------------------------------------------------------------------------
 4671 | WARNING | Function libxml_disable_entity_loader() is deprecated since PHP 8.0
--------------------------------------------------------------------------------------
^^^
Note: It's used conditionally. MDL-70896 fixed it. This was also in the PHP 8.0 report.

FILE: mod/lesson/classes/local/numeric/helper.php
------------------------------------------------------------------------------------------------------------------------------------
FOUND 0 ERRORS AND 1 WARNING AFFECTING 1 LINE
------------------------------------------------------------------------------------------------------------------------------------
 26 | WARNING | 'numeric' is a soft reserved keyword as of PHP version 7.0 and should not be used to name a class, interface or
    |         | trait or as part of a namespace (namespace declaration)
------------------------------------------------------------------------------------------------------------------------------------
^^^
Created MDL-77101

FILE: mod/data/tests/preset_test.php
-----------------------------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 1 LINE
-----------------------------------------------------------------------------------------
 390 | ERROR | The function str_ends_with() is not present in PHP version 7.4 or earlier
 390 | ERROR | The function str_ends_with() is not present in PHP version 7.4 or earlier
-----------------------------------------------------------------------------------------
^^^
Created MDL-77100

Time: 5.74 secs; Memory: 42MB