Skip to content

Commit 7687f34

Browse files
committed
[skip ci] Fix UPGRADING entries
1 parent ddc4915 commit 7687f34

File tree

1 file changed

+31
-40
lines changed

1 file changed

+31
-40
lines changed

UPGRADING

Lines changed: 31 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ PHP 8.4 UPGRADE NOTES
4848
removed.
4949
RFC: https://wiki.php.net/rfc/deprecations_php_8_4#remove_e_strict_error_level_and_deprecate_e_strict_constant
5050

51+
- Date:
52+
. The class constants are typed now.
53+
5154
- DBA:
5255
. dba_open() and dba_popen() will now return a Dba\Connection
5356
object rather than a resource. Return value checks using is_resource()
@@ -69,6 +72,8 @@ PHP 8.4 UPGRADE NOTES
6972
. DOMDocument::$actualEncoding, DOMDocument::config, DOMEntity::$actualEncoding,
7073
DOMEntity::$encoding, DOMEntity::$version have been deprecated.
7174
RFC: https://wiki.php.net/rfc/deprecations_php_8_4#formally_deprecate_soft-deprecated_domdocument_and_domentity_properties
75+
. Removed DOMImplementation::getFeature().
76+
RFC: https://wiki.php.net/rfc/deprecations_php_8_4#remove_domimplementationgetfeature_feature_version
7277

7378
- GMP:
7479
. The GMP class is now final and cannot be extended anymore.
@@ -83,6 +88,7 @@ PHP 8.4 UPGRADE NOTES
8388
- TypeError for invalid offset types
8489
- ValueError for an empty string
8590
- ValueError if the integer index does not fit in a signed 32 bit integer
91+
. The class constants are typed now.
8692

8793
- MBString:
8894
. mb_encode_numericentity() and mb_decode_numericentity() now check that
@@ -98,6 +104,19 @@ PHP 8.4 UPGRADE NOTES
98104
is converted to Unicode. This is significant because around 40 SJIS-Mac characters
99105
convert to a sequence of multiple Unicode codepoints.
100106

107+
- Mysqli:
108+
. The unused and undocumented constant MYSQLI_SET_CHARSET_DIR
109+
has been removed.
110+
. The MYSQLI_STMT_ATTR_PREFETCH_ROWS constant has been removed.
111+
The feature is unavailable with mysqlnd.
112+
. The MYSQLI_CURSOR_TYPE_FOR_UPDATE and MYSQLI_CURSOR_TYPE_SCROLLABLE
113+
constants have been removed. This functionality was never implemented,
114+
neither with mysqlnd nor with libmysql.
115+
. The unused MYSQLI_TYPE_INTERVAL constant, which is currently a stub
116+
and an alias for MYSQLI_TYPE_ENUM, has been removed. There are no
117+
plans to add such data type to MySQL yet, so it's unclear what its value
118+
would finally be.
119+
101120
- MySQLnd:
102121
. The error code reported for MySQL server wait timeouts has been changed from 2006
103122
to 4031 for MySQL server versions 8.0.24 and above.
@@ -149,6 +168,9 @@ PHP 8.4 UPGRADE NOTES
149168
has changed. Consult https://github.com/PCRE2Project/pcre2/blob/master/NEWS
150169
for a full changelog.
151170

171+
- PDO:
172+
. The class constants are typed now.
173+
152174
- PDO_DBLIB:
153175
. setAttribute, DBLIB_ATTR_STRINGIFY_UNIQUEIDENTIFIER and DBLIB_ATTR_DATETIME_CONVERT
154176
have been changed to set value as a bool.
@@ -180,6 +202,7 @@ PHP 8.4 UPGRADE NOTES
180202
ReflectionClass::SKIP_*.
181203
If you have a method or constant with the same name, you might encounter
182204
errors if the declaration is incompatible.
205+
. The class constants are typed now.
183206

184207
- SimpleXML:
185208
. Get methods called, or casting to a string on a SimpleXMLElement will no
@@ -211,6 +234,10 @@ PHP 8.4 UPGRADE NOTES
211234
OutOfBoundsException instead of RuntimeException. As OutOfBoundsException
212235
is a child class of RuntimeException, code that uses RuntimeException
213236
continues to function.
237+
. The class constants are typed now.
238+
239+
- Sqlite:
240+
. The class constants are typed now.
214241

215242
- Standard:
216243
. round() now validates the value of the $mode parameter and throws a ValueError
@@ -246,6 +273,7 @@ PHP 8.4 UPGRADE NOTES
246273
. Passing an invalid character encoding to XMLReader::open() or
247274
XMLReader::XML() now throws a ValueError. Passing a string containing NULL
248275
bytes previously emitted a warning and now throws a ValueError as well.
276+
. The class constants are typed now.
249277

250278
- XMLWriter:
251279
. Passing a string containing NULL bytes previously emitted a warning and
@@ -670,6 +698,9 @@ PHP 8.4 UPGRADE NOTES
670698
RFC: https://wiki.php.net/rfc/new_rounding_modes_to_round_function
671699
. ResourceBundle::get() now has a tentative return type of:
672700
ResourceBundle|array|string|int|null
701+
. The idn_to_ascii() and idn_to_utf8() now always throw ValueErrors if the
702+
$domain name is empty or too long, and if $variant is not
703+
INTL_IDNA_VARIANT_UTS46.
673704

674705
- LibXML:
675706
. libxml_set_streams_context() now immediately throws a TypeError when a
@@ -971,69 +1002,29 @@ PHP 8.4 UPGRADE NOTES
9711002
effect, and is silently ignored. This underlying feature was
9721003
deprecated in libcurl 7.11.1 and removed in 7.62.0.
9731004

974-
- Date:
975-
. The class constants are typed now.
976-
977-
- DOM:
978-
. Removed DOMImplementation::getFeature().
979-
RFC: https://wiki.php.net/rfc/deprecations_php_8_4#remove_domimplementationgetfeature_feature_version
980-
9811005
- Intl:
982-
. The class constants are typed now.
9831006
. The behaviour of Intl class has been normalized to always throw Error
9841007
exceptions when attempting to use a non-initialized object,
9851008
or when cloning fails.
986-
. The idn_to_ascii() and idn_to_utf8() now always throw ValueErrors if the
987-
$domain name is empty or too long, and if $variant is not
988-
INTL_IDNA_VARIANT_UTS46.
9891009

9901010
- LibXML:
9911011
. The libxml extension now requires at least libxml2 2.9.4.
9921012

9931013
- MBString:
9941014
. Unicode data tables have been updated to Unicode 16.0.
9951015

996-
- Mysqli:
997-
. The unused and undocumented constant MYSQLI_SET_CHARSET_DIR
998-
has been removed.
999-
. The MYSQLI_STMT_ATTR_PREFETCH_ROWS constant has been removed.
1000-
The feature is unavailable with mysqlnd.
1001-
. The MYSQLI_CURSOR_TYPE_FOR_UPDATE and MYSQLI_CURSOR_TYPE_SCROLLABLE
1002-
constants have been removed. This functionality was never implemented,
1003-
neither with mysqlnd nor with libmysql.
1004-
. The unused MYSQLI_TYPE_INTERVAL constant, which is currently a stub
1005-
and an alias for MYSQLI_TYPE_ENUM, has been removed. There are no
1006-
plans to add such data type to MySQL yet, so it's unclear what its value
1007-
would finally be.
1008-
. A new constant has been added: MYSQLI_TYPE_VECTOR.
1009-
10101016
- Mysqlnd:
10111017
. Support for the new VECTOR data type from MySQL 9.
10121018

10131019
- OpenSSL:
10141020
. The OpenSSL extension now requires at least OpenSSL 1.1.1.
10151021

1016-
- PDO:
1017-
. The class constants are typed now.
1018-
10191022
- PDO_PGSQL:
10201023
. The pdo_pgsql extension now requires at least libpq 10.0.
10211024

10221025
- PgSQL:
10231026
. The pgsql extension now requires at least libpq 10.0.
10241027

1025-
- Reflection:
1026-
. The class constants are typed now.
1027-
1028-
- Spl:
1029-
. The class constants are typed now.
1030-
1031-
- Sqlite:
1032-
. The class constants are typed now.
1033-
1034-
- XMLReader:
1035-
. The class constants are typed now.
1036-
10371028
- XSL:
10381029
. The typed properties XSLTProcessor::$cloneDocument and
10391030
XSLTProcessor::$doXInclude are now declared.

0 commit comments

Comments
 (0)