History log of /php-src/ext/dom/php_dom_arginfo.h (Results 1 – 25 of 105)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 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 ...


# ac039cf7 10-Apr-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Implement HTMLCollection::namedItem()


# ef930867 25-Mar-2024 Alexander M. Turek

DOM stubs: Reference interfaces from the global namespace correctly (#13801)


# cc0260e0 13-Mar-2024 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Change return type of DOM\HTMLDocument::saveHTML() (#13701)

Strict error checking is always true for classes in "new DOM".
This means that we always throw an error when calling
`php_

Change return type of DOM\HTMLDocument::saveHTML() (#13701)

Strict error checking is always true for classes in "new DOM".
This means that we always throw an error when calling
`php_dom_throw_error`, and therefore the false return value is not
actually possible.
Also change the stub to reflect this.

show more ...


12345