#
a3b27c08 |
| 09-Nov-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Add Dom\Element::insertAdjacentHTML() (#16614)
|
#
41af9335 |
| 17-Oct-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-16473: dom_import_simplexml stub is wrong It's been wrong since PHP 8.0 at least, and the signature was inherited in 8.4-dev to the new DOM methods. Closes GH-16489.
|
#
402b1c29 |
| 13-Sep-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Add Dom\Element::$outerHTML getter Reference: https://html.spec.whatwg.org/multipage/dynamic-markup-insertion.html#the-outerhtml-property
|
#
7a8b1f68 |
| 30-Sep-2024 |
DanielEScherzer |
Generated arginfo header files: use known strings for prop names when… (#15751) Instead of allocating, using, and then releasing a zend_string for every property name unconditionally, on
Generated arginfo header files: use known strings for prop names when… (#15751) Instead of allocating, using, and then releasing a zend_string for every property name unconditionally, only do so when the minimum supported version of PHP does not have that string in its known strings (ZEND_KNOWN_STRINGS). If the string is already known, just use the known version directly. This is already done for some non-generated class registrations, e.g. in `zend_enum_register_props()`.
show more ...
|
#
5dd05756 |
| 04-Sep-2024 |
DanielEScherzer |
Generated arginfo header files: combine preprocessor conditional blocks (#15736) When functions' or class methods' availability is based on some preprocessor condition, the generated arg
Generated arginfo header files: combine preprocessor conditional blocks (#15736) When functions' or class methods' availability is based on some preprocessor condition, the generated arginfo header files wrap the declarations in the preprocessor `#if` conditional blocks, one per declaration, even if they are in the same conditional block based on comments in the stub file. Instead of having multiple conditional blocks one after the other with the same condition, combine them into a single conditional block.
show more ...
|
#
53cb8967 |
| 03-Sep-2024 |
DanielEScherzer |
Generated arginfo header files: remove empty zend_function_entry arrays (#15705) When a class (or enum) has no methods, rather than using an array that only contains `ZEND_FE_END`, use `
Generated arginfo header files: remove empty zend_function_entry arrays (#15705) When a class (or enum) has no methods, rather than using an array that only contains `ZEND_FE_END`, use `NULL` for the functions. The implementation of class registration for internal classes, `do_register_internal_class()` in zend_API.c, already skips classes where the functions are `NULL`. By removing these unneeded arrays, we can reduce the size of the header files, while also removing an unneeded call to zend_register_functions() for each internal class with no extra methods.
show more ...
|
#
88393cfa |
| 26-Aug-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-13988: Storing DOMElement consume 4 times more memory in PHP 8.1 than in PHP 8.0 We avoid creating backing storage by using the feature introduced in f78d5cfcd2fe06ddd6da33ff880c6
Fix GH-13988: Storing DOMElement consume 4 times more memory in PHP 8.1 than in PHP 8.0 We avoid creating backing storage by using the feature introduced in f78d5cfcd2fe06ddd6da33ff880c6823072adc1b. Closes GH-15593.
show more ...
|
#
8d12f666 |
| 24-Aug-2024 |
Máté Kocsis |
Fix registration of internal readonly child classes (#15459) Currently, internal classes are registered with the following code: INIT_CLASS_ENTRY(ce, "InternalClass", class_Internal
Fix registration of internal readonly child classes (#15459) Currently, internal classes are registered with the following code: INIT_CLASS_ENTRY(ce, "InternalClass", class_InternalClass_methods); class_entry = zend_register_internal_class_ex(&ce, NULL); class_entry->ce_flags |= ...; This has worked well so far, except if InternalClass is readonly. It is because some inheritance checks are run by zend_register_internal_class_ex before ZEND_ACC_READONLY_CLASS is added to ce_flags. The issue is fixed by adding a zend_register_internal_class_with_flags() zend API function that stubs can use from now on. This function makes sure to add the flags before running any checks. Since the new API is not available in lower PHP versions, gen_stub.php has to keep support for the existing API for PHP 8.3 and below.
show more ...
|
#
d9eb3783 |
| 04-Aug-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Remove DOMImplementation::getFeature() (#15233) RFC: https://wiki.php.net/rfc/deprecations_php_8_4#remove_domimplementationgetfeature_feature_version
|
#
0aec0faa |
| 04-Aug-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Deprecate DOM_PHP_ERR (#15234) * Deprecate DOM_PHP_ERR RFC: https://wiki.php.net/rfc/deprecations_php_8_4#deprecate_dom_php_err_constant * Apply suggestions from code revie
Deprecate DOM_PHP_ERR (#15234) * Deprecate DOM_PHP_ERR RFC: https://wiki.php.net/rfc/deprecations_php_8_4#deprecate_dom_php_err_constant * Apply suggestions from code review Co-authored-by: Tim Düsterhus <timwolla@googlemail.com> --------- Co-authored-by: Tim Düsterhus <timwolla@googlemail.com>
show more ...
|
#
6980eba8 |
| 10-Jul-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Support templated content The template element in HTML 5 is special in the sense that it does not add its contents into the DOM tree, but instead keeps them in a separate shadow DOM
Support templated content The template element in HTML 5 is special in the sense that it does not add its contents into the DOM tree, but instead keeps them in a separate shadow DOM document fragment. Interacting with the DOM tree cannot touch the elements in the document fragment. Closes GH-14906.
show more ...
|
#
cf914f41 |
| 04-Jul-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement PHP-specific extensions to Dom (#14754) See RFC: https://wiki.php.net/rfc/dom_additions_84
|
#
fc09f4b2 |
| 02-Jul-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement Dom\TokenList (#13664) Part of RFC: https://wiki.php.net/rfc/dom_additions_84 Closes GH-11688.
|
#
768900b1 |
| 12-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement Dom $innerHTML property
|
#
88da9149 |
| 27-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement CSS selectors
|
#
c44834d8 |
| 29-Jun-2024 |
Peter Kokot |
Trim trailing whitespace (#14721)
|
#
48c9f1e2 |
| 27-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement Dom\HTMLElement class
|
#
04af9603 |
| 07-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement Dom\Document::$title getter
|
#
287cf917 |
| 23-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement Dom\Document::$head
|
#
a1485df5 |
| 23-Mar-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement Dom\Document::$body getter
|
#
e4250cec |
| 23-Jun-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Introduce Dom\AdjacentPosition and use it in the insert adjacent methods See https://wiki.php.net/rfc/dom_additions_84#allowing_php-specific_developer_experience_improvements
|
#
a068a9a5 |
| 23-Jun-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Make XMLDocument::xinclude() return values and error conditions sane See https://wiki.php.net/rfc/dom_additions_84#api_amendments
|
#
20fafa75 |
| 18-May-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Remove XML_GLOBAL_NAMESPACE (#14265) This constant is only available if it is defined by libxml2, but it is never defined because the minimum version of libxml2 that we support had r
Remove XML_GLOBAL_NAMESPACE (#14265) This constant is only available if it is defined by libxml2, but it is never defined because the minimum version of libxml2 that we support had removed XML_GLOBAL_NAMESPACE already.
show more ...
|
#
6e7adb3c |
| 09-May-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Update ext/dom names after policy change (#14171)
|
#
47ec3204 |
| 17-Apr-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Make documentURI and URL not readonly (#13982) These aren't actually readonly right now because `@readonly` means nothing, and the setters are configured in php_dom.c. So no functional
Make documentURI and URL not readonly (#13982) These aren't actually readonly right now because `@readonly` means nothing, and the setters are configured in php_dom.c. So no functional changes here. DOM spec marks these as readonly, but the problem is that this reduces usefulness in XML contexts (like WSDL scheme handling). In context of a browser, for which DOM was designed, this actually makes sense to have as readonly because it is tied to the origin of the page etc. But PHP is not a browser. This also wasn't readonly in "old DOM".
show more ...
|