This is a release candidate for the next minor version (feature release) of Drupal 11. Release candidates are not supported for production sites, but they are intended for widespread testing in preparation for the upcoming stable release. More information on release candidates.
This minor release provides improvements and new functionality. It does not not break backward compatibility (BC) for public APIs. There may be changes in internal APIs and experimental modules. If so, contributed and custom modules and themes may need updating. This is according to Drupal core's backward compatibility and experimental module policies.
This release may include string changes and additions. Translators can review the latest translation status on localize.drupal.org.
Drupal 11.1.x contains new features, and should be the target for new site development. Drupal 11.0.x will continue to have security support until June 2024.
Drupal 11 will be supported until the release of Drupal 13.
All changes since Drupal 11.1.0-beta1
- Issue #3490710 by mfb: Catch potential exception when calling Request::create() in PathBasedBreadcrumbBuilder
- Issue #3478224 by plopesc, m4olivei, penyaskito, dmitry.korhov, phenaproxima: Provide Config Action to add new blocks to navigation from recipes
- Issue #3368857 by ultimike, nico059, mattlc, akulsaxena, anand48, jacobupal, smustgrave, kim.pepper, ankitv18, drubolbol: Remove duplication from FileTestForm and FileTestSaveUploadFromForm
- Issue #3490570 by nexusnovaz, mstrelan, nicxvan: Add array return to all hook_views_data and hook_field_views_data implementations
- Issue #3490638 by tstoeckler, smustgrave: Add return types to update_test_* hooks
- Issue #3490507 by alexpott, smustgrave: Fix bogus mocking in \Drupal\Tests\Core\Update\UpdateRegistryTest
- Issue #3278759 by mxr576, kristiaanvandeneynde, acbramley, danflanagan8, larowlan, bbrala: Access cacheability is not correct when "view own unpublished content" is in use
- Issue #3471494 by catch: follow-up commit to remove icon with special characters that are too special for windows filesystems.
- Issue #3471494 by mogtofu33, catch, pdureau, nod_, larowlan, andypost, mxh, grimreaper, ckrina, quietone: Add an icon management API
- Issue #3484365 by nexusnovaz, joachim: docs for EntityTypeInterface::getBundleOf() should say entity type *id*
- Issue #3484799 by vladimiraus: EntityAccessCheck documentation contains errors
- Issue #3486972 by catch, longwave, larowlan: DefaultExceptionHtmlSubscriber should not clone the request for 400/BadRequestException
- Issue #3490493 by catch, dww, baysaa, jhodgdon, daffie: Test profiles should be in a tests directory
- Issue #3465827 by andypost, kim.pepper, arunkumark, catch, berdir, quietone: Stop passing E_USER_ERROR to trigger_error() on PHP 8.4
- Issue #3473374 by mxr576, bbrala, kristiaanvandeneynde: Improve Dynamic Page Cache header assertions in JSON:API tests
- Issue #3489900 by nicxvan: Fix reference to hook_library_info_build
- Issue #3489776 by mstrelan, nicxvan: Add void return to all pageAttachments, pageTop and pageBottom hook implementations
- Issue #3478621 by catch, nicxvan, longwave, alexpott: Add filecache to OOP hook attribute parsing
- Issue #3229647 by rpayanm, kentr, xjm, gauravvvv, mherchel, mgifford, lauriii: Use focus-within in hidden.module.css
- Revert "Issue #3478621 by catch, nicxvan, longwave: Add filecache to OOP hook attribute parsing"
- Issue #3488365 by andypost: Upgrade twig/twig to 3.15.0
- Issue #3478621 by catch, nicxvan, longwave: Add filecache to OOP hook attribute parsing
- Issue #3489329 by mfb, casey: symfony/http-foundation commit 32310ff breaks PathValidator
- Issue #3489915 by phenaproxima: RecipeInputFormTrait forces you to check all checkboxes
- Issue #3484564 by plopesc, finnsky, m4olivei, ckrina, catch, larowlan: Define the 3 areas the Top Bar will provide
- Issue #3471490 by nayana_mvr, smustgrave, larowlan: field:not(:last-child) does not work with layout builder in olivero
- Issue #3487816 by catch, berdir, smustgrave, quietone: Ensure tests don't run twice
- Issue #3483353 by a.dmitriiev, phenaproxima, atul_ghate, alexpott, roderik: Remove the createCopy action from EntityDisplayBase, and make cloneAs compatible with wildcards
- Issue #3487908 by spokje, smustgrave: Update cspell to latest
- Issue #3467309 by spokje, smustgrave: Replace abandoned, not working with latest stylelint, leon0399/stylelint-formatter-gitlab with gitlab-formatters/stylelint-formatter-gitlab
- Issue #3488768 by plopesc, m4olivei, atul_ghate: Menu blocks specific to Navigation are leaking into the Block layout UI
- Issue #3486526 by theodorejb, andypost, nicxvan: Inconsistent switch case syntax
- Issue #3487921 by chandansha, joachim: incorrect docs for MenuLinkFieldDefinitions
- Issue #2982582 by arunkumark, nexusnovaz, anish.a, avpaderno, smustgrave, joachim, godotislate, larowlan, cburschka: hook_requirements() doesn't say that severity is optional, or what the default is
- Issue #2969406 by bhanu951, robincs, quietone, ranjit1032002, sahil.goyal, urvashi_vora, opdavies, elber, aaronmchale, avpaderno, smustgrave, alberto56, cilefen, benjifisher, lauriii, larowlan, Mahima_Mathur23, nkoporec, borisson_, poker10: Fix incorrect message after resetting password
- Issue #3488742 by catch, phenaproxima, gábor hojtsy: Stop calling node_add_body_field() from NodeTypeForm
- Issue #3483576 by mondrake: Method getMockForAbstractClass() is deprecated - replace in classes EntityTypeTest and EntityTypeManagerTest
- Issue #3483577 by mondrake: Method getMockForAbstractClass() is deprecated - replace in class EntityFormTest
- Issue #3418136 by shalini_jha, smustgrave, rohit sankhla: Add last() function to ItemInterface/ItemList
- Issue #3488664 by phenaproxima: The PlaceBlock config action breaks when placing a block in an empty region
- Issue #3443833 by plopesc, m4olivei, gábor hojtsy, matthieuscarset, penyaskito, larowlan, tim.plunkett: Provide a way for other modules to flag block plugin implementations as 'navigation safe'
- Issue #3483435 by phenaproxima, alexpott, thejimbirch: Add a trait for forms that want to collect input on behalf of a recipe
- Issue #3488176 by nicxvan, godotislate: Convert system_theme to OOP and handle install time call
- Issue #3487971 by nicxvan, godotislate: Convert system_page_attachments to OOP
- Issue #3488401 by andypost: upgrade prophecy to 1.20
- Issue #3487031 by larowlan, alexpott, themodularlab, ericgsmith, longwave, spokje: Performance Degraded after update to twig 3.14.2
- SA-CORE-2024-007 by mcdruid, larowlan
- SA-CORE-2024-006 by mcdruid, larowlan
- SA-CORE-2024-004 by zengenuity, cilefen, kristiaanvandeneynde, mcdruid, larowlan
- SA-CORE-2024-003 by jrb, larowlan, catch, mingsong, poker10, longwave, benjifisher
- Issue #3487449 by tom konda: Prefer to replace some of typeof obj !== 'undefined' with optional chaining
- Issue #3487579 by spokje, smustgrave, catch, nod_: Bump ckeditor 43.1.1 => 43.3.1
- Issue #3106205 by jrglasgow, plopesc, jonathan1055, smustgrave, edmund.dunn, heddn, narendra.rajwar27, jamiehollern, joshua1234511, murilohp, jacob.embree, mayurjadhav, raman.b, voviko, sonnykt, catch, kristen pol, dspachos, longwave, fmb, quietone, xjm, larowlan, devad: Length of menu_tree.url and menu_tree.route_param_key are too short (255 characters)
- Issue #3477324 by andypost, alexpott: Fix usage of str_getcsv() and fgetcsv() for PHP 8.4
- Issue #2855328 by danflanagan8, sourabh.singhal, Pancho, aarti zikre, asad_ahmed, priscarabelli, anushrikumari, ashwinparmar, vikashsoni, cilefen, ideaseed, Archana.Phatangare, quietone, finex, alexpott, catch, smustgrave, sugaroverflow: Password and confirm password should be mandatory fields while setting up password using one time link following by email
- Issue #3488179 by phenaproxima, thejimbirch: RecipeConfigurator::getIncludedRecipe() should statically cache recipe objects to avoid performance problems
- Issue #3486741 by spokje, smustgrave, markconroy: CSS linting (stylelint): npx update-browserslist-db@latest
- Revert "Issue #3486972 by catch, longwave: DefaultExceptionHtmlSubscriber should not clone the request for 400/BadRequestException"
- Issue #3487665 by mstrelan, nicxvan: Add void return type to all hook_cron implementations
- Issue #3486972 by catch, longwave: DefaultExceptionHtmlSubscriber should not clone the request for 400/BadRequestException
- Issue #3487579 by spokje, smustgrave: Bump ckeditor 43.1.1 => 43.3.1
- Issue #3484349 by amateescu: Add missing @return types for StringTranslationTrait::formatPlural() and ::getNumberOfPlurals()
- Issue #3410128 by quietone, longwave, nikolay shapovalov, smustgrave: Remove remaining unnecessary uses of t() in tests
- Issue #3422977 follow-up by alexpott: Rename locale batch operation callbacks to match the API methods they call
- Issue #3422977 by secretsayan, traviscarden, nexusnovaz, joachim, smustgrave, xjm, catch: Rename locale batch operation callbacks to match the API methods they call
- Revert "Issue #3405277 by scott_euser, anybody: Add vertical-align: top as default for table cells"
- Issue #3462973 by mattlc, ultimike, smustgrave, dww, larowlan, alexpott: Provide details of where core tests, not in core modules, should live
- Issue #3487666 by mstrelan, nicxvan: Add void return type to all *_alter hook implementations
- Issue #3483341 by mstrelan, smustgrave: Add array return type to all hook_schema implementations
- Issue #3487088 by lavanyatalwar, nicxvan: Fix trailing comma in entity type Attribute declarations
- Issue #3483299 by tstoeckler, mstrelan, nicxvan: Add void return type to all preprocess hook implementations
- Back to dev.