Page MenuHomePhabricator

Reflection(Property|Method|Class)::setAccessible() is a noop in PHP 8.1
Open, LowPublic

Description

https://www.php.net/manual/en/reflectionproperty.setaccessible.php

Note: As of PHP 8.1.0, calling this method has no effect; all properties are accessible by default.

https://www.php.net/manual/en/reflectionmethod.setaccessible.php

Note: As of PHP 8.1.0, calling this method has no effect; all methods are invokable by default.

And for both...

This function has been DEPRECATED as of PHP 8.5.0. Relying on this function is highly discouraged.


For Wikimedia production:

https://codesearch.wmcloud.org/deployed/?q=-%3EsetAccessible&files=&excludeFiles=&repos=

  • ReflectionClass::setAccessible()
    • Used in psy/psysh in vendor, but gated by PHP version
  • ReflectionMethod::setAccessible()
  • ReflectionProperty::setAccessible()
    • Used in pimple/pimple in vendor; needs update (or dropping)
    • Used in wikimedia/testing-access-wrapper in vendor; needs release/pull-through

More widely:

https://codesearch.wmcloud.org/search/?q=-%3EsetAccessible&files=&excludeFiles=&repos=

  • ReflectionClass::setAccessible()
  • ReflectionMethod::setAccessible()
  • ReflectionProperty::setAccessible()

Details

Related Changes in Gerrit:
SubjectRepoBranchLines +/-
mediawiki/oauthclient-phpmaster+0 -1
mediawiki/coreREL1_43+0 -33
mediawiki/coreREL1_44+0 -31
mediawiki/coreREL1_45+0 -7
mediawiki/skins/VectorREL1_44+0 -1
mediawiki/skins/VectorREL1_43+0 -1
mediawiki/coremaster+0 -1
mediawiki/skins/BlueSpiceDiscoverymaster+0 -1
mediawiki/coremaster+248 -92
mediawiki/coremaster+0 -7
mediawiki/extensions/FacetedCategorymaster+0 -1
mediawiki/extensions/VisualDatamaster+0 -1
mediawiki/extensions/Lingomaster+0 -2
mediawiki/extensions/ExternalDatamaster+0 -5
mediawiki/vendormaster+617 -324
mediawiki/oauthclient-phpmaster+0 -0
testing-access-wrappermaster+0 -1
testing-access-wrappermaster+0 -2
mediawiki/extensions/MathSearchmaster+0 -1
mediawiki/extensions/Sentrymaster+0 -1
mediawiki/coremaster+0 -1
mediawiki/extensions/ChessBrowsermaster+0 -1
mediawiki/extensions/PerPageLanguagemaster+0 -1
mediawiki/extensions/WikiLambdamaster+0 -3
mediawiki/extensions/WikiLambdamaster+0 -2
mediawiki/extensions/CirrusSearchmaster+0 -1
oojs/uimaster+0 -1
css-sanitizermaster+0 -1
mediawiki/extensions/Flowmaster+0 -17
mediawiki/extensions/MobileFrontendmaster+1 -3
mediawiki/extensions/Flowmaster+0 -2
mediawiki/extensions/Translatemaster+0 -1
mediawiki/extensions/DonationInterfacemaster+0 -1
mediawiki/extensions/WikibaseCirrusSearchmaster+0 -2
mediawiki/extensions/GrowthExperimentsmaster+0 -1
mediawiki/extensions/CheckUsermaster+0 -4
mediawiki/extensions/Wikibasemaster+0 -6
mediawiki/extensions/Wikibasemaster+0 -7
mediawiki/extensions/ChessBrowsermaster+0 -2
operations/mediawiki-configmaster+0 -1
mediawiki/extensions/Mathmaster+0 -1
mediawiki/extensions/Mathmaster+0 -1
mediawiki/extensions/GlobalCssJsmaster+0 -3
mediawiki/extensions/CentralAuthmaster+0 -3
mediawiki/extensions/ConfirmEditmaster+0 -2
mediawiki/extensions/SpamBlacklistmaster+0 -1
mediawiki/extensions/CommonsMetadatamaster+0 -7
mediawiki/extensions/OAuthmaster+0 -1
mediawiki/extensions/JsonConfigmaster+0 -1
mediawiki/extensions/OAuthmaster+0 -2
mediawiki/extensions/Echomaster+0 -2
mediawiki/extensions/Echomaster+0 -1
mediawiki/skins/Vectormaster+0 -1
mediawiki/extensions/Thanksmaster+0 -1
mediawiki/extensions/FlaggedRevsmaster+0 -2
mediawiki/extensions/WikibaseMediaInfomaster+0 -5
mediawiki/extensions/UploadWizardmaster+0 -1
mediawiki/services/parsoidmaster+0 -1
mediawiki/libs/IPUtilsmaster+0 -1
mediawiki/coremaster+0 -31
Show related patches Customize query in gerrit

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Change #1194739 merged by jenkins-bot:

[mediawiki/services/parsoid@master] tests: Remove usage of ReflectionProperty::setAccessible()

https://gerrit.wikimedia.org/r/1194739

Change #1194752 merged by jenkins-bot:

[mediawiki/extensions/UploadWizard@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194752

Change #1194759 merged by jenkins-bot:

[mediawiki/extensions/FlaggedRevs@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194759

Change #1194751 merged by jenkins-bot:

[mediawiki/extensions/WikibaseMediaInfo@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194751

Change #1194750 merged by jenkins-bot:

[mediawiki/skins/Vector@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194750

Change #1194754 merged by jenkins-bot:

[mediawiki/extensions/Thanks@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194754

Change #1194770 merged by jenkins-bot:

[mediawiki/extensions/Echo@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194770

Change #1194771 merged by jenkins-bot:

[mediawiki/extensions/Echo@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194771

Change #1194765 merged by jenkins-bot:

[mediawiki/extensions/OAuth@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194765

Change #1194766 merged by jenkins-bot:

[mediawiki/extensions/OAuth@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194766

Change #1194761 merged by jenkins-bot:

[mediawiki/extensions/ConfirmEdit@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194761

Change #1194755 merged by jenkins-bot:

[mediawiki/extensions/SpamBlacklist@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194755

Change #1194757 merged by jenkins-bot:

[mediawiki/extensions/JsonConfig@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194757

Change #1194769 merged by jenkins-bot:

[mediawiki/extensions/GlobalCssJs@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194769

Change #1194772 merged by jenkins-bot:

[mediawiki/extensions/CommonsMetadata@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194772

Change #1194774 merged by jenkins-bot:

[mediawiki/extensions/CentralAuth@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194774

Change #1194767 merged by jenkins-bot:

[mediawiki/extensions/Math@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194767

Change #1194768 merged by jenkins-bot:

[mediawiki/extensions/Math@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194768

Change #1194749 merged by jenkins-bot:

[operations/mediawiki-config@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194749

Change #1194763 merged by jenkins-bot:

[mediawiki/extensions/ChessBrowser@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194763

Change #1194779 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194779

Change #1194780 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194780

Change #1194773 merged by jenkins-bot:

[mediawiki/extensions/CheckUser@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194773

Change #1194764 merged by jenkins-bot:

[mediawiki/extensions/WikibaseCirrusSearch@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194764

Change #1194758 merged by jenkins-bot:

[mediawiki/extensions/GrowthExperiments@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194758

Change #1194753 merged by jenkins-bot:

[mediawiki/extensions/Translate@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194753

Change #1194760 merged by jenkins-bot:

[mediawiki/extensions/DonationInterface@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194760

Change #1194777 merged by jenkins-bot:

[mediawiki/extensions/Flow@master] Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194777

Change #1194756 merged by jenkins-bot:

[mediawiki/extensions/MobileFrontend@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194756

Change #1194778 merged by jenkins-bot:

[mediawiki/extensions/Flow@master] Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194778

Change #1194972 had a related patch set uploaded (by Reedy; author: Reedy):

[css-sanitizer@master] tests: Don't use ReflectionMethod::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1194972

Change #1194974 had a related patch set uploaded (by Reedy; author: Reedy):

[oojs/ui@master] tests: Don't use ReflectionProperty::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1194974

Change #1194976 had a related patch set uploaded (by Reedy; author: Reedy):

[testing-access-wrapper@master] tests: Don't use ReflectionClass::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1194976

Change #1194974 merged by jenkins-bot:

[oojs/ui@master] tests: Don't use ReflectionProperty::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1194974

Change #1194972 merged by jenkins-bot:

[css-sanitizer@master] tests: Don't use ReflectionMethod::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1194972

Change #1194976 merged by jenkins-bot:

[testing-access-wrapper@master] tests: Don't use ReflectionClass::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1194976

Reedy renamed this task from Reflection(Property|Method)::setAccessible() is a noop in PHP 8.1 to Reflection(Property|Method|Class)::setAccessible() is a noop in PHP 8.1.Oct 9 2025, 3:33 PM

Change #1194762 merged by Jforrester:

[mediawiki/extensions/CirrusSearch@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194762

Change #1194775 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] tests: Remove usage of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194775

Change #1194776 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1194776

Change #1194999 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/ChessBrowser@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op (missed one!)

https://gerrit.wikimedia.org/r/1194999

Change #1195000 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/core@master] convertExtensionToRegistration: Remove use of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195000

Change #1195001 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/ExternalData@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195001

Change #1195002 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/FacetedCategory@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195002

Change #1195003 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/Lingo@master] tests: Remove use of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195003

Change #1195004 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/MathSearch@master] MathObject: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195004

Change #1195005 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/Sentry@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195005

Change #1195006 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/VisualData@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195006

Change #1195007 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/PerPageLanguage@master] Hooks::onUserGetLanguageObject: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195007

Change #1195009 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/skins/BlueSpiceDiscovery@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195009

Change #1194999 merged by jenkins-bot:

[mediawiki/extensions/ChessBrowser@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op (missed one!)

https://gerrit.wikimedia.org/r/1194999

Change #1195007 merged by jenkins-bot:

[mediawiki/extensions/PerPageLanguage@master] Hooks::onUserGetLanguageObject: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195007

Change #1195000 merged by jenkins-bot:

[mediawiki/core@master] convertExtensionToRegistration: Remove use of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195000

Change #1195005 merged by Gergő Tisza:

[mediawiki/extensions/Sentry@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195005

Change #1195004 merged by jenkins-bot:

[mediawiki/extensions/MathSearch@master] MathObject: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195004

Change #1195028 had a related patch set uploaded (by Jforrester; author: Jforrester):

[testing-access-wrapper@master] Remove one last use of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195028

Change #1195028 merged by jenkins-bot:

[testing-access-wrapper@master] Remove one last use of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195028

Change #1195088 had a related patch set uploaded (by Reedy; author: Reedy):

[mediawiki/oauthclient-php@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195088

Change #1195088 abandoned by Reedy:

[mediawiki/oauthclient-php@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195088

Change #1195699 had a related patch set uploaded (by Isabelle Hurbain-Palatin; author: Isabelle Hurbain-Palatin):

[mediawiki/vendor@master] Bump wikimedia/parsoid to 0.22.0-a27

https://gerrit.wikimedia.org/r/1195699

Change #1195699 merged by jenkins-bot:

[mediawiki/vendor@master] Bump wikimedia/parsoid to 0.22.0-a27

https://gerrit.wikimedia.org/r/1195699

Change #1195001 merged by jenkins-bot:

[mediawiki/extensions/ExternalData@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195001

Change #1195003 merged by Umherirrender:

[mediawiki/extensions/Lingo@master] tests: Remove use of ReflectionProperty::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195003

Change #1195006 merged by Umherirrender:

[mediawiki/extensions/VisualData@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195006

Change #1195002 merged by Umherirrender:

[mediawiki/extensions/FacetedCategory@master] tests: Remove use of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1195002

Change #1216407 had a related patch set uploaded (by Ammarpad; author: Ammarpad):

[mediawiki/core@master] tests: remove setAccessible() call on Reflection objects

https://gerrit.wikimedia.org/r/1216407

Change #1216407 merged by jenkins-bot:

[mediawiki/core@master] tests: remove setAccessible() call on Reflection objects

https://gerrit.wikimedia.org/r/1216407

Change #1219646 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/core@master] Update OOUI to v0.53.1

https://gerrit.wikimedia.org/r/1219646

Change #1219646 merged by jenkins-bot:

[mediawiki/core@master] Update OOUI to v0.53.1

https://gerrit.wikimedia.org/r/1219646

Change #1222604 had a related patch set uploaded (by Reedy; author: Reedy):

[mediawiki/core@master] IcuCollationTest: Remove setAccessible call

https://gerrit.wikimedia.org/r/1222604

Change #1222604 merged by jenkins-bot:

[mediawiki/core@master] IcuCollationTest: Remove setAccessible call

https://gerrit.wikimedia.org/r/1222604

Change #1231035 had a related patch set uploaded (by Umherirrender; author: Ammarpad):

[mediawiki/core@REL1_45] tests: remove setAccessible() call on Reflection objects

https://gerrit.wikimedia.org/r/1231035

Change #1231039 had a related patch set uploaded (by Umherirrender; author: Jforrester):

[mediawiki/skins/Vector@REL1_44] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1231039

Change #1231040 had a related patch set uploaded (by Umherirrender; author: Jforrester):

[mediawiki/skins/Vector@REL1_43] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1231040

Change #1231040 merged by jenkins-bot:

[mediawiki/skins/Vector@REL1_43] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1231040

Change #1231039 merged by jenkins-bot:

[mediawiki/skins/Vector@REL1_44] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1231039

Change #1231044 had a related patch set uploaded (by Umherirrender; author: Jforrester):

[mediawiki/core@REL1_44] tests: Don't use ReflectionProperty::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1231044

Change #1231035 merged by jenkins-bot:

[mediawiki/core@REL1_45] tests: remove setAccessible() call on Reflection objects

https://gerrit.wikimedia.org/r/1231035

Change #1231056 had a related patch set uploaded (by Umherirrender; author: Jforrester):

[mediawiki/core@REL1_43] tests: Don't use ReflectionProperty::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1231056

Change #1231044 merged by jenkins-bot:

[mediawiki/core@REL1_44] tests: Don't use ReflectionProperty::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1231044

Change #1231056 merged by jenkins-bot:

[mediawiki/core@REL1_43] tests: Don't use ReflectionProperty::setAccessible(), it's a no-op now

https://gerrit.wikimedia.org/r/1231056

Change #1235338 had a related patch set uploaded (by Umherirrender; author: Umherirrender):

[mediawiki/oauthclient-php@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1235338

Change #1235338 merged by jenkins-bot:

[mediawiki/oauthclient-php@master] tests: Remove usage of ReflectionMethod::setAccessible(), no-op

https://gerrit.wikimedia.org/r/1235338