Skip to content

Declare modx property on modPackageBuilder for PHP 8.2 compatibility - #18

Open
Ibochkarev wants to merge 1 commit into
3.xfrom
fix/modPackageBuilder-dynamic-modx
Open

Declare modx property on modPackageBuilder for PHP 8.2 compatibility#18
Ibochkarev wants to merge 1 commit into
3.xfrom
fix/modPackageBuilder-dynamic-modx

Conversation

@Ibochkarev

Copy link
Copy Markdown
Member

Что сделано

modPackageBuilder присваивает $this->modx в конструкторе, но никогда не объявлял свойство. PHP 8.2+ выдаёт:

PHP deprecated: Creation of dynamic property MODX\Revolution\Transport\modPackageBuilder::$modx is deprecated

Этот PR добавляет public $modx = null, как в modTransportManager.

Как проверить

php -l core/src/Revolution/Transport/modPackageBuilder.php
core/vendor/bin/phpunit -c ./_build/test/phpunit.xml Tests/Model/Transport/modPackageBuilderTest.php

Exit 0 на PHP 8.4 локально.

Чтобы увидеть исходное предупреждение: создайте modPackageBuilder во время сборки пакета (менеджер или _build). PHP 8.2+ логировал deprecation на строке 70 до этого изменения.

Связанные

Найдено в логе ошибок менеджера.

Совместимость

Только PHP 8.2+. Без изменения runtime-поведения.

Совместимость

Без изменения API. Безопасно для patch-релизов.

Оригинал: modxcms#16989

Prevents "Creation of dynamic property ...::$modx is deprecated" when
instantiating the package builder. Matches modTransportManager convention.
@Ibochkarev Ibochkarev changed the title Объявить свойство modx на modPackageBuilder для совместимости с PHP 8.2 Declare modx property on modPackageBuilder for PHP 8.2 compatibility Aug 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant