← all change records

#3442349 Support for object oriented hook implementations using autowired services; some ModuleHandler methods deprecated

released Target 11.1.x Published 2024-10-18
#3442009

Generated 2026-06-03 14:00 UTC

Matching rules (9)

  • kind: attribute_usage to: - \Drupal\Core\Hook\Attribute\Hook api_key: hook
  • kind: attribute_usage to: - \Drupal\Core\Hook\Attribute\LegacyHook api_key: legacy_hook target_kind: function
  • from: '\Drupal\Core\Extension\ModuleHandlerInterface::getHookInfo' match_unresolved: true
  • from: '\Drupal\Core\Extension\ModuleHandlerInterface::writeCache' match_unresolved: true
  • to: \Drupal\Core\Hook\Attribute\Hook
  • to: \Drupal\Core\Hook\Attribute\LegacyHook
  • to: \Drupal\Core\Hook\Attribute\RemoveHook
  • to: \Drupal\Core\Hook\Attribute\ReorderHook
  • to: \Drupal\Core\Hook\Attribute\LegacyModuleImplementsAlter

Affected contrib projects (481)

Project legacy in_flight migrated installs files adopters
token 0 0 2 541,281 0 0
pathauto 0 0 2 514,923 0 0
metatag 0 0 3 351,572 0 1
webform 0 0 3 350,386 0 1
entity_reference_revisions 0 0 2 273,796 0 0
paragraphs 0 0 2 259,569 0 0
search_api 0 0 2 170,654 0 0
views_bulk_operations 0 0 2 162,628 0 0
honeypot 0 0 2 144,212 0 0
rules 0 0 2 84,276 0 0
diff 0 0 2 79,799 0 0
masquerade 0 0 2 69,614 0 0
smart_trim 0 0 2 64,100 0 0
migrate_plus 0 0 3 63,882 0 1
seven 0 0 2 60,784 0 0
file_mdm 0 0 2 60,672 0 0
facets 0 0 2 59,159 0 0
search_api_solr 0 0 2 58,481 0 0
redis 0 0 2 56,838 0 0
geolocation 0 0 2 45,454 0 0
components 0 0 2 45,149 0 0
imagemagick 0 0 2 38,945 0 0
commerce 0 0 2 38,572 0 0
image_effects 0 0 2 34,905 0 0
sophron 0 0 2 34,781 0 0
filefield_paths 0 0 2 30,954 0 0
views_autocomplete_filters 0 0 2 30,362 0 0
hal 1 0 0 27,663 2 0
csp 0 0 2 24,736 0 0
acquia_connector 0 0 1 20,992 0 2
queue_ui 0 0 2 20,734 0 0
charts 0 0 4 19,619 0 6
trash 0 0 3 19,430 0 1
office_hours 0 0 2 19,176 0 0
block_visibility_groups 0 0 0 18,580 0 4
group 0 0 6 18,054 0 1
eca 0 0 4 17,304 0 0
commerce_shipping 0 0 2 16,132 0 0
ai 0 0 8 15,430 0 8
content_lock 0 0 3 15,420 0 1
rename_admin_paths 0 0 2 15,119 0 0
site_verify 0 0 2 14,928 0 0
s3fs 2 0 0 14,516 11 0
domain 0 0 2 11,889 0 0
ckeditor_font 0 0 2 11,311 0 0
hook_event_dispatcher 2 0 0 10,587 1 0
replicate_ui 0 0 2 10,456 0 0
project_browser 0 0 2 10,327 0 0
publication_date 0 0 2 9,556 0 0
modeler_api 0 0 4 9,511 0 0
dashboard 0 0 2 9,418 0 0
datalayer 0 0 2 9,277 0 0
genpass 0 0 4 9,244 0 0
easy_email 0 0 2 8,903 0 0
ai_agents 0 0 4 8,400 0 2
layout_builder_iframe_modal 0 0 2 8,171 0 0
name 0 0 2 8,123 0 0
book 0 0 2 8,033 0 7
navigation_extra_tools 0 0 2 7,616 0 0
ui_patterns 0 0 2 7,510 0 0
searchstax 0 0 3 7,492 0 1
admin_audit_trail 0 0 2 7,384 0 1
moderation_dashboard 0 0 2 7,180 0 0
date_ical 0 0 2 6,945 0 0
poll 0 0 2 6,885 0 0
advancedqueue 0 0 2 6,266 0 2
image_field_caption 0 0 4 5,962 0 3
canvas 0 0 2 5,503 0 34
workflow 0 0 4 5,395 0 0
securelogin 0 0 2 5,219 0 0
automatic_updates 0 0 0 5,078 0 1
noreferrer 0 0 2 5,044 0 0
drupal_cms_helper 0 0 2 4,990 0 0
gutenberg 0 0 0 4,694 0 1
toc_js 0 0 2 4,471 0 0
animated_gif 0 0 2 4,467 0 2
type_tray 0 0 2 4,448 0 0
menu_item_fields 0 0 2 4,440 0 0
events_log_track 0 0 2 3,679 0 0
ai_dashboard 0 0 2 3,631 0 1
languagefield 0 0 2 3,606 0 0
mercury 0 0 2 3,439 0 0
iubenda_integration 0 0 2 3,366 0 0
field_encrypt 0 0 2 3,218 0 0
byte_theme 0 0 2 3,169 0 1
registration 0 0 3 3,036 0 1
jsonapi_include 0 0 2 3,034 0 0
group_content_menu 0 0 6 2,944 0 1
easy_encryption 0 0 2 2,856 0 0
layout_builder_st 0 0 3 2,837 0 1
privatemsg 0 0 2 2,714 0 0
paragraphs_table 0 0 2 2,628 0 0
custom_field 0 0 2 2,601 0 1
ip2country 0 0 2 2,217 0 0
dark_mode_toggle 0 0 2 2,147 0 0
private_message 0 0 2 2,059 0 0
civicrm_entity 0 0 2 1,972 0 0
commerce_cart_redirection 0 0 2 1,964 0 0
domain_path 2 0 4 1,813 1 0
jquery_deprecated_functions 0 0 2 1,765 0 0
textimage 0 0 2 1,764 0 0
frontend_editing 0 0 3 1,578 0 2
eca_tamper 0 0 2 1,525 0 0
helper 0 0 2 1,522 0 0
jquery_downgrade 0 0 2 1,499 0 0
menu_migration 0 0 4 1,498 0 0
eca_cm 0 0 2 1,489 0 0
acquia_dam 0 0 2 1,446 0 2
smsframework 0 0 2 1,420 0 0
mercury_editor 0 0 2 1,406 0 0
media_entity_link 0 0 2 1,358 0 0
migrate_source_ui 0 0 2 1,358 0 0
layout_builder_ids 0 0 2 1,355 0 0
ip_anon 0 0 2 1,255 0 0
ban 0 0 4 1,252 0 1
custom_login_url 0 0 2 1,252 0 0
external_entities 0 0 2 1,167 0 0
navigation_menu_role 0 0 2 1,141 0 0
radioactivity 0 0 2 1,120 0 0
hms_field 0 0 2 1,079 0 0
reporting 0 0 2 1,067 0 0
barcodes 0 0 2 1,016 0 2
prevnext 0 0 2 1,013 0 0
crowdsec 0 0 2 1,004 0 0
select_text_value 0 0 2 1,004 0 0
media_thumbnails_svg 0 0 4 975 0 0
index_now 0 0 2 955 0 0
eca_webform 0 0 2 908 0 0
table_header_scope_attribute 0 0 2 896 0 0
views_data_export_phpspreadsheet 0 0 2 849 0 0
quote 0 0 4 827 0 0
recurring_events 0 0 2 813 0 0
purge_users 0 0 2 767 0 0
dbee 0 0 0 758 0 1
jsonld 1 0 0 726 1 0
tocbot 0 0 2 711 0 0
hux 6 0 0 680 1 0
views_attach_library 0 0 2 649 0 0
mgv 0 0 2 586 0 0
fasttoggle 0 0 2 581 0 0
browsersync 0 0 2 580 0 2
requirements_manager 0 0 2 575 0 0
menu_bootstrap_icon 0 0 2 569 0 0
field_widget_add_more 0 0 2 534 0 0
webhooks 0 0 2 495 0 0
autologout_alterable 0 0 2 491 0 1
ui_suite_bootstrap 0 0 2 457 0 0
entity_access_password 0 0 2 436 0 0
migrate_boost 2 0 0 416 1 0
file_extractor 0 0 2 408 0 0
canvas_full_html 0 0 2 399 0 1
prometheus_exporter 0 0 2 385 0 0
menu_tree 0 0 2 380 0 0
mailjet 2 0 0 368 3 0
webform_user_registration 0 0 2 354 0 0
block_content_suggestions 0 0 2 344 0 2
email_username 0 0 2 333 0 0
log 0 0 2 333 0 0
workbench_tabs 0 0 2 310 0 0
term_glossary 0 0 2 305 0 0
ai_integration_eca 0 0 2 304 0 1
devel_a11y 0 0 2 296 0 0
tool 0 0 2 289 0 0
resend_register_mail 0 0 2 267 0 0
wse 0 0 5 267 0 1
address_suggestion 0 0 2 264 0 1
css_variables_customizer 0 0 2 260 0 0
entity_reference_modal 0 0 2 260 0 0
fluidui 0 0 2 259 0 0
suggestion 0 0 2 257 0 0
layout_builder_widget 0 0 4 256 0 2
bootstrap5_admin 0 0 2 248 0 2
paragraphs_bootstrap_carousel 0 0 2 242 0 0
modeler 0 0 4 240 0 0
timepicker 0 0 2 236 0 0
eca_flag 0 0 2 235 0 0
ai_tmgmt 0 0 2 232 0 1
tr_rulez 0 0 2 231 0 0
theme_breakpoints_js 0 0 2 226 0 0
languages_dropdown 0 0 2 225 0 0
usfedgov_google_analytics 0 0 2 225 0 0
eca_metatag 0 0 2 223 0 0
varbase_components 0 0 2 220 0 0
field_widget_actions 0 0 2 213 0 0
masquerade_field 0 0 2 209 0 0
views_organization_chart 0 0 2 207 0 0
admin_toolbar_messages 0 0 2 200 0 2
varnish_file_purge 0 0 2 188 0 0
meta_conversions_api 0 0 2 185 0 0
pager 0 0 2 184 0 0
ai_context 0 0 2 180 0 2
printjs 0 0 2 179 0 0
protect_views_flood_control 0 0 2 168 0 0
complete_webform_exporter 0 0 2 162 0 0
parameters 1 0 0 159 1 0
speedboxes 0 0 2 156 0 0
custom_elements 0 0 2 155 0 0
pathauto_entity_parent 0 0 2 155 0 0
same_page_preview 0 0 2 155 0 0
config_track 2 0 0 153 1 0
document_loader 0 0 2 147 0 0
pwbi 0 0 2 139 0 0
swiffy_slider 0 0 2 127 0 0
track_usage 0 0 2 126 0 0
fileslog 0 0 2 123 0 0
image_styles_mapping 0 0 2 117 0 0
kraken 0 0 2 117 0 0
lb_plus 0 0 3 114 0 1
navigation_plus 0 0 4 112 0 0
domain_unique_path_alias 1 0 0 111 1 0
ws_event 0 0 2 111 0 0
search_api_typesense 0 0 2 108 0 0
webform_bootstrap 0 0 2 106 0 0
canvas_extjs 0 0 4 102 0 3
lupus_decoupled 0 0 2 102 0 0
viewer 0 0 2 101 0 0
file_visibility 0 0 4 100 0 2
lms 0 0 2 99 0 0
dkan_dataset_archiver 0 0 2 94 0 0
tripal 0 0 2 94 0 0
paragraph_block 0 0 2 88 0 0
unified_date 0 0 2 88 0 0
facets_range_input 0 0 2 84 0 0
fpdi_print 0 0 2 80 0 0
gleap 0 0 2 78 0 0
privacy_log 0 0 2 78 0 0
deindex_unpublished_files 0 0 2 75 0 0
configurable_anonymizer 0 0 2 73 0 0
pipewrench 0 0 2 73 0 0
logger 0 0 2 72 0 0
domain_extras 0 0 2 71 0 0
change_labels 0 0 2 70 0 2
contextual_image_widget_crop 0 0 2 70 0 0
canvas_bootstrap 0 0 2 69 0 1
json_table 0 0 2 69 0 0
webform_intl_tel_national_mode 0 0 2 68 0 0
gantt 0 0 2 67 0 0
entity_logger 0 0 2 66 0 0
views_mobile 0 0 2 63 0 0
multiple_email 0 0 2 60 0 0
qr_generator 0 0 2 60 0 0
logger_db 0 0 2 55 0 0
partial_datelist 0 0 2 55 0 0
datetime_reset 0 0 2 54 0 0
eca_views_data_export 0 0 2 54 0 0
openintranet_engagement 0 0 2 54 0 0
tmgmt_ec_etranslation 0 0 2 54 0 0
nodepermissions 0 0 2 51 0 0
bulk_term_delete 0 0 2 50 0 1
entity_vdts 0 0 2 49 0 0
primary_entity_reference 0 0 2 49 0 0
drulma_companion 0 0 2 48 0 0
frontend_routing 0 0 2 48 0 0
commerce_product_availability 0 0 2 47 0 0
crm 0 0 2 46 0 0
config_warning 0 0 2 45 0 0
paragraph_usage_dashboard 0 0 2 45 0 0
container_query_images 0 0 2 44 0 0
lms_certificate 0 0 2 44 0 0
token_browser 0 0 2 44 0 0
group_purl 0 0 2 42 0 0
meeting_api 0 0 2 41 0 0
renderviz 0 0 2 40 0 0
dropdown_pager 0 0 2 39 0 0
advanced_header_field 0 0 2 38 0 2
commerce_shipping_order_percentage 0 0 2 38 0 0
lms_h5p 0 0 2 38 0 0
prometheus_metrics 0 0 2 38 0 0
media_opengraph 0 0 2 37 0 0
image_404_fallback 0 0 2 36 0 0
ip_info 0 0 2 36 0 0
lms_file_upload 0 0 2 36 0 0
paragraph_group 0 0 4 36 0 0
database_ssl_check 0 0 2 35 0 0
field_redirect 0 0 2 35 0 0
trace_mail_log 0 0 2 35 0 0
redirect_regex 0 0 2 34 0 0
threejs 0 0 2 34 0 0
form_layout 0 0 3 33 0 1
localgov_publications_importer 0 0 2 33 0 0
alter_entity_autocomplete 0 0 2 32 0 1
paragraphs_tabs_bootstrap 0 0 2 32 0 0
webform_remote_fields 0 0 2 32 0 0
bootstrap_flag_icons 0 0 2 30 0 1
media_remote_hls 0 0 2 30 0 0
phoney 0 0 2 30 0 0
conductor 0 0 2 29 0 0
ajax_cart_update 0 0 4 28 0 1
exclusive_boolean 0 0 2 28 0 0
group_media_bulk_upload 0 0 2 28 0 0
unicode_soft_hyphens 0 0 2 28 0 0
ckeditor_media_edit 0 0 2 27 0 0
metadata_sanitizer 0 0 2 27 0 0
path_alias_view_access 0 0 2 27 0 0
patternkit 0 0 2 27 0 0
update_narf 0 0 2 27 0 0
views_themeable_text_area 0 0 2 27 0 0
better_taxonomy 0 0 2 26 0 2
content_filter 0 0 2 26 0 0
lms_membership_request 0 0 4 26 0 0
ocr_image 0 0 2 26 0 0
path_alias_views 0 0 2 26 0 0
simple_oauth_refresh_token_buffer 0 0 2 26 0 0
soundcite 0 0 2 26 0 0
advanced_message_subscription 0 0 2 24 0 1
cron_fail_alert 0 0 2 24 0 0
flowdrop_ai_provider 0 0 2 23 0 0
lms_messages 0 0 2 23 0 0
pwa_firebase 0 0 2 23 0 0
configurable_anonymizer_oidc 0 0 2 22 0 0
xnavigation 0 0 2 22 0 0
flowdrop 0 0 6 21 0 0
hal_publications 0 0 2 21 0 0
menu_link_content_view_access 0 0 2 21 0 0
vocabulary_clone 0 0 2 21 0 0
experience_builder 0 0 4 20 0 0
postoffice 0 0 2 20 0 0
tmgmt_laratranslate 0 0 4 20 0 0
dash 0 0 2 19 0 0
farm_crop_plan 0 0 2 19 0 0
screenshot 0 0 2 19 0 0
search_api_term_with_depth 0 0 2 19 0 0
work_time 0 0 2 19 0 0
action_link 0 0 2 18 0 3
log_cache_tags 0 0 2 18 0 0
select_a11y_ng 0 0 2 18 0 0
seo_urls 1 0 0 18 1 0
cas_user_ban 0 0 2 17 0 4
login_monitor 0 0 2 17 0 0
reading_progress_bar 0 0 2 17 0 0
teamleader 0 0 2 17 0 0
block_content_type_visibility 0 0 2 16 0 1
date_point 0 0 2 16 0 0
gifplayer 0 0 2 16 0 0
librejs 0 0 2 16 0 0
loginnotification 0 0 2 15 0 0
page_analytics 0 0 2 15 0 0
string 0 0 4 15 0 0
swagger_php 0 0 2 15 0 0
entity_to_text 0 0 2 14 0 0
olivero_dark_switch 0 0 2 14 0 0
workflow_participants 0 0 4 14 0 0
entity_attributes 0 0 2 13 0 0
leaflet_dynamic_table 0 0 2 13 0 0
media_scroller 0 0 2 13 0 0
metatag_paths 0 0 2 13 0 0
netforum 0 0 2 13 0 0
require_revision 0 0 2 13 0 0
workspaces_access 0 0 4 13 0 0
advancedqueue_mail 0 0 2 12 0 1
api 0 0 2 12 0 1
jqcloud 0 0 2 12 0 0
quick_data 0 0 2 12 0 0
rocketship_theme_starter 0 0 2 12 0 0
translation_bliss 0 0 3 12 0 1
coveo 0 0 4 11 0 0
media_default_image 0 0 2 11 0 0
search_api_autocomplete_improved 0 0 2 11 0 0
ai_webform_guard 0 0 2 10 0 2
eaf 0 0 2 10 0 0
local_taskbar 0 0 2 10 0 0
user_dashboard_bootstrap 0 0 2 10 0 0
content_toc 0 0 2 9 0 0
link_filebrowser 0 0 2 9 0 0
logged_in 0 0 2 9 0 0
postlight_parser 0 0 2 9 0 0
public_key_credential_source 0 0 2 9 0 0
cache_pilot 0 0 2 8 0 2
copyright_notice 0 0 2 8 0 0
easy_entity_field 0 0 4 8 0 0
farm_rcd 0 0 2 8 0 0
verify_email 0 0 4 8 0 0
config_pages_overrides 0 0 2 7 0 0
email_otp_login 0 0 2 7 0 0
farm_grazing_plan 0 0 2 7 0 0
flowdrop_agents 0 0 2 7 0 0
oauth_client 0 0 2 7 0 0
smileys_field 0 0 2 7 0 0
state_machine_automated_transition 0 0 4 7 0 0
steam_login 0 0 2 7 0 0
text_clarity_checker 0 0 2 7 0 0
whatsapp_in 0 0 2 7 0 0
color_picker_field 0 0 2 6 0 0
livre 0 0 2 6 0 0
search_api_sqlite 0 0 2 6 0 0
sequences 0 0 2 6 0 0
atd 0 0 2 5 0 1
htmx_extras 0 0 2 5 0 0
rcr 0 0 4 5 0 0
recaptcha_preloader 0 0 2 5 0 0
social_auth_account_verification 0 0 2 5 0 0
ai_provider_dxpr 0 0 2 4 0 1
ai_seo_link_advisor 0 0 2 4 0 1
bulk_update_user_roles 0 0 2 4 0 1
commerce_store_dashboard 0 0 2 4 0 0
content_moderation_tabs 0 0 2 4 0 0
inline_image_saver 0 0 2 4 0 0
paragraphs_gantt 0 0 2 4 0 0
quick_scroll 0 0 2 4 0 0
role_request 0 0 2 4 0 0
search_api_opensearch_semantic 0 0 2 4 0 0
user_email_preview 0 0 2 4 0 0
views_lazy_renderer 0 0 4 4 0 0
views_relationship_condition 0 0 2 4 0 0
entitygroupfield_lite 0 0 2 3 0 0
flowdrop_ui_agents 0 0 2 3 0 0
oembed_configuration 0 0 2 3 0 0
refreshless 0 0 2 3 0 0
search_api_field_datasource 0 0 4 3 0 0
views_area_library 0 0 2 3 0 0
views_exposed_form_mobile 0 0 2 3 0 0
bsky_post 0 0 2 2 0 1
dark_mode_user 0 0 2 2 0 0
diboo_core 0 0 2 2 0 0
entity_display_processor 0 0 2 2 0 0
false_account 0 0 2 2 0 0
group_inline_entity_form 0 0 2 2 0 0
pdf_reducer 0 0 2 2 0 0
presigned_url 0 0 2 2 0 0
site_settings_domain 0 0 2 2 0 0
tlsrpt 0 0 2 2 0 0
trash_manager 0 0 2 2 0 0
users_account_modal 0 0 2 2 0 0
webform_error_field 0 0 2 2 0 0
ai_document_ocr 0 0 2 1 0 2
altcolor 0 0 2 1 0 3
basic_ads 0 0 2 1 0 1
config_guardian 0 0 2 1 0 0
emporiqa 0 0 2 1 0 0
fillpdf_media 0 0 2 1 0 0
labor_time_tracker 0 0 2 1 0 0
rendered_entity_list_formatter 0 0 2 1 0 0
satis_hub 0 0 2 1 0 0
user_preference_login_redirect 0 0 2 1 0 0
views_permissions_strict 0 0 2 1 0 0
a12s 0 0 0 0 0 2
access_user_profiles_by_role 0 0 0 0 0 1
accessibility_statement 0 0 0 0 0 1
acquia_cms_audio 0 0 0 0 0 1
acquia_cms_document 0 0 0 0 0 1
acquia_cms_image 0 0 0 0 0 2
acquia_cms_video 0 0 0 0 0 1
affiliated 0 0 0 0 0 1
ai_agents_ossa 0 0 0 0 0 1
ai_claude_agent_sdk 0 0 0 0 0 1
ai_eca 0 0 0 0 0 1
ai_plus 0 0 0 0 0 5
ai_provider_litellm 0 0 0 0 0 1
ai_providers_api 0 0 0 0 0 1
ai_schema_markup_generator 0 0 0 0 0 1
ai_spam_protection 0 0 0 0 0 1
allowed_values_functions 0 0 0 0 0 1
api_normalization 0 0 0 0 0 1
audio_clips 0 0 0 0 0 1
audio_wavesurfer 0 0 0 0 0 3
auto_taxonomy_menu 0 0 0 0 0 1
autocomplete_extras 0 0 0 0 0 1
babel 0 0 0 0 0 7
bankid 0 0 0 0 0 1
basket 0 0 0 0 0 4
bbc 0 0 0 0 0 1
block_editor 0 0 0 0 0 4
body_roles_classes 0 0 0 0 0 1
book_moderation_sync 0 0 0 0 0 1
bootstrap_italia 0 0 0 0 0 1
botshield 0 0 0 0 0 1
bpmn_io 0 0 0 0 0 15
bulk_fields 0 0 0 0 0 1
bulk_paragraphs 0 0 0 0 0 1
canvas_ai_seo 0 0 0 0 0 1
canvas_entity_reference 0 0 0 0 0 1
canvas_override 0 0 0 0 0 1
cfo 0 0 0 0 0 2
komponent 0 0 0 0 0 1
menu_ui_async_widget 0 0 0 0 0 1
mposse 0 0 0 0 0 1
pdf_to_imagefield 0 0 0 0 0 1
plotly 0 0 2 0 0 0
scrape_to_field 0 0 2 0 0 0
straker_translate 0 0 2 0 0 0
views_conditional_text 0 0 2 0 0 0