Drupal 11.0.0 发布
安装
要使用 11.0.0 版本启动一个新的 Drupal 项目:
composer create-project drupal/recommended-project:11.0.0 "install-dir"
要将您的网站和所有依赖项升级到 Drupal 的最新版本:
composer update "drupal/core-*" --with-all-dependencies
要将您的网站升级到此特定版本:
composer require drupal/core-recommended:11.0.0 drupal/core-composer-scaffold:11.0.0 drupal/core-project-message:11.0.0 --update-with-all-dependencies
固定到特定版本可能会使您将来升级网站更具挑战性,请参阅 composer 文档以管理固定版本
下载
下载 tar.gz 18.07 MB
下载 zip 30.42 MB
发布说明
这是新的 Drupal 11 主要版本的第一个受支持的版本,已准备好用于生产站点!了解有关 Drupal 11 和 Drupal 核心发布周期的更多信息。
Drupal 11.0.0 紧随 Drupal 10.3.0 版本之后发布。Drupal 10.3 具有 Drupal 11 的大部分新功能,但保留了通过 Drupal 10.3.0 版本添加的向后兼容层。网站必须先升级到 Drupal 10.3,然后才能升级到 Drupal 11。
如果您正在启动一个新的 Drupal 项目,您可以在 Drupal 10.3 和 11 之间进行选择,并且通常应尽可能选择 Drupal 11 以实现与未来版本的向前兼容性。
无论您现在选择哪个版本,新功能只会添加到 Drupal 11 的次要版本中。计划采用 Drupal 11,以便您可以轻松升级到 Drupal 11.1 及更高版本。
有关如何执行主要版本升级,请参阅升级 Drupal 指南。您的网站升级准备描述了您可以用于检查模块、主题和网站的 Drupal 11 兼容性的工具。
11.0.0 和 10.3.2(最新的 Drupal 10 版本)都包含所有最新的改进,并且它们具有相同的公共 API 和功能,除了一些边缘情况。这也意味着模块和主题可以同时与 Drupal 10 和 11 兼容!11.0.0 的关键变化包括:
已删除已弃用的代码,包括整个模块和主题。
已根据需要将依赖项升级到新的主要版本。
已更新平台要求(包括支持的 PHP 和数据库版本、Composer 要求和支持的浏览器)。
对于所有其他更改,请参阅 10.3.x 分支。
重要更新信息
网站必须先升级到 10.3 的最新版本,然后才能升级到 Drupal 11
运行 10.2 或更早版本的 Drupal 网站必须先升级到 10.3.0 或更高版本,然后才能升级到 Drupal 11。10.3.0 之前添加的所有核心更新已被删除。一般来说,网站应将核心和贡献的模块升级到其当前主要核心版本可用的最新版本,然后再升级到下一个主要版本。
已添加新的 API 以支持跨主要和次要版本的数据库更新的回传。这主要影响核心开发,但也可能需要用于贡献的项目(因为核心将同时支持两个主要版本)。
对站点所有者管理的文件的更改
默认的<.htaccess>文件已更改,以删除对 Statistics 模块的支持,该模块已移至贡献模块。贡献项目现在提供自己的 htaccess 保护。站点应确保从其自己的文件副本中删除冗余的.htaccess 规则。
平台要求更改
PHP 要求
- Drupal 11 需要PHP 8.3 而且启用 zlib 扩展的。大多数系统默认情况下已经启用了此扩展。
数据库要求
- MySQL 数据库驱动程序需要 MySQL 8.0。
- MariaDB 数据库驱动程序需要 MariaDB 10.6。
- PostgreSQL 数据库驱动程序需要 PostgreSQL 16。
- SQLite 数据库驱动程序需要 SQLite 3.45 并带有 json1 扩展。
Web 服务器
已删除对 IIS 的支持。鼓励使用 IIS 的站点更改到支持的 Web 服务器。Drupal 11 不提供<web.config>文件。我们鼓励针对可能影响除 IIS 之外的 Web 服务器的问题提交错误报告。
浏览器支持更改
有关更多信息,请参阅浏览器支持策略。
已删除的功能
以下页面已被删除且没有替代:
- 位于/admin/modules/install 的“添加新模块”页面
- 位于/admin/theme/install 的“添加新主题”页面
- 位于/admin/reports/updates/install 的“添加新模块或主题”页面
使用 Composer 是将新代码安全正确地添加到 Drupal 安装的唯一方法。请参阅:通过用户界面安装扩展的其他信息、弃用和 API 更改。
多个核心模块已从核心中删除并移至贡献项目
许多模块和主题已从 Drupal 核心中删除并移至贡献项目。在许多情况下,删除的扩展对站点开发几乎没有影响。
站点应根据以下列表检查其安装的模块,并在升级到 Drupal 11 之前卸载该模块或要求贡献的版本。如果站点功能需要删除的模块,则应在升级之前将贡献的版本下载到代码库或添加到 Composer 要求中。请勿卸载该模块,因为这会破坏模块配置。
Drush 可能会绕过与缺少模块或主题相关的 update.php 上的警告和错误消息。升级后,状态报告将显示有关缺少模块的错误。
后端(PHP)依赖项更改
新增的 PHP 依赖项
- 添加了对 doctrine/lexer 2.0 的依赖。以前,该依赖项作为 doctrine/annotations 的依赖项隐含。
- 已添加对<ext - zlib>的 Composer 依赖项。(此 PHP 扩展已经是 Drupal 的 PHP 配置所需的一部分,但以前,该依赖项未正确声明。)
更新的 PHP 依赖项
- Symfony 已升级到 7.1.1。
- Doctrine Annotations 已从 1.14.3 升级到 2.0.1。
- PHPUnit 已从 9.5 升级到 10.5。测试开发人员应参考 PHPUnit 10 兼容性所需的更改,以获取破坏性更改的摘要以及如何为 PHPUnit 10 升级测试的详细信息。
- Drupal 核心的 Composer 开发依赖项已更新到 Composer 2.7.7,解决了安全漏洞。建议 Drupal 站点所有者也使用 composer self - update 升级其本地 Composer 版本。
- 许多其他依赖项已收到小版本和补丁版本的更新到最新版本。
- Twig 已从 3.5.0 升级到 3.9.3。如果您有扩展 Twig 的自定义代码,则应阅读 Twig v3.9.0 更改日志,因为有新的弃用。
前端(CSS 和 JavaScript)依赖项更改
删除的前端依赖项
- Shepherd.js 已作为依赖项删除。Shepherd 库仅由已从核心中删除的 Tour 模块使用。
- jQuery Form 已作为外部依赖项删除。jQuery Form 现在已分叉到核心中,因为它在上游已被放弃。它被标记为@internal,不应被贡献或自定义模块直接使用。
更新的前端依赖项
- CKEditor 已更新到 CKEditor 5 v42.0.2。如果您从 10.2.x 或更早版本升级,并且安装了 CKEditor 字体模块或其他因此次升级而中断的 CKEditor 扩展,请考虑切换到 CKEditor5 Plugin pack。CKEditor5 Plugin pack 提供了与 Drupal 核心随附的 CKEditor 版本更兼容的更新插件版本。
- jQuery 4 已更新到 4.0.0 - beta2。如果您有扩展 jQuery 的自定义代码,则应阅读更改日志,因为有弃用。
- 一旦 jQuery 4.0.0 的稳定版本可用,Drupal 11 将更新到该版本。
- jQuery UI 已更新到 1.14 - beta.2。如果您有扩展 jQuery UI 的自定义代码,则应阅读更改日志。
- 一旦 jQuery UI 1.14.0 的稳定版本可用,Drupal 11 将更新到该版本。
- Yarn 4 和 Corepack 现在是 Drupal 核心开发所必需的。核心开发人员需要更新他们的环境以使用 Yarn 4 和 corepack。
- Drupal 核心开发现在需要 Node.js 20。
已知问题
Drupal 10 和 11 的 PHP 8.4 兼容性仍在开发中。11.1(或可能是 11.0 的补丁版本)将提供与 PHP 8.4 的完全兼容性。
备注:本文翻译自Drupal官网:https://www.drupal.org/project/drupal/releases/11.0.0 。