Skip to content

Conversation

@ryanrath
Copy link
Contributor

@ryanrath ryanrath commented May 19, 2025

Description

These changes were derived from the composer library rector/rector which helps identify php code that matches specific rules / sets of rules. In this case the rule used was the "Complete Dynamic Properties" https://getrector.com/rule-detail/complete-dynamic-properties-rector .

NOTE: If you dry-run that rule on a freshly checked out XDMoD repo it will include some white space modifications. I have not included those changes in this PR

Motivation and Context

As of PHP 8.2 dynamically creating properties for an object has been deprecated ( https://php.watch/versions/8.2/dynamic-properties-deprecated ). As the changes to support this are compatible with PHP 7.4 this PR can be merged prior to the main 7.4 -> 8.2 upgrade.

Tests performed

All automated tests have been run locally.

Checklist:

  • The pull request description is suitable for a Changelog entry
  • The milestone is set correctly on the pull request
  • The appropriate labels have been added to the pull request

As of PHP 8.2 dynamically creating properties has been deprecated (
https://php.watch/versions/8.2/dynamic-properties-deprecated ). As the changes
to support this are compatible with PHP 7.4 this PR can be merged prior to the
main 7.4 -> 8.2 upgrade.
@ryanrath ryanrath added this to the 11.5.0 milestone May 19, 2025
@ryanrath ryanrath added autodoc:ignore Auto documentation ignore this PR Category:Infrastructure Internal infrastructure updates/changes labels May 19, 2025
@ryanrath ryanrath mentioned this pull request Aug 27, 2025
3 tasks
@ryanrath ryanrath marked this pull request as ready for review September 2, 2025 14:30
@eiffel777
Copy link
Contributor

I'll approve this but I would really like appropriate comments added for each of the properties. I know that's a bit of a pain but I think it will be helpful.

eiffel777
eiffel777 previously approved these changes Sep 22, 2025
@ryanrath
Copy link
Contributor Author

@eiffel777 I mean, I can give go through and try and do basics like, add expected types and what it looks like the properties purpose is, but doing a 100% deep dive into each property and it's purpose is outside the scope of this particular PR.

@eiffel777
Copy link
Contributor

@eiffel777 I mean, I can give go through and try and do basics like, add expected types and what it looks like the properties purpose is, but doing a 100% deep dive into each property and it's purpose is outside the scope of this particular PR.

Yeah, having at least the type would be helpful. I'm fine with that.

eiffel777
eiffel777 previously approved these changes Sep 23, 2025
@ryanrath ryanrath requested a review from eiffel777 September 23, 2025 17:57
@ryanrath ryanrath merged commit bea7ed7 into ubccr:main Sep 23, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autodoc:ignore Auto documentation ignore this PR Category:Infrastructure Internal infrastructure updates/changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants