← all change records
#3496491 Preprocess functions in modules now support object-oriented implementations
Generated 2026-06-03 14:00 UTC
Matching rules (4)
- from: 'core:hook:preprocess'
to: 'core:hook:preprocess'
- from: 'core:hook:preprocess_HOOK'
to: 'core:hook:preprocess_HOOK'
- to: \Drupal\Core\Hook\Attribute\LegacyHook
- kind: attribute_predicate
to:
arg: 0
any_of:
-
string_in:
- preprocess
-
string_starts_with:
- preprocess_
attribute_fqn: \Drupal\Core\Hook\Attribute\Hook
Affected contrib projects (111)
| Project | legacy | in_flight | migrated | installs | files | adopters | |
|---|---|---|---|---|---|---|---|
| views_bulk_operations ↗ | 0 | 0 | 1 | 162,628 | 0 | 0 | |
| scheduler ↗ | 0 | 1 | 0 | 103,900 | 1 | 1 | |
| bootstrap ↗ | 0 | 2 | 0 | 90,053 | 1 | 1 | |
| seven ↗ | 0 | 0 | 1 | 60,784 | 0 | 0 | |
| facets ↗ | 0 | 0 | 1 | 59,159 | 0 | 0 | |
| bootstrap_barrio ↗ | 0 | 1 | 0 | 41,855 | 1 | 1 | |
| menu_item_extras ↗ | 0 | 1 | 0 | 40,313 | 1 | 1 | |
| commerce ↗ | 0 | 0 | 1 | 38,572 | 0 | 0 | |
| exclude_node_title ↗ | 0 | 1 | 0 | 26,121 | 1 | 1 | |
| field_formatter_class ↗ | 0 | 1 | 0 | 21,205 | 1 | 1 | |
| eca ↗ | 0 | 0 | 2 | 17,304 | 0 | 0 | |
| commerce_shipping ↗ | 0 | 0 | 1 | 16,132 | 0 | 0 | |
| ai ↗ | 0 | 0 | 3 | 15,430 | 0 | 0 | |
| sam ↗ | 0 | 1 | 0 | 11,980 | 1 | 1 | |
| domain ↗ | 0 | 0 | 1 | 11,889 | 0 | 0 | |
| hook_event_dispatcher ↗ | 0 | 1 | 0 | 10,587 | 1 | 1 | |
| radix ↗ | 0 | 1 | 0 | 10,201 | 2 | 2 | |
| layout_builder_iframe_modal ↗ | 0 | 0 | 1 | 8,171 | 0 | 0 | |
| moderation_dashboard ↗ | 0 | 0 | 1 | 7,180 | 0 | 0 | |
| poll ↗ | 0 | 0 | 1 | 6,885 | 0 | 0 | |
| site_settings ↗ | 0 | 1 | 0 | 5,869 | 1 | 1 | |
| canvas ↗ | 0 | 0 | 1 | 5,503 | 0 | 0 | |
| toc_js ↗ | 0 | 0 | 1 | 4,471 | 0 | 0 | |
| animated_gif ↗ | 0 | 0 | 1 | 4,467 | 0 | 0 | |
| twigsuggest ↗ | 0 | 1 | 0 | 4,454 | 1 | 1 | |
| menu_item_fields ↗ | 0 | 0 | 1 | 4,440 | 0 | 0 | |
| nomarkup ↗ | 0 | 1 | 0 | 3,871 | 1 | 1 | |
| mercury ↗ | 0 | 0 | 1 | 3,439 | 0 | 0 | |
| byte_theme ↗ | 0 | 0 | 1 | 3,169 | 0 | 0 | |
| registration ↗ | 0 | 0 | 1 | 3,036 | 0 | 0 | |
| privatemsg ↗ | 0 | 0 | 1 | 2,714 | 0 | 0 | |
| bootstrap_italia ↗ | 0 | 3 | 0 | 2,677 | 1 | 1 | |
| custom_field ↗ | 0 | 0 | 1 | 2,601 | 0 | 0 | |
| snowball_stemmer ↗ | 0 | 1 | 0 | 2,510 | 1 | 1 | |
| zeropoint ↗ | 0 | 1 | 0 | 1,938 | 1 | 1 | |
| status_messages ↗ | 0 | 1 | 0 | 1,936 | 1 | 1 | |
| uswds_base ↗ | 0 | 3 | 0 | 1,781 | 2 | 2 | |
| frontend_editing ↗ | 0 | 1 | 0 | 1,578 | 1 | 1 | |
| helper ↗ | 0 | 0 | 1 | 1,522 | 0 | 0 | |
| smart_title ↗ | 0 | 1 | 0 | 1,510 | 1 | 1 | |
| mercury_editor ↗ | 0 | 3 | 0 | 1,406 | 1 | 1 | |
| typed_entity ↗ | 0 | 1 | 0 | 1,385 | 1 | 1 | |
| socialfeed ↗ | 0 | 1 | 0 | 968 | 1 | 1 | |
| porterstemmer ↗ | 0 | 1 | 0 | 805 | 1 | 1 | |
| uswds ↗ | 0 | 1 | 0 | 662 | 2 | 2 | |
| ui_suite_bootstrap ↗ | 0 | 0 | 1 | 457 | 0 | 0 | |
| entity_access_password ↗ | 0 | 0 | 1 | 436 | 0 | 0 | |
| webform_booking ↗ | 0 | 1 | 0 | 413 | 1 | 1 | |
| menu_tree ↗ | 0 | 0 | 1 | 380 | 0 | 0 | |
| eca_helper ↗ | 0 | 2 | 0 | 366 | 1 | 1 | |
| localgov_alert_banner ↗ | 0 | 1 | 0 | 350 | 1 | 1 | |
| block_content_suggestions ↗ | 0 | 0 | 1 | 344 | 0 | 0 | |
| style_selector ↗ | 0 | 2 | 0 | 339 | 1 | 1 | |
| term_glossary ↗ | 0 | 0 | 1 | 305 | 0 | 0 | |
| abc ↗ | 0 | 1 | 0 | 249 | 1 | 1 | |
| bootstrap5_admin ↗ | 0 | 0 | 1 | 248 | 0 | 0 | |
| modeler ↗ | 0 | 0 | 1 | 240 | 0 | 0 | |
| varbase_components ↗ | 0 | 1 | 1 | 220 | 1 | 1 | |
| pager ↗ | 0 | 0 | 1 | 184 | 0 | 0 | |
| black_hole ↗ | 0 | 1 | 0 | 183 | 1 | 1 | |
| dsfr ↗ | 0 | 1 | 0 | 174 | 1 | 1 | |
| guswds ↗ | 0 | 1 | 0 | 161 | 1 | 1 | |
| same_page_preview ↗ | 0 | 0 | 1 | 155 | 0 | 0 | |
| swiffy_slider ↗ | 0 | 0 | 1 | 127 | 0 | 0 | |
| rocketship_core ↗ | 0 | 5 | 0 | 122 | 1 | 1 | |
| vartheme_bs5 ↗ | 0 | 2 | 0 | 117 | 1 | 1 | |
| viewer ↗ | 0 | 1 | 1 | 101 | 1 | 1 | |
| tripal ↗ | 0 | 0 | 1 | 94 | 0 | 0 | |
| dsfr4drupal ↗ | 0 | 1 | 0 | 83 | 1 | 1 | |
| govuk_theme ↗ | 0 | 2 | 0 | 77 | 1 | 1 | |
| synpay ↗ | 0 | 1 | 0 | 67 | 1 | 1 | |
| qr_generator ↗ | 0 | 0 | 1 | 60 | 0 | 0 | |
| nys_unav ↗ | 0 | 1 | 0 | 53 | 1 | 1 | |
| gesso ↗ | 0 | 1 | 0 | 48 | 1 | 1 | |
| sector_theme ↗ | 0 | 1 | 0 | 46 | 1 | 1 | |
| container_query_images ↗ | 0 | 0 | 1 | 44 | 0 | 0 | |
| syncart ↗ | 0 | 1 | 0 | 41 | 1 | 1 | |
| commerce_affirm ↗ | 0 | 1 | 0 | 40 | 1 | 1 | |
| dropdown_pager ↗ | 0 | 0 | 1 | 39 | 0 | 0 | |
| media_opengraph ↗ | 0 | 0 | 1 | 37 | 0 | 0 | |
| paragraph_group ↗ | 0 | 0 | 1 | 36 | 0 | 0 | |
| trace_mail_log ↗ | 0 | 0 | 1 | 35 | 0 | 0 | |
| glisseo ↗ | 0 | 1 | 0 | 34 | 1 | 1 | |
| redirect_regex ↗ | 0 | 0 | 1 | 34 | 0 | 0 | |
| ui_suite_uswds ↗ | 0 | 2 | 0 | 33 | 2 | 2 | |
| bootstrap3 ↗ | 0 | 1 | 0 | 32 | 1 | 1 | |
| ajax_cart_update ↗ | 0 | 0 | 2 | 28 | 0 | 0 | |
| better_taxonomy ↗ | 0 | 0 | 1 | 26 | 0 | 0 | |
| event_horizon ↗ | 0 | 1 | 0 | 26 | 1 | 1 | |
| soundcite ↗ | 0 | 0 | 1 | 26 | 0 | 0 | |
| io_builder ↗ | 0 | 1 | 0 | 24 | 1 | 1 | |
| bee_hotel ↗ | 0 | 2 | 0 | 23 | 2 | 2 | |
| hal_publications ↗ | 0 | 0 | 1 | 21 | 0 | 0 | |
| a12s ↗ | 0 | 1 | 0 | 19 | 1 | 1 | |
| entity_attributes ↗ | 0 | 0 | 1 | 13 | 0 | 0 | |
| leaflet_dynamic_table ↗ | 0 | 0 | 1 | 13 | 0 | 0 | |
| rocketship_theme_starter ↗ | 0 | 2 | 1 | 12 | 1 | 1 | |
| eaf ↗ | 0 | 0 | 1 | 10 | 0 | 0 | |
| sports_league ↗ | 0 | 1 | 0 | 9 | 1 | 1 | |
| farm_rcd ↗ | 0 | 0 | 1 | 8 | 0 | 0 | |
| bootstrap_sass_starter_kit ↗ | 0 | 1 | 0 | 7 | 1 | 1 | |
| quick_scroll ↗ | 0 | 0 | 1 | 4 | 0 | 0 | |
| views_lazy_renderer ↗ | 0 | 0 | 1 | 4 | 0 | 0 | |
| commerce_civicrm_event_registration ↗ | 0 | 1 | 0 | 3 | 1 | 1 | |
| library_renderer ↗ | 0 | 1 | 0 | 3 | 1 | 1 | |
| diboo_core ↗ | 0 | 0 | 1 | 2 | 0 | 0 | |
| improvements ↗ | 0 | 2 | 0 | 2 | 1 | 1 | |
| webform_error_field ↗ | 0 | 0 | 1 | 2 | 0 | 0 | |
| altcolor ↗ | 0 | 1 | 1 | 1 | 1 | 1 | |
| satis_hub ↗ | 0 | 0 | 1 | 1 | 0 | 0 | |
| heading_style ↗ | 0 | 1 | 0 | 0 | 1 | 1 |