Drupal 10 will end support in December 2026, what needs to be confirmed before upgrading
Drupal 10 will end support in December 2026. What needs to be confirmed before upgrading? According to the official schedule confirmed on the day, the lifecycle of Drupal 10 ends on December 9, 2026, and no new core versions will be produced thereafter. This means that security announcements and patch chains will be closed together, and the site will continue to run on code that is not maintained. There are four confirmation items before upgrading or migrating: compatibility matrix of extensions, content and structure mapping, backup and rollback points, and deployment form.
The change in end of support affects the risk responsibility.
During the support period, the vulnerabilities in the core and PHP runtime are fixed by the upstream, and the site operations follow suit; after the deadline, if the same vulnerability is disclosed again, there is no corresponding patch, and the mitigation measures are only limited to throttling, module offline, and virtual patches of this kind of peripheral measures.
Therefore, this date is not a signal for 'scheduled upgrade', but a signal to 'build rollback capability first'. A common mistake of small and medium-sized teams is to start the upgrade first, then find that there is no rollback backup, and finally choose between two bad states.
First group confirmation: extension and theme compatibility
The impact of major version jumps is not mainly on the core code, but on third-party extensions, themes, and custom modules. The evaluation method is to list the currently enabled extensions of the site, check one by one whether there is a corresponding release on the target version, and mark three types of results: existing compatible versions, only development branches, and no one to maintain.
The part of the list that does not correspond to the version determines the nature of this change: if the proportion is small, it can be handled as an upgrade; if the proportion is large, it must be handled as a migration, because equivalent functions need to be re-implemented on the target system.
The second group of confirmations: content and structure mapping
Drupal's fields and content types have their own model. When migrating to another system, the real cost lies in the structure mapping rather than the text transfer. AnQiCMS uses a custom content model to describe different content types, separating the text from the custom fields. When implemented, it usually corresponds to the 'content type plus field' layer. It is necessary to confirm three types of boundary data first: the organization method of categories and tags, the reference path of attachments and images, and the URL form.
There are two channels available for batch import: ZIP archive import is suitable for moving text and resources together, Excel table import is suitable for structured fields in a list-type content. The URL format needs to be handled separately, old addresses cannot be abandoned, otherwise the accumulated external links and in-site references will become invalid together. This step uses 301 redirect and site map regeneration to close the deal.
Third group confirmation: backup and rollback point
The rollback point must meet two conditions: it must be able to restore the entire site within half an hour, and the content does not need to be rebuilt after the recovery. AnQiCMS's backup covering data and static files exactly meet this requirement—the most common cause of upgrade failure is that the content is still there, but the template and upload directory are not aligned.
For the site matrix of multi-site management, each rollback point must be confirmed individually, and sites sharing the same database instance are particularly dangerous: a single mistake can affect multiple sites at once, and the rollback granularity must be able to recover separately per site.
Fourth group confirmation: whether the deployment form has changed accordingly.
Major version upgrades often come with changes in PHP runtime version requirements, which will turn 'content upgrade' into 'runtime plus content upgrade', doubling the verification surface. Compare with another form: systems developed in Go language integrate the runtime into the build artifacts, AnQiCMS deployment is a binary plus site directory, can be deployed with a Docker image anqicms/anqicms or a one-click deployment through Baota panel, default listening on port 8001, accessed by reverse proxy, and only need to replace the program and restore the data when changed.
This does not mean that this form does not need to be upgraded, but rather that the items have been reduced from two categories to one, with a shorter rollback path.
Common questions
Question: Can the site continue to run after the deadline?Answer: It can run, and the risk is no longer covered by the upstream. Sites that continue to be used should reduce their exposure to necessary functions, close the entrances of unused modules, and increase the frequency of data backup and login audit checks.
Question: How do we determine whether to upgrade to a new version or switch systems?Answer: Look at the results of the first list. If compatible versions are available, proceed with the upgrade; if many functions need to be re-implemented, proceed with the migration; what determines the cost is the structure and expansion, not the number of text entries.
How to schedule the migration window safely?First, do a full-scale rehearsal and verify the number of items and attachments, then switch officially during the off-peak period, verify the jump targets of the old addresses one by one after the switch, finally regenerate the site map and submit it, and avoid traffic and collection being disconnected during the switch period.