#
ac039cf7 |
| 10-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement HTMLCollection::namedItem()
|
#
5c69b2e8 |
| 10-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Factor out reading an attribute value
|
#
a0da32a4 |
| 07-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Cleanup and optimize attribute value reading (#13897) When the attribute has a single text child, we can avoid an allocating call to libxml2 and read the contents directly. On m
Cleanup and optimize attribute value reading (#13897) When the attribute has a single text child, we can avoid an allocating call to libxml2 and read the contents directly. On my i7-4790, I tested the optimization with both the $value and $nodeValue property. ``` Summary ./sapi/cli/php bench_value.php ran 1.82 ± 0.09 times faster than ./sapi/cli/php_old bench_value.php Summary ./sapi/cli/php bench_nodeValue.php ran 1.78 ± 0.10 times faster than ./sapi/cli/php_old bench_nodeValue.php ``` Test code: ``` $dom = new DOMDocument; $dom->loadXML('<root attrib="this is a relatively short text"/>'); $attrib = $dom->documentElement->attributes[0]; for ($i=0; $i<1000*1000; $i++) { $attrib->value; // or nodeValue } ```
show more ...
|
#
539d8d92 |
| 09-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Use common helper macro for getting the node in property handlers
|
#
d57e7a92 |
| 09-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Use BAD_CAST consistently
|
#
6c55513e |
| 09-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Use true instead of 1 with php_dom_throw_error
|
#
14b6c981 |
| 09-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
[RFC] Add a way to opt-in ext/dom spec compliance (#13031) RFC: https://wiki.php.net/rfc/opt_in_dom_spec_compliance
|
#
48443183 |
| 02-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Use zend_result as return for properties in ext/dom (#12113)
|
#
08c4db7f |
| 06-Aug-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix manually calling __construct() on DOM classes Closes GH-11894.
|
#
c0ce3e7e |
| 18-Jul-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Get rid of some unnecessary string conversion (#11733) For typed properties that are of type "string", we don't need to do any conversion as the zval will already be a string. Removing t
Get rid of some unnecessary string conversion (#11733) For typed properties that are of type "string", we don't need to do any conversion as the zval will already be a string. Removing this simplifies code and avoids unnecessary refcounting.
show more ...
|
#
941a7e59 |
| 26-Jun-2023 |
nielsdos <7771979+nielsdos@users.noreply.github.com> |
Avoid allocation when getting the node content, if possible Closes GH-11543.
|
#
ad5ee8a2 |
| 19-Jun-2023 |
nielsdos <7771979+nielsdos@users.noreply.github.com> |
Revert changes to DOMAttr::$value and DOMAttr::$nodeValue expansion Closes GH-11469.
|
#
74910b14 |
| 22-Dec-2022 |
Tim Starling |
Factor out dom_remove_all_children() A few callers remove all children of a node. The way it was done in node.c was unsafe, because it left nodep->last dangling. It just happens to n
Factor out dom_remove_all_children() A few callers remove all children of a node. The way it was done in node.c was unsafe, because it left nodep->last dangling. It just happens to not crash if xmlNodeSetContent() is called immediately afterwards.
show more ...
|
#
50fdad83 |
| 19-Dec-2022 |
Tim Starling |
Set DOMAttr::$value without expanding entities The manual refers to the DOM Level 3 Core spec which says: "On setting, this creates a Text node with the unparsed contents of the
Set DOMAttr::$value without expanding entities The manual refers to the DOM Level 3 Core spec which says: "On setting, this creates a Text node with the unparsed contents of the string. I.e. any characters that an XML processor would recognize as markup are instead treated as literal text." PHP is expanding entities when DOMAttr::value is set, which is non-compliant and is a difference in behaviour compared to browser DOM implementations. So, when value is set, remove all children of the attribute node. Then create a single text node and insert that as the only child of the attribute. Add tests.
show more ...
|
Revision tags: php-8.2.0RC1, php-8.1.10, php-8.0.23, php-8.0.23RC1, php-8.1.10RC1, php-8.2.0beta3, php-8.2.0beta2, php-8.1.9, php-8.0.22, php-8.1.9RC1, php-8.2.0beta1, php-8.0.22RC1, php-8.0.21, php-8.1.8, php-8.2.0alpha3, php-8.1.8RC1, php-8.2.0alpha2, php-8.0.21RC1, php-8.0.20, php-8.1.7, php-8.2.0alpha1, php-7.4.30, php-8.1.7RC1, php-8.0.20RC1, php-8.1.6, php-8.0.19, php-8.1.6RC1, php-8.0.19RC1, php-8.0.18, php-8.1.5, php-7.4.29, php-8.1.5RC1, php-8.0.18RC1, php-8.1.4, php-8.0.17, php-8.1.4RC1, php-8.0.17RC1, php-8.1.3, php-8.0.16, php-7.4.28, php-8.1.3RC1, php-8.0.16RC1, php-8.1.2, php-8.0.15, php-8.1.2RC1, php-8.0.15RC1, php-8.0.14, php-8.1.1, php-7.4.27, php-8.1.1RC1, php-8.0.14RC1, php-7.4.27RC1, php-8.1.0, php-8.0.13, php-7.4.26, php-7.3.33, php-8.1.0RC6, php-7.4.26RC1, php-8.0.13RC1, php-8.1.0RC5, php-7.3.32, php-7.4.25, php-8.0.12, php-8.1.0RC4, php-8.0.12RC1, php-7.4.25RC1, php-8.1.0RC3, php-8.0.11, php-7.4.24, php-7.3.31, php-8.1.0RC2, php-7.4.24RC1, php-8.0.11RC1, php-8.1.0RC1, php-7.4.23, php-8.0.10, php-7.3.30, php-8.1.0beta3, php-8.0.10RC1, php-7.4.23RC1, php-8.1.0beta2, php-8.0.9, php-7.4.22, php-8.1.0beta1, php-7.4.22RC1, php-8.0.9RC1, php-8.1.0alpha3, php-7.4.21, php-7.3.29, php-8.0.8, php-8.1.0alpha2, php-7.4.21RC1, php-8.0.8RC1, php-8.1.0alpha1, php-8.0.7, php-7.4.20, php-8.0.7RC1, php-7.4.20RC1 |
|
#
01b3fc03 |
| 06-May-2021 |
KsaR |
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as
Update http->https in license (#6945) 1. Update: http://www.php.net/license/3_01.txt to https, as there is anyway server header "Location:" to https. 2. Update few license 3.0 to 3.01 as 3.0 states "php 5.1.1, 4.1.1, and earlier". 3. In some license comments is "at through the world-wide-web" while most is without "at", so deleted. 4. fixed indentation in some files before |
show more ...
|
Revision tags: php-8.0.6, php-7.4.19, php-7.4.18, php-7.3.28, php-8.0.5, php-8.0.5RC1, php-7.4.18RC1 |
|
#
e0aab741 |
| 16-Mar-2021 |
Máté Kocsis |
Promote DOM invalid state errors during property access Closes GH-6780 |
Revision tags: php-8.0.4RC1, php-7.4.17RC1, php-8.0.3, php-7.4.16, php-8.0.3RC1, php-7.4.16RC1, php-8.0.2, php-7.4.15, php-7.3.27, php-8.0.2RC1, php-7.4.15RC2, php-7.4.15RC1, php-8.0.1, php-7.4.14, php-7.3.26, php-7.4.14RC1, php-8.0.1RC1, php-7.3.26RC1, php-8.0.0, php-7.3.25, php-7.4.13, php-8.0.0RC5, php-7.4.13RC1, php-8.0.0RC4, php-7.3.25RC1, php-7.4.12, php-8.0.0RC3, php-7.3.24, php-8.0.0RC2, php-7.4.12RC1, php-7.3.24RC1, php-7.2.34, php-8.0.0rc1, php-7.4.11, php-7.3.23, php-8.0.0beta4, php-7.4.11RC1, php-7.3.23RC1, php-8.0.0beta3, php-7.4.10, php-7.3.22, php-8.0.0beta2, php-7.3.22RC1, php-7.4.10RC1, php-8.0.0beta1, php-7.4.9, php-7.2.33, php-7.3.21, php-8.0.0alpha3, php-7.4.9RC1, php-7.3.21RC1, php-7.4.8, php-7.2.32, php-8.0.0alpha2, php-7.3.20, php-8.0.0alpha1, php-7.4.8RC1, php-7.3.20RC1, php-7.4.7, php-7.3.19, php-7.4.7RC1, php-7.3.19RC1, php-7.4.6, php-7.2.31, php-7.4.6RC1, php-7.3.18RC1 |
|
#
8fef83dd |
| 19-Apr-2020 |
George Peter Banyard |
Promote warnings to error in DOM extension Closes GH-5418 |
#
2b5de6f8 |
| 01-Jul-2020 |
Max Semenik |
Remove proto comments from C files Closes GH-5758 |
#
62b1d2cb |
| 12-May-2020 |
George Peter Banyard |
Fix [-Wundef] warning in DOM extension |
Revision tags: php-7.2.30, php-7.4.5, php-7.3.17 |
|
#
dfd0acf0 |
| 11-Apr-2020 |
Máté Kocsis |
Generate method entries for ext/dom Closes GH-5374 |
Revision tags: php-7.4.5RC1, php-7.3.17RC1 |
|
#
305b17e8 |
| 29-Mar-2020 |
Máté Kocsis |
Do not include the same stub multiple times Closes GH-5322 |
Revision tags: php-7.3.18, php-7.4.4, php-7.2.29, php-7.3.16, php-7.4.4RC1, php-7.3.16RC1, php-7.4.3, php-7.2.28, php-7.3.15RC1, php-7.4.3RC1, php-7.3.15, php-7.2.27, php-7.4.2, php-7.3.14, php-7.3.14RC1, php-7.4.2RC1 |
|
#
2f7309b1 |
| 30-Dec-2019 |
Máté Kocsis |
Use RETURN_THROWS() during ZPP in the date, dba and dom extensions |
Revision tags: php-7.4.1, php-7.2.26, php-7.3.13, php-7.4.1RC1, php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12, php-7.4.0RC6 |
|
#
f905a819 |
| 09-Nov-2019 |
Benjamin Eberlei |
ext/dom: Replace usages of PHP_FUNCTION and aliases with PHP_METHOD. |
#
4253ca48 |
| 08-Nov-2019 |
Benjamin Eberlei |
Convert ext/dom to use arginfo stub. |
Revision tags: php-7.3.12RC1, php-7.2.25RC1 |
|
#
4008704f |
| 01-Nov-2019 |
Christoph M. Becker |
zend_parse_parameters_throw() is obsolete Since `zend_parse_parameters()` throws now, there is no reason to explicitly call `zend_parse_parameters_throw()` anymore, and since both ha
zend_parse_parameters_throw() is obsolete Since `zend_parse_parameters()` throws now, there is no reason to explicitly call `zend_parse_parameters_throw()` anymore, and since both have actually the same implementation, we redefine the latter as macro.
show more ...
|