Drupal Coreのアップデート内容

前記事で、Drupal Coreを10.3.5にアップデートしました。元々、10.3.3のアップデートから、短期間で10.3.4 > 10.3.5とアップデートするので、緊急アップデートと考え、内容を確認する際、Gitlabに記載されているコードを確認しました。アップデートを行う際に必ずしもコードによる変更の確認は必須ではないのですが、確認を行う事でよりDrupalに対する理解が深まります。

今回、10.3.5のアップデートが、10.3.3から10.3.4にアップデートした際にCasheCollectorクラスの初期化による競合の不具合を修正する目的で、10.3.4で修正した初期化を元のNullに戻しています。

10.3.3や10.3.4のアップデートが何を行ったのかが気になり、アップデートの内容が気になり調べてみたのでその内容を記事としてまとめてみます。

変更点が、アップデートのページに記載されているので、それを参考に調べてみます。

10.3.3が68件の変更、10.3.4が10件の変更、10.3.5が1件の変更となっています。

以下のアコーディオンメニューにそれぞれの変更点をまとめています。

10.3.3の変更内容を確認

68件の変更と多く、変更のIssueを見ても何を目的としての変更なのかが私の知識では理解しきれません。そこでGitHub Copilot先生にお願いします。質問がIssueとNoを入れずに回答をもらっていますので、アップデート内容に関わる議題の解説ではなく、質問である問題点に対する内容確認と対応策、コードの変更例、結論という一般的な答えが返って来ます。アップデートの変更内容が知りたいので、Copilotの回答を抜粋してコードを削除したものを解説で追加しています。この内容でも変更のIssueの意味はなんとなく理解出来ます。

アップデートした変更点の大半はテスト環境を整える変更となっています。その中で、処理速度に関わる変更点やエラー処理に関わる変更が多く、11.0がリリースされ、10.4のリリースを控えているので機能面の下位互換を意識したテスト環境を整えている内容が大半を占めているのかなというのが今回内容を確認してみた感想となります。

Drupalに限らず、CMSのCoreプログラムのアップデートによる変更内容とコードを全て確認したのは初めての事ですが、開発者の方は大変だなと感じる内容です。変更するPHP単体のコードだけを見ると、私でもなんとなく理解できるのですが、そのコード変更による多数リリースされているモジュールやテーマへの影響や、Drupal8などバージョン違いから10.0系へのアップデートの影響などを全て考慮している事や先にリリースする予定の機能なども考慮されていると考えると開発者の方に頭が下がります。

Gitlabに掲載されているコードは、私のような利用者だけでなく、モジュール開発者や、テーマの開発者などコントリビューターの方も閲覧し、互換や依存をテストする必要があるので、アップデートといっても、私自身が問題ないから大丈夫というものではないということが今回理解出来ました。

以下のアコーディオンメニューに、10.3.3で変更されたIssue、68件の変更内容を私自身が理解出来るようにまとめています。私自身の知識がそれほど高くなく内容の正確性は保証できませんので、閲覧する際、参考程度の閲覧とし判断は自己責任でお願いします。

10.3.4の変更内容を確認

10.3.3の内容確認が、CopilotにIssue Noを入れずに確認し、アップデートの確認といった内容の答えをもらえなかった反省から、10.3.4はIssue Noを入れて質問しています。10.3.3の解説より、アップデートが何を目的としているかは理解しやすいと思います。

そもそも、アップデートの内容を確認しようと考えたのが、アップデートが日を置かずに来たことが理由であります。10.3.4は10.3.3の変更で生じる不具合を直したり戻すために行ったアップデートかなというのが私の感想となります。一部StableからDevに戻す処理なども行っています。

10.3.5の変更内容を確認

10.3.5の変更は前記事で書いた10.3.4のUpDateで変更したCacheCollectorクラスでのnull $cidの修正を元に戻すアップデートとなっています。

前記事で書いていますので、簡単な説明となっています。

おわりに

今回初めて、Drupal Coreのアップデートで変更する内容を確認してみました。議題として上がっているIssueの解決策が多数アップデートで解決されています。drupal.orgのIssueで開発者の方がディスカッションしながら進め、Gitlabに具体的なコードを提示しているので、私自身がもう少し知識をつける事で理解が深まると感じています。

オープンソースの開発のルーティンのようなものも、なんとなく理解していたのですが、具体的な実例を自身が理解するために閲覧したのは初めての事で、理解が浅く記事を作成するのに予想外に時間がかかり自身の知識不足を痛感しました。

調べものをすることでDrupal公式サイトの見方や、Gitlabの見方も今回の件で少し理解出来た事も収穫となっています。Drupalを理解するために膨大な情報があり、これまでは、インストールやうまくいかない場合の調べ物でしか使っていなかったのですが世界中の開発者や利用者が公開している情報は貴重であり目を通す意義は大きく英語の情報がメインで億劫となりがちですが上手く活用できたらと考えています。

Drupal Coreも11.0系がリリースされており、11.0系の機能も、表面的でなくもう少し深く理解するきっかけが出来た事が今回の一番の収穫と考えています。

Civic Themeのレイアウト

Drupalのアップデートの記事を2回にわたり書いてしまい、Civic ThemeでWEBサイトを構築していく記事が止まっていますので次回から再開したいと考えています。記事などのページを構成する記事は進んでいますが、実際にヘッダーやサイドメニュー、フッターがないとページとしては機能しません。ヘッダーやフッター、サイドメニューやナビゲーションメニューを構成していくレイアウトについて次回以降まとめて行きたいと考えています。

※2024年9月15日時点で書いた記事ですが、サブテーマの使用を前提に移転を検討していたため記事の更新が止まっていました。2024年12月にXserverビジネススタンダードのプランで用意されるNode.jsの制限に左右されない方法でCivic Themeのサブテーマの使用が可能になったので以降記事の再開をしていきたいと考えています。

次項はCivic Themeが1.8.2 > 1.9.0にアップデートされましたので、Civic Themeのアップデートについてまとめます。

Drupalの記事

関連するDrupalでWEBサイトを構築する為の環境構築の記事やDrupalについて書いた記事になります。

記事は全てナンバリングしています。Drupalを初めて使う為の準備から始まる最初の記事から読む事もできます。

環境構築

DrupalやCivic Themeの設定やインストール、Local環境の構築やサーバーへのインストールなど環境構築やエラーの対応に関わる記事をまとめています。
  • Drupal記事まとめ
  • 環境構築

Drupal記事

Drupalについて記事を書いています。このWEBサイトを構築していく上でのトピックになります。プログラミングやソースコードなどエンジニア的な記事ではなく、プログラミング経験がない個人がDrupalでパーソナルなWEBサイトを構築するという観点での記事になります。
  • Drupal記事まとめ

最新の記事

Drupalについて書いた最新の記事になります。

#D32 Drupal 10.4.0

Drupal Coreが10.3xから10.4xにアップデートされましたので当サイトも早速アップデートします。
  • Civic Theme
  • Drupalの記事

#D31 Civic Theme Sub Theme

Node.jsのバージョン制限の問題でインストールしていなかったサブテーマをインストールして、サブテーマでの運営に切り替えます。
  • Drupalの記事
  • Civic Theme

#D30 Civic Theme 1.9.0 UpDate

Civic Themeのアップデートの通知が来ていましたので1.8.2から1.9.0にアップデートしました。3月程度のブランクながら1.8x > 1.9xなので様子をみようと考えたのですが、改善点も多いので早速アップデートを行いました。
  • Drupalの記事
  • Civic Theme

#D28 DrupalのUpDate 24/09/11

先日、Drupalのアップデートをしたのですが、あまり日を置かず、10.3.3 > 10.3.4の案内が来ていたので早速アップデートをしました。さらに10.3.4 > 10.3.5の案内も来ていたのでアップデートを行うと共に、アップデート内容の確認をしてみます。
  • Drupalの記事
  • 環境構築

Life Styleの記事

Drupalとは関係ないのですがLife Styleの記事も書いていますのでよろしければ購読ください。

Life Style記事

ライフスタイルの記事になります。Drupalに触れる目的でこのWEBサイトを立ち上げています。元はWord Pressで作成した記事をこちらのWEBサイトに再構築しています。Word Pressも学習目的で利用したのですが記事をしっかり作る事を目的としていたので、テーマに興味があればそれなりに楽しめると思います。
  • Life Style記事まとめ
  • Drupalの記事
  • 環境構築