← all change records
Not yet reviewed. Contrib-impact data below may be incomplete.

#3551652 Hooks in themes can now be OOP

new Target 11.3.x Published 2025-10-27
#3544715

Generated 2026-05-12 08:43 UTC

Rules (1)

attribute_usage 1
from
to
  • \Drupal\Core\Hook\Attribute\Hook

Affected contrib projects (410)

Project legacy in_flight migrated no_match installs files adopters
token 0 0 1 0 514,328 0 0
pathauto 0 0 1 0 460,784 0 0
metatag 0 0 1 2 329,299 0 0
webform 0 0 1 0 322,505 0 0
entity_reference_revisions 0 0 1 0 250,304 0 0
paragraphs 0 0 1 0 237,094 0 0
search_api 0 0 1 0 155,254 0 0
views_bulk_operations 0 0 1 1 146,204 0 0
honeypot 0 0 1 0 134,562 0 0
rules 0 0 1 0 84,336 0 0
diff 0 0 1 1 73,201 0 0
masquerade 0 0 1 0 64,317 0 0
smart_trim 0 0 1 0 60,989 0 0
migrate_plus 0 0 1 0 59,801 0 0
file_mdm 0 0 1 1 56,309 0 0
seven 0 0 1 0 55,803 0 0
search_api_solr 0 0 1 0 54,432 0 0
redis 0 0 1 1 51,552 0 0
components 0 0 1 0 43,256 0 0
geolocation 0 0 1 1 42,245 0 0
commerce 0 0 1 0 37,105 0 0
imagemagick 0 0 1 2 36,701 0 0
image_effects 0 0 1 2 32,624 0 0
sophron 0 0 1 1 32,449 0 0
filefield_paths 0 0 1 0 30,600 0 0
views_autocomplete_filters 0 0 1 0 29,809 0 0
csp 0 0 1 1 24,209 0 0
queue_ui 0 0 1 0 18,945 0 0
trash 0 0 1 0 18,513 0 0
charts 0 0 2 0 18,491 0 0
office_hours 0 0 1 0 18,345 0 0
group 0 0 2 0 16,745 0 0
commerce_shipping 0 0 1 1 15,621 0 0
eca 0 0 2 1 15,522 0 0
site_verify 0 0 1 1 14,934 0 0
rename_admin_paths 0 0 1 0 14,371 0 0
content_lock 0 0 1 0 14,106 0 0
ai 0 0 4 0 13,284 0 0
domain 0 0 1 1 11,148 0 0
ckeditor_font 0 0 1 1 10,995 0 0
genpass 0 0 2 0 10,697 0 0
replicate_ui 0 0 1 0 9,435 0 0
publication_date 0 0 1 0 8,907 0 0
project_browser 0 0 1 0 8,873 0 0
datalayer 0 0 1 0 8,651 0 0
modeler_api 0 0 2 0 8,078 0 0
ui_patterns 0 0 1 1 7,968 0 0
dashboard 0 0 1 0 7,926 0 0
layout_builder_iframe_modal 0 0 1 1 7,778 0 0
moderation_dashboard 0 0 1 2 7,647 0 0
book 0 0 1 2 7,597 0 0
easy_email 0 0 1 0 7,483 0 0
navigation_extra_tools 0 0 1 0 7,063 0 0
ai_agents 0 0 2 1 6,863 0 0
admin_audit_trail 0 0 1 0 6,823 0 0
date_ical 0 0 1 0 6,685 0 0
searchstax 0 0 1 0 6,676 0 0
poll 0 0 1 0 6,229 0 0
name 0 0 1 0 6,125 0 0
image_field_caption 0 0 1 1 5,893 0 0
workflow 0 0 2 0 5,070 0 0
securelogin 0 0 1 1 5,068 0 0
type_tray 0 0 1 0 4,668 0 0
canvas 0 0 1 0 4,478 0 0
animated_gif 0 0 1 2 4,420 0 0
menu_item_fields 0 0 1 1 4,159 0 0
drupal_cms_helper 0 0 1 1 4,156 0 0
toc_js 0 0 1 0 4,088 0 0
events_log_track 0 0 1 1 3,611 0 0
languagefield 0 0 1 0 3,568 0 0
privatemsg 0 0 1 0 3,065 0 0
jsonapi_include 0 0 1 1 3,005 0 0
custom_field 0 0 1 0 2,996 0 0
registration 0 0 1 0 2,987 0 0
mercury 0 0 1 0 2,792 0 0
helper 0 0 1 0 2,790 0 0
ai_dashboard 0 0 1 0 2,771 0 0
group_content_menu 0 0 2 0 2,765 0 0
paragraphs_table 0 0 1 0 2,651 0 0
layout_builder_st 0 0 1 0 2,579 0 0
byte_theme 0 0 1 0 2,491 0 0
ip2country 0 0 1 0 2,098 0 0
dark_mode_toggle 0 0 1 1 1,995 0 0
easy_encryption 0 0 1 0 1,960 0 0
private_message 0 0 1 1 1,888 0 0
civicrm_entity 0 0 1 0 1,870 0 0
commerce_cart_redirection 0 0 1 1 1,853 0 0
textimage 0 0 1 1 1,716 0 0
smsframework 0 0 1 3 1,661 0 0
domain_path 0 0 2 1 1,634 0 0
navigation_menu_role 0 0 1 0 1,548 0 0
jquery_deprecated_functions 0 0 1 0 1,440 0 0
menu_migration 0 0 2 0 1,418 0 0
eca_cm 0 0 1 0 1,415 0 0
eca_tamper 0 0 1 0 1,404 0 0
jquery_downgrade 0 0 1 0 1,356 0 0
layout_builder_ids 0 0 1 1 1,325 0 0
frontend_editing 0 0 1 1 1,309 0 0
acquia_dam 0 0 1 0 1,282 0 0
mercury_editor 0 0 1 2 1,268 0 0
migrate_source_ui 0 0 1 0 1,264 0 0
custom_login_url 0 0 1 0 1,197 0 0
ban 0 0 2 0 1,168 0 0
ip_anon 0 0 1 1 1,142 0 0
radioactivity 0 0 1 0 1,072 0 0
hms_field 0 0 1 0 1,064 0 0
external_entities 0 0 1 0 1,024 0 0
media_entity_link 0 0 1 0 1,022 0 0
select_text_value 0 0 1 1 1,001 0 0
prevnext 0 0 1 1 958 0 0
barcodes 0 0 1 0 946 0 0
reporting 0 0 1 1 942 0 0
media_thumbnails_svg 0 0 1 1 916 0 0
index_now 0 0 1 0 880 0 0
quote 0 0 2 0 849 0 0
eca_webform 0 0 1 0 789 0 0
table_header_scope_attribute 0 0 1 1 789 0 0
views_data_export_phpspreadsheet 0 0 1 0 779 0 0
crowdsec 0 0 1 1 760 0 0
recurring_events 0 0 1 0 714 0 0
purge_users 0 0 1 1 700 0 0
tocbot 0 0 1 1 684 0 0
views_attach_library 0 0 1 1 672 0 0
field_widget_add_more 0 0 1 0 603 0 0
autologout_alterable 0 0 1 0 590 0 0
fasttoggle 0 0 1 1 568 0 0
browsersync 0 0 1 0 550 0 0
menu_bootstrap_icon 0 0 1 0 524 0 0
webhooks 0 0 1 0 505 0 0
mgv 0 0 1 1 489 0 0
requirements_manager 0 0 1 0 402 0 0
webform_user_registration 0 0 1 0 392 0 0
ui_suite_bootstrap 0 0 1 2 374 0 0
file_extractor 0 0 1 2 368 0 0
log 0 0 1 1 366 0 0
devel_a11y 0 0 1 1 362 0 0
entity_access_password 0 0 1 2 361 0 0
menu_tree 0 0 1 1 346 0 0
tool 0 0 1 0 325 0 0
block_content_suggestions 0 0 1 2 310 0 0
email_username 0 0 1 1 281 0 0
modeler 0 0 2 0 279 0 0
term_glossary 0 0 1 0 260 0 0
resend_register_mail 0 0 1 0 258 0 0
entity_reference_modal 0 0 1 0 255 0 0
address_suggestion 0 0 1 0 251 0 0
ai_tmgmt 0 0 1 0 249 0 0
suggestion 0 0 1 1 242 0 0
field_widget_actions 0 0 1 0 241 0 0
bootstrap5_admin 0 0 1 0 240 0 0
ai_integration_eca 0 0 1 0 237 0 0
tr_rulez 0 0 1 0 235 0 0
views_organization_chart 0 0 1 0 234 0 0
eca_flag 0 0 1 0 232 0 0
wse 0 0 1 0 228 0 0
fluidui 0 0 1 1 224 0 0
layout_builder_widget 0 0 1 0 223 0 0
timepicker 0 0 1 0 223 0 0
paragraphs_bootstrap_carousel 0 0 1 0 217 0 0
workbench_tabs 0 0 1 0 213 0 0
languages_dropdown 0 0 1 2 207 0 0
theme_breakpoints_js 0 0 1 0 205 0 0
masquerade_field 0 0 1 0 198 0 0
pager 0 0 1 1 190 0 0
usfedgov_google_analytics 0 0 1 1 188 0 0
admin_toolbar_messages 0 0 1 0 186 0 0
protect_views_flood_control 0 0 1 0 178 0 0
meta_conversions_api 0 0 1 0 173 0 0
canvas_full_html 0 0 1 0 171 0 0
css_variables_customizer 0 0 1 0 170 0 0
printjs 0 0 1 0 170 0 0
same_page_preview 0 0 1 0 166 0 0
complete_webform_exporter 0 0 1 0 165 0 0
varbase_components 0 0 1 1 160 0 0
varnish_file_purge 0 0 1 0 159 0 0
eca_metatag 0 0 1 0 146 0 0
pathauto_entity_parent 0 0 1 0 145 0 0
document_loader 0 0 1 1 137 0 0
ws_event 0 0 1 0 136 0 0
pwbi 0 0 1 0 125 0 0
fileslog 0 0 1 0 122 0 0
lb_plus 0 0 1 1 122 0 0
navigation_plus 0 0 2 0 120 0 0
speedboxes 0 0 1 1 120 0 0
swiffy_slider 0 0 1 1 114 0 0
custom_elements 0 0 1 1 113 0 0
search_api_typesense 0 0 1 0 109 0 0
kraken 0 0 1 0 107 0 0
tripal 0 0 1 0 106 0 0
viewer 0 0 1 1 106 0 0
image_styles_mapping 0 0 1 1 103 0 0
dkan_dataset_archiver 0 0 1 0 98 0 0
lms 0 0 1 0 94 0 0
webform_bootstrap 0 0 1 0 89 0 0
unified_date 0 0 1 0 88 0 0
paragraph_block 0 0 1 0 83 0 0
domain_extras 0 0 1 1 81 0 0
change_labels 0 0 1 0 79 0 0
fpdi_print 0 0 1 0 77 0 0
contextual_image_widget_crop 0 0 1 0 76 0 0
privacy_log 0 0 1 0 75 0 0
facets_range_input 0 0 1 0 72 0 0
gleap 0 0 1 0 72 0 0
primary_entity_reference 0 0 1 0 72 0 0
ai_context 0 0 1 0 70 0 0
canvas_bootstrap 0 0 1 0 70 0 0
configurable_anonymizer 0 0 1 0 67 0 0
views_mobile 0 0 1 1 67 0 0
multiple_email 0 0 1 0 66 0 0
track_usage 0 0 1 0 66 0 0
webform_intl_tel_national_mode 0 0 1 0 64 0 0
gantt 0 0 1 0 63 0 0
deindex_unpublished_files 0 0 1 0 61 0 0
partial_datelist 0 0 1 0 61 0 0
canvas_extjs 0 0 2 0 60 0 0
json_table 0 0 1 0 59 0 0
entity_logger 0 0 1 0 58 0 0
logger 0 0 1 0 58 0 0
openintranet_engagement 0 0 1 0 56 0 0
ai_provider_dxpr 0 0 1 0 55 0 0
datetime_reset 0 0 1 0 52 0 0
frontend_routing 0 0 1 0 52 0 0
bulk_term_delete 0 0 1 0 51 0 0
tmgmt_ec_etranslation 0 0 1 0 51 0 0
advanced_header_field 0 0 1 1 49 0 0
path_alias_view_access 0 0 1 0 49 0 0
crm 0 0 1 0 48 0 0
group_purl 0 0 1 1 47 0 0
token_browser 0 0 1 0 47 0 0
file_visibility 0 0 1 0 46 0 0
qr_generator 0 0 1 1 45 0 0
drulma_companion 0 0 1 0 44 0 0
nodepermissions 0 0 1 0 43 0 0
eca_views_data_export 0 0 1 0 40 0 0
menu_link_content_view_access 0 0 1 0 40 0 0
paragraph_group 0 0 2 0 40 0 0
entity_vdts 0 0 1 0 39 0 0
commerce_product_availability 0 0 1 0 38 0 0
patternkit 0 0 1 0 37 0 0
prometheus_metrics 0 0 1 1 37 0 0
dropdown_pager 0 0 1 0 36 0 0
paragraph_usage_dashboard 0 0 1 0 36 0 0
ckeditor_media_edit 0 0 1 0 35 0 0
threejs 0 0 1 0 35 0 0
container_query_images 0 0 1 0 34 0 0
phoney 0 0 1 1 34 0 0
logger_db 0 0 1 0 33 0 0
trace_mail_log 0 0 1 1 33 0 0
webform_remote_fields 0 0 1 0 33 0 0
commerce_shipping_order_percentage 0 0 1 1 32 0 0
ip_info 0 0 1 0 32 0 0
lms_file_upload 0 0 1 0 32 0 0
lms_h5p 0 0 1 0 32 0 0
media_opengraph 0 0 1 1 32 0 0
pipewrench 0 0 1 0 32 0 0
postoffice 0 0 1 0 32 0 0
alter_entity_autocomplete 0 0 1 0 31 0 0
database_ssl_check 0 0 1 1 31 0 0
lms_certificate 0 0 1 0 31 0 0
unicode_soft_hyphens 0 0 1 0 31 0 0
group_media_bulk_upload 0 0 1 0 29 0 0
meeting_api 0 0 1 0 29 0 0
paragraphs_tabs_bootstrap 0 0 1 0 29 0 0
bootstrap_flag_icons 0 0 1 0 28 0 0
media_remote_hls 0 0 1 1 28 0 0
better_taxonomy 0 0 1 0 27 0 0
soundcite 0 0 1 0 27 0 0
views_themeable_text_area 0 0 1 0 27 0 0
advanced_message_subscription 0 0 1 0 25 0 0
field_redirect 0 0 1 0 25 0 0
localgov_publications_importer 0 0 1 0 25 0 0
tmgmt_laratranslate 0 0 2 0 25 0 0
update_narf 0 0 1 1 25 0 0
xnavigation 0 0 1 0 25 0 0
config_warning 0 0 1 0 24 0 0
exclusive_boolean 0 0 1 0 24 0 0
flowdrop 0 0 3 0 24 0 0
form_layout 0 0 1 0 24 0 0
metadata_sanitizer 0 0 1 0 23 0 0
ocr_image 0 0 1 0 23 0 0
pwa_firebase 0 0 1 0 22 0 0
conductor 0 0 1 0 21 0 0
configurable_anonymizer_oidc 0 0 1 0 21 0 0
content_filter 0 0 1 0 21 0 0
lms_membership_request 0 0 2 0 21 0 0
ajax_cart_update 0 0 2 0 20 0 0
reading_progress_bar 0 0 1 0 20 0 0
action_link 0 0 1 0 19 0 0
login_monitor 0 0 1 0 19 0 0
media_default_image 0 0 1 0 19 0 0
teamleader 0 0 1 0 18 0 0
cron_fail_alert 0 0 1 0 17 0 0
flowdrop_ai_provider 0 0 1 0 17 0 0
hal_publications 0 0 1 1 17 0 0
log_cache_tags 0 0 1 0 17 0 0
screenshot 0 0 1 0 17 0 0
simple_oauth_refresh_token_buffer 0 0 1 0 17 0 0
dash 0 0 1 0 16 0 0
farm_rcd 0 0 1 0 16 0 0
gifplayer 0 0 1 0 16 0 0
lms_messages 0 0 1 0 16 0 0
require_revision 0 0 1 0 16 0 0
select_a11y_ng 0 0 1 0 16 0 0
experience_builder 0 0 2 0 15 0 0
local_taskbar 0 0 1 0 15 0 0
search_api_term_with_depth 0 0 1 0 15 0 0
vocabulary_clone 0 0 1 0 15 0 0
work_time 0 0 1 0 15 0 0
workflow_participants 0 0 2 0 15 0 0
farm_crop_plan 0 0 1 0 14 0 0
loginnotification 0 0 1 0 14 0 0
media_scroller 0 0 1 0 14 0 0
olivero_dark_switch 0 0 1 0 14 0 0
string 0 0 2 0 14 0 0
block_content_type_visibility 0 0 1 0 13 0 0
paragraphs_gantt 0 0 1 0 13 0 0
quick_data 0 0 1 0 13 0 0
eaf 0 0 1 0 12 0 0
page_analytics 0 0 1 0 12 0 0
advancedqueue_mail 0 0 1 0 11 0 0
api 0 0 1 0 11 0 0
cas_user_ban 0 0 1 0 11 0 0
path_alias_views 0 0 1 0 11 0 0
rocketship_theme_starter 0 0 1 1 11 0 0
swagger_php 0 0 1 0 11 0 0
coveo 0 0 2 1 10 0 0
entity_attributes 0 0 1 0 10 0 0
logged_in 0 0 1 0 10 0 0
netforum 0 0 1 0 10 0 0
search_api_autocomplete_improved 0 0 1 0 10 0 0
workspaces_access 0 0 2 0 10 0 0
smileys_field 0 0 1 0 9 0 0
verify_email 0 0 2 0 9 0 0
whatsapp_in 0 0 1 0 9 0 0
content_toc 0 0 1 0 8 0 0
jqcloud 0 0 1 1 8 0 0
user_dashboard_bootstrap 0 0 1 0 8 0 0
ai_webform_guard 0 0 1 0 7 0 0
content_moderation_tabs 0 0 1 0 7 0 0
email_otp_login 0 0 1 0 7 0 0
farm_grazing_plan 0 0 1 0 7 0 0
leaflet_dynamic_table 0 0 1 0 7 0 0
metatag_paths 0 0 1 0 7 0 0
refreshless 0 0 1 1 7 0 0
sequences 0 0 1 0 7 0 0
config_pages_overrides 0 0 1 1 6 0 0
oauth_client 0 0 1 0 6 0 0
postlight_parser 0 0 1 0 6 0 0
quick_scroll 0 0 1 0 6 0 0
state_machine_automated_transition 0 0 2 0 6 0 0
views_lazy_renderer 0 0 2 0 6 0 0
flowdrop_ui_agents 0 0 1 0 5 0 0
inline_image_saver 0 0 1 0 5 0 0
link_filebrowser 0 0 1 0 5 0 0
public_key_credential_source 0 0 1 0 5 0 0
renderviz 0 0 1 1 5 0 0
social_auth_account_verification 0 0 1 0 5 0 0
steam_login 0 0 1 0 5 0 0
translation_bliss 0 0 1 0 5 0 0
bulk_update_user_roles 0 0 1 0 4 0 0
copyright_notice 0 0 1 1 4 0 0
easy_entity_field 0 0 2 0 4 0 0
flowdrop_agents 0 0 1 0 4 0 0
htmx_extras 0 0 1 0 4 0 0
oembed_configuration 0 0 1 0 4 0 0
pdf_reducer 0 0 1 0 4 0 0
rcr 0 0 2 0 4 0 0
role_request 0 0 1 0 4 0 0
user_email_preview 0 0 1 0 4 0 0
views_area_library 0 0 1 0 4 0 0
views_relationship_condition 0 0 1 0 4 0 0
ai_document_ocr 0 0 1 0 3 0 0
atd 0 0 1 1 3 0 0
basic_ads 0 0 1 1 3 0 0
false_account 0 0 1 0 3 0 0
group_inline_entity_form 0 0 1 0 3 0 0
livre 0 0 1 0 3 0 0
search_api_opensearch_semantic 0 0 1 0 3 0 0
views_exposed_form_mobile 0 0 1 0 3 0 0
ai_seo_link_advisor 0 0 1 0 2 0 0
altcolor 0 0 1 0 2 0 0
bsky_post 0 0 1 0 2 0 0
commerce_store_dashboard 0 0 1 0 2 0 0
dark_mode_user 0 0 1 0 2 0 0
diboo_core 0 0 1 0 2 0 0
entity_display_processor 0 0 1 0 2 0 0
entitygroupfield_lite 0 0 1 0 2 0 0
presigned_url 0 0 1 0 2 0 0
search_api_field_datasource 0 0 2 0 2 0 0
site_settings_domain 0 0 1 0 2 0 0
trash_manager 0 0 1 0 2 0 0
users_account_modal 0 0 1 0 2 0 0
webform_error_field 0 0 1 0 2 0 0
color_picker_field 0 0 1 0 1 0 0
emporiqa 0 0 1 0 1 0 0
fillpdf_media 0 0 1 0 1 0 0
labor_time_tracker 0 0 1 0 1 0 0
rendered_entity_list_formatter 0 0 1 0 1 0 0
satis_hub 0 0 1 1 1 0 0
scrape_to_field 0 0 1 0 1 0 0
sqlite_backup 0 0 1 0 1 0 0
user_preference_login_redirect 0 0 1 0 1 0 0
views_permissions_strict 0 0 1 0 1 0 0
config_guardian 0 0 1 0 0 0 0
default_content_tools 0 0 1 0 0 0 0
govcms_ca3_consumer_helper 0 0 1 0 0 0 0
islandora_access 0 0 1 0 0 0 0
plotly 0 0 1 0 0 0 0
straker_translate 0 0 1 0 0 0 0
views_conditional_text 0 0 1 0 0 0 0