Commit Graph

1461 Commits

Author SHA1 Message Date
David Carlier
487f24898b Merge branch 'PHP-8.2' into PHP-8.3 2024-03-05 18:39:46 +00:00
David Carlier
33967aef11 ext/gettext: dcgettext/dcngettext fix for stable branches.
close GH-13594
2024-03-05 18:39:14 +00:00
David Carlier
eef44d2291 Merge branch 'PHP-8.2' into PHP-8.3 2024-03-04 15:35:21 +00:00
David Carlier
9999a0cb75 ext/gettext: dcgettext/dcngettext sigabrt on macOs.
the man page states `the locale facet is determined by the category argument,  which  should  be
 one of the LC_xxx constants defined in the <locale.h> header, excluding LC_ALL`,
since the 0.22.5 release, sanity checks had been strenghtened leading to
an abort with the Zend/tests/arginfo_zpp_mismatch.phpt test setting the
category to 0 which is LC_ALL on macOs.

close GH-13555
2024-03-04 15:34:59 +00:00
Saki Takamachi
04e8e55f47
Added validation of \n in $additional_headers of mail()
When $additional_headers of mail() is an array, the same validation as
`\r\n` is now applied to `\n` alone too.
2024-03-04 21:30:07 +09:00
Jakub Zelenka
1e66e6ae73
Revert incomplete PG pipeline addition
Closes GH-12735
2023-11-20 16:22:29 +00:00
Jakub Zelenka
3b68df24bd
Add note to UPGRADING about proc_open changes for invalid command
Closes GH-12589
2023-11-12 18:17:10 +00:00
Dmitriy Degtyaryov
63898008c0 Fix GH-9344: pgsql pipeline mode proposal.
Adding pg_send_flush_request.
Fix freeze after next execute pg_send_* on PQgetResult in _php_pgsql_link_has_results.
Set nonblocking for pipelining mode.
No flush client buffer in pg_send_* for pipelining mode.

Close GH-12644
2023-11-10 16:06:04 +00:00
David Carlier
ee5fe483c2 [ci skip] fix typo in UPGRADING 2023-11-02 18:47:43 +00:00
David Carlier
d4183c2c91 [ci skip] Intl extension UPGRADING note 2023-11-01 19:15:12 +00:00
Niels Dossche
ce6e58cf63 [ci skip] Move things to the right section in UPGRADING 2023-09-22 23:55:23 +02:00
Niels Dossche
4ad5388b00 [ci skip] UPGRADING 2023-09-06 18:01:02 +02:00
Niels Dossche
0b9702c9ed Implement GH-11934: Allow to pass CData into struct and/or union fields
Co-authored-by: KapitanOczywisty <44417092+KapitanOczywisty@users.noreply.github.com>

Closes GH-11935.
2023-08-29 17:01:10 +02:00
Niels Dossche
1754794fc3 [ci skip] Fix typos in UPGRADING 2023-08-28 23:00:05 +02:00
Jakub Zelenka
766cac072f
Fix bug #76857: Can read "non-existant" files
This change makes checked and opened file consistent in a way that it is
using real path for stat operation in the same way like it is used for
open.

Closes GH-12067
2023-08-28 16:53:28 +01:00
Jakub Zelenka
ba9650d697
Fix bug #52335 (fseek() on memory stream behavior different then file)
This changes memory stream to allow seeking past end which makes it the
same as seeking on files. It means the position is allowed to be higher
than the string length. The size only increases if data is appended to
the past position. The space between the previous string and position
is filled with zero bytes.

Fixes GH-9441
Closes GH-12058
2023-08-28 13:32:34 +01:00
Jakub Zelenka
10e16347ef
Format UPGRADING 2023-08-28 11:40:03 +01:00
Jakub Zelenka
aff46d75e1
Fix GH-11982: str_getcsv returns null byte for unterminated quoted string
Closes GH-12047
2023-08-28 11:28:34 +01:00
Marcus Bointon
d7eb4cfdb2
[ci skip] Add note about ReflectionProperty::setValue() signature deprecation to upgrade guide (#12036) 2023-08-24 23:18:19 +01:00
HypeMC
f25474f7f2
Add before_needle argument to strrchr()
Closes GH-11430
2023-08-24 14:26:46 +01:00
David CARLIER
9eb032bdcb
[ci skip] Adding missing SO_ATTACH_REUSEPORT_CBPF tangential constants (#12042) 2023-08-24 13:52:56 +01:00
Máté Kocsis
462792ee51 Expose PDO_ODBC_TYPE to userland 2023-08-23 21:20:41 +02:00
Ayesh Karunaratne
1887f02b0b
Add class constant types to Phar extension (#11826) 2023-08-21 07:14:45 +02:00
Ayesh Karunaratne
543eedf9e1
[skip-ci] minor typo fixes in UPGRADING and CONTRIBUTING.md (#11976) 2023-08-16 07:51:56 +02:00
Niels Dossche
d46dc5694c Fix various namespace prefix conflict resolution bugs and namespace shift bugs
There are two linked issues:

- Conflicts couldn't be resolved by changing the prefix name.
- Lacking a prefix would shift the namespace as the default namespace,
  causing elements to suddenly become part of the namespace instead of
  the attributes.

The output could still be improved by removing redundant namespace
declarations, but that's another issue. At least the output is
correct now.

Closes GH-11777.
2023-08-15 20:42:42 +02:00
Kamil Tekiela
0b887042ae
mysqli_field_seek return type changed to true (#11948) 2023-08-14 19:04:34 +01:00
Kamil Tekiela
f907a009f9
Align highlight_string|file with HTML standard and modern browsers
Closes GH-11913
2023-08-12 15:08:28 +01:00
Niels Dossche
23ba4cde53 Align DOMChildNode parent checks with spec
Closes GH-11905.
2023-08-09 21:24:33 +02:00
Máté Kocsis
038b2ae254
Make the $enable parameter of odbc_autocommit() nullable (#11909)
Co-authored-by: George Peter Banyard <girgias@php.net>
2023-08-08 15:31:58 +02:00
Niels Dossche
e701b2fee7 Make DOMChildNode::remove() run in O(1) performance
This method had some useless logic in it. It checked whether the child
node is a child of its parent, which is always true of course.
But I know where this check comes from, if you follow the spec closely
you'll find that the spec used to have explicit child and parent
arguments for the removal algorithm [1].
That's because that algorithm is written in a generic way, where the
parent and child arguments might not come from the same subtree.
However, in this particular case it *is* always the case that the child
is a child of its parent. The checks weren't needed back then for
DOMChildNode::remove(), and are still not needed today.

[1] e.g. https://web.archive.org/web/20180601092634/https://dom.spec.whatwg.org/#concept-node-remove
2023-08-07 17:32:46 +02:00
George Peter Banyard
aecedd25dd
[skip ci] Reorder extension sections in UPGRADING 2023-08-04 18:24:53 +01:00
Arne_
8ef0e4cfa0
Allow easter_date to process years after 2037 on 64bit systems (#11862)
Added a check to easter_date to allow it to run with years past
2037 when on a 64bit platform.
2023-08-04 16:47:04 +01:00
Mikhail Galanin
958a25e22e
Add "revalidate" time to opcache scripts list
Closes GH-11816
2023-08-03 10:01:39 +02:00
Ilija Tovilo
b2dbf0a2c6
Remove opcache.consistency_checks
This feature has been broken at least since the tracing JIT and inheritance
cache have been introduced. The attempted fix (GH-10798) was too complex. We
have thus decided to remove this feature for now.

Closes GH-11832
2023-08-02 19:22:30 +02:00
Juliette
04c820fd16
[ci skip] PHP 8.3 Upgrading: fix assert_options() typo + minor grammar tweaks (#11845)
Co-authored-by: jrfnl <jrfnl@users.noreply.github.com>
2023-08-01 15:54:09 +01:00
Juliette
e0bee2cc8a
[ci skip] PHP 8.3 Upgrading: move two entries to the right section (#11846)
These were both listed under "Backward Incompatible Changes", while, as far as I can see, these are "New Features".

Co-authored-by: jrfnl <jrfnl@users.noreply.github.com>
2023-08-01 15:22:29 +01:00
jrfnl
78bfe682a5 [ci skip] PHP 8.3 Upgrading:
add missing PGSQL functions/constants

Follow up on 10868, which introduced these functions and constants.

add missing PGSQL visibility constants

Follow up on 10935, which introduced these constants.

Close GH-11838
2023-07-31 17:08:25 +01:00
jrfnl
a8fa0b54d8 [ci skip] PHP 8.3 Upgrading: fix pg_set_error_context_visibility typo
Ref: 21aaf3321f

Close GH-11837
2023-07-31 17:07:20 +01:00
jrfnl
c7cbe3764a [ci skip] PHP 8.3 Upgrading: add missing POSIX constants
Follow up on 10238 which added these constants.

Close GH-11835
2023-07-31 17:07:04 +01:00
Niels Dossche
ae66a0d142 Corrections to return type of loading DOM documents 2023-07-29 14:58:01 +02:00
Remi Collet
0893b4bed5
add ZipArchive::LENGTH_TO_END and ZipArchive::LENGTH_UNCHECKED constants 2023-07-28 15:56:31 +02:00
George Peter Banyard
722b5cc986
[skip ci] Update UPGRADING with all relevant information 2023-07-18 13:07:01 +01:00
Máté Kocsis
0f64b01aee
Add UPGRADING note about SNMP class constant type declarations
[skip-ci]
2023-07-18 13:55:01 +02:00
Niels Dossche
de60872cfd
Add new curl constants from curl until (including) 7.87 (#10459)
Fixes GH-10454
2023-07-17 20:42:39 +02:00
Niels Dossche
db5e8ae6cf Implement DOMElement::toggleAttribute()
ref: https://dom.spec.whatwg.org/#dom-element-toggleattribute

Closes GH-11696.
2023-07-17 20:06:49 +02:00
Niels Dossche
a73f38f407
Implement DOMElement::insertAdjacent{Element,Text} (#11700)
* Implement DOMElement::insertAdjacent{Element,Text}

ref: https://dom.spec.whatwg.org/#dom-element-insertadjacentelement
ref: https://dom.spec.whatwg.org/#dom-element-insertadjacenttext

Closes GH-11700.
2023-07-17 17:42:47 +02:00
George Peter Banyard
d8696f9216
[RFC] Path to Saner Increment/Decrement operators (#10358)
* Add behavioural tests for incdec operators

* Add support to ++/-- for objects castable to _IS_NUMBER

* Add str_increment() function

* Add str_decrement() function

RFC: https://wiki.php.net/rfc/saner-inc-dec-operators

Co-authored-by: Ilija Tovilo <ilija.tovilo@me.com>
Co-authored-by: Arnaud Le Blanc <arnaud.lb@gmail.com>
2023-07-17 15:51:24 +01:00
Niels Dossche
2f318cfb06 Implement DOMNode::isEqualNode()
Since we still support obsoleted nodes in our implementation, this uses
the old spec to match the old nodes; and this uses the new spec for
nodes still defined in the living spec.
When unclear, the behaviour was cross-verified with Firefox.

References:
https://dom.spec.whatwg.org/#dom-node-isequalnode (for everything still in the living spec)
https://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/DOM3-Core.html#core-Node3-isEqualNode (for old nodes removed from the living spec)

Closes GH-11690.
2023-07-17 15:29:36 +02:00
Niels Dossche
d04f48b6ac Implement DOMNode::parentElement and DOMNameSpaceNode::parentElement
ref: https://dom.spec.whatwg.org/#parent-element

Closes GH-11679.
2023-07-17 13:15:31 +02:00
Niels Dossche
d38cc9b9b6 Implement DOMNode::isConnected and DOMNameSpaceNode::isConnected
ref: https://dom.spec.whatwg.org/#dom-node-isconnected

Closes GH-11677.
2023-07-17 13:14:13 +02:00