Install
To start a new Drupal project with version 12.0.0-alpha1@alpha:To update your site and all dependencies to the latest version of Drupal:
To update your site to this specific release:
Using Composer to manage Drupal site dependencies
Downloads
Release notes
This is an alpha release for the next major version of Drupal. This alpha release is intended for module or theme authors to begin testing whether their code is compatible with significant dependency changes in Drupal 12.0.x. Drupal 12 alpha releases should not be used in production. No upgrade path will be provided between Drupal 12 alpha releases or to Drupal 12.0.0-beta1.
Modules and themes may be moved to contrib for 12.0.0-beta1
The Search and Toolbar modules and the Claro and Olivero themes are proposed for removal in Drupal 12, but have not been removed in alpha1.
HTMX will be upgraded to version 4 for 12.0.0-beta1
HTMX is currently on v2, but v4 was recently released and will be included in Drupal 12.
Most other breaking changes have already been committed to Drupal 12.
For more information on 12.0.x development, see [12.x] [meta] Release Drupal 12 in 2026.
12.0.x will be nearly identical to 11.5.x except for the following:
- Deprecated code will be removed, including entire deprecated modules.
- Dependencies will be updated to new major versions as appropriate.
- System requirements are updated.
For all other changes, refer to the 11.5.x branch.
Sites should update to the latest release of 11.4 or 11.5 prior to updating to Drupal 12
Drupal sites running 11.3.x or earlier versions must first update to 11.4.0 or later prior to updating to Drupal 12, because all core updates added prior to 11.4.0 have been removed. In general, sites should update to the most recent release of their current major branch before updating to the next major release and we very strongly recommend updating to 11.5.0 or higher before updating to Drupal 12.
Important update information
Platform requirements changes
PHP requirements
- Drupal 12 requires PHP 8.5.
- The default password hashing algorithm was switched to argon2id in Drupal 12. For the rare case where this is not desirable - or argon2 is not available - it can be switched to the PHP default algorithm (bcrypt) using kernel parameters.
Database requirements
The requirements for the database drivers supported by Drupal 12 are:
- The MySQL database driver requires MySQL 8.0.
- The MariaDB database driver requires MariaDB 10.11.
- The PostgreSQL database driver requires PostgreSQL 19.
- The SQLite database driver requires SQLite 3.45 with the json1 extension.
Web server
See the web server support policy for more information.
Browser support changes
See the browser support policy for more information.
Windows production environment
Support for hosting Drupal directly on Windows in production environments is deprecated. Windows is not a well supported environment, we do not have an automated Windows test environment and there are few developers who can test on Windows. Therefore, sites wanting to use Windows servers in production should plan to use Linux on Windows.
Support for Windows in development environments will continue.
The database upgrade path from releases prior to 11.4.0 has been removed
Database updates added prior to Drupal 11.4.0 have been removed from Drupal 12.0.x. To update to Drupal 12 sites must update to Drupal 11.4 or higher. We recommend updating to the most recent core 11.x release, as well as updating all of your contributed modules to their latest releases, prior to updating to Drupal 12.
Migrate Drupal and Migrate Drupal UI have been removed from core and not moved to a contributed project
Sites can continue to migrate from Drupal 6 or Drupal 7 to Drupal 11, and then update from Drupal 11 to Drupal 12 using the usual update process. Drupal 6 reached end of life in February 2016 and Drupal 7 reached end of life on January 2025.
The Migrate API remains in core.
Changes to site-owner-managed files
The robots.txt file now blocks search result pages with query parameters from being crawled by search engines. This caused search engines to index dynamically generated search results and crawl infinite combinations of faceted search pages, degrading site performance and SEO quality.
Site owners who have customized their robots.txt file should add the following rules to their robots.txt file.
Disallow: /search? Disallow: /index.php/search?
Multiple core extensions have been removed from core and moved to contributed projects
Numerous modules and themes have been removed from Drupal core and moved to contributed projects. In many cases, the removed extensions have little to no impact on site development.
Sites should check their installed modules against the following list, and either uninstall the extension or require the contributed version prior to upgrading to Drupal 12. If a removed extension is required for a site's functionality, the contributed version should be added to the Composer requirements prior to upgrading. Do not uninstall the extension, since this would destroy the extension configuration.
Drush may bypass warning and error messages on update.php related to missing extensions. The status report will display errors about missing extensions after upgrading.
Dependency updates
- Symfony is updated to 8.1.
- Guzzle is updated to 8.0.
- PHPUnit is updated to 12.5.
-
Support is removed for some older dependency versions:
- doctrine/lexer: 2
- egulias/email-validator: 3
- guzzlehttp/guzzle: 7
- guzzlehttp/psr7: 2
- justinrainbow/json-schema: 5
- micheh/phpcs-gitlab: 1
- sebastian/diff: 4, 5, and 6
More backend and frontend dependency changes may be made prior to beta1.