Movable Type 8.0.2 リリースノート
本日、Movable Type 8 (MT8) を正式リリースしました。
デベロッパープレビュー版ならびにRC版からの差分は、次のリンクをご覧ください。
Movable Type 8 のデベロッパープレビュー版とRC版からの差分
Movable Type 8 の目指すところ、概要をご説明します。
MT8で目指すところ
MT8 では、現行バージョンで取り入れた継続的なリリースを今後も継続していくために必要と思われることを行なっていきます。
- 定期的、漸進的なリリースを今後も継続する
- 安全性、互換性を重視し、最新版を利用しやすいようにしていく
このために Movable Type クラウド版を中心とした定期的なリリースを行います。OS、ミドルウェアのアップデートにも追従し、長期間、安定した利用ができるよう、廃止や変更予定の機能がわかりやすいよう、またアップデートに際して互換性を維持しやすい仕組みを提供します。
アップデートの方針
- ソフトウェア版と AMI 版は1年ごと、クラウド版では 3カ月ごとにリリースを行います。重大なバグやセキュリティに関する修正はソフトウェア版にも適宜提供されます。
- 互換性に関わる機能変更や廃止は、ソフトウェア版のリリースタイミングで実施します。
- 互換性が大きく崩れるようなアップデートや 大幅なユーザーインターフェイスの変更は予定していません。
- 機能追加や機能改善は、互換性が確保できるものは3カ月に1度のクラウド版のリリースで随時提供します。
- 運用面を含めたセキュリティ対策に配慮しつつ、ライブラリや CPAN モジュールを含めて、積極的にアップデートします。
新機能・改善した機能
継続的に使っていただける内部的な改善も多く行っていますが、新機能・改善も行っています。
共有プレビュー機能
別途配布していた共有プレビュープラグインを同梱しました。公開前のコンテンツの事前確認をスムーズに行うことができます。
共有プレビューでできること
- コンテンツデータ、記事、ウェブページに対応し、管理画面上のプレビューだけではなく、公開前に他の人に確認してもらえるプレビューページを生成
- コンテンツを編集して変更を保存後も再度同じURLで閲覧が可能
- パスワードも設定できるため安全に運用可能
MTブロックエディタ
別途配布していたMTBlockEditorプラグインを同梱しました。従来のブロックエディタ機能が有効の場合は「MTブロックエディタ」と表示されますが、従来のものを無効にすると「ブロックエディタ」と表示されます。
MTブロックエディタについて
- コンテンツタイプのテキスト(複数行)、記事、ウェブページで利用可能
- ブロックを追加する形でコンテンツを作成できる
- カスタムブロックという独自のブロックを管理画面から追加可能
- プリセットを作成し、利用するブロックの表示設定も可能
詳しくはドキュメントをご覧ください。
MTブロックエディタ | CMSプラットフォーム Movable Type ドキュメントサイト
管理画面の多要素認証機能
別途配布していた管理画面の多要素認証プラグインを同梱しました。 Movable Type の管理画面のサインインで多要素認証を行うことができます。 現在は TOTP (Time-based One Time Password) による2要素認証に対応しています。
サポートするデバイスとアプリ
2要素認証を利用するには TOTP に対応した認証コードの生成アプリケーション (認証アプリ) が必要です。次のアプリで動作を確認しています。
- Google Authenticator ( iOS版 / Android版 )
- Twilio Authy ( iOS版 / Android版 )
- Microsoft Authenticator ( iOS版 / Android版 )
- 2FA Authenticator (2FAS) ( iOS版 / Android版 )
管理画面へのアクセスをよりセキュアにし、運用することが可能です。
ライセンス確認画面の追加
システムの設定>ライセンス確認の画面を新設しました。 購入した Movable Type のSAIDとライセンス番号を登録しておけば、登録社名や登録日時、メンテナンス期限などの情報を確認することができます。
検索機能への導線の改善
検索機能へ素早くアクセスできるように、管理画面の左上に検索ページへ遷移するボタンを設置しました。 これにより各サイトへの検索ページへ移動し、検索等することが可能です。
コンテンツタイプの検索・置換で検索結果を見やすく改善
コンテンツタイプの検索結果で、検索対象の文字列がどのコンテンツフィールドに含まれているかがわかるように表示を改善しました。
コンテンツタイプ型コンテンツフィールドでのコンテンツデータの選択画面の改善
コンテンツタイプ型のコンテンツフィールドで他のコンテンツタイプのデータを関連させる場合に、素早く探せるように検索機能を追加しました。
サーバー配信関連の改善・強化
サーバー配信機能は、ソフトウェア版の Movable Type Advanced および Movable Type クラウド版(以下MTクラウド)のみで提供する機能となります。
サーバ配信メニューの独立化
サーバー配信のメニューはサイトの設定の中にありましたが、利用者の利用頻度や利便性を考え、左メニューに独立して表示させるようにしました。
Cloudflare R2への配信
サーバー配信の配信方法(配信先)として、Cloudflare R2に対応しました。MTクラウドではS4以上のプランで利用可能です。
Amazon S3への配信
サーバー配信の配信方法(配信先)として、Amazon S3に対応しました。MTクラウドではS4以上のプランで利用可能です。
その他の改善点、修正された問題は最後に記載しています。
開発者の皆様向けの具体的な情報
廃止された機能やライブラリの変更等があります。一部の機能はすでにリリース済みです。
MT8 で廃止した機能
利用頻度の少ないと思われる機能や、歴史的に役割を終えたと考えられる機能について、廃止することにしました。また、廃止に合わせてコードの削除も行いましたので、これらの機能に依存したプラグインも動作しなくなります。
- XMLRPC API, Atom Publishing API
- ログフィード (Activity Feeds)
- クイック投稿 (Quick Post, 旧ブックマークレット)
- トラックバックの送受信
- 更新Pingの送信
- コメント機能の一部 (Facebook Commenter, Spam Lookup)
- mt-testbg.cgi や mt-ftsearch.cgi など CGI の一部
- OpenID プラグイン
- GoogleAnalytics プラグイン(ユニバーサル アナリティクス版)
- ヨーロッパ言語サポート (de, fr, es, nl)
- 英語と日本語のみ継続します
- 古い JavaScript ライブラリ群
MT8 での非互換改善
安定運用やセキュリティの向上のため、旧来のバージョンとの互換性に影響がある変更を行いました。
- パッケージ構成の見直し
システム領域とユーザ領域の明確な分離、mt-static 内のユーザ領域を外部にしました
既に導入済みの機能
- MT::Util::Deprecated の導入 (r.5001)
削除予定のコードが利用されるとログが出力される
プラグインやカスタマイズでの内部コードの利用を検知し、ログに出力します。廃止されるまえに対処してください - extlib のアップデート (r.5301、r.5401)
古いバージョンのモジュールへの依存に注意してください
今後もアップデートを継続していきます - Data API v5 (r.5401)
metaWeblogAPI (XMLRPC) / Atom API にしかなかった機能を追加
OpenAPI JSON Schema にはすでに対応 (r.5201) - Data API v6 (r.5404)
Stats の Limit パラメータのデフォルト値を 10 から 50 に変更 - 内部処理の最適化 (r.5404)
再構築が 10% 程度高速になりました
動作速度やメモリ使用量の改善、エラーや警告の発生頻度が低減します
パフォーマンス改善は継続して行っています
管理画面で利用している主なライブラリの変更
- TinyMCE6対応 (r.5401)
リッチテキストエディタ、ブロックエディタが対象
継続してアップデートしていきます - Bootstrap5対応 管理画面の切り替え機能 (テーマ) (r.5404)
管理画面の変更に伴いカスタマイズでのトラブルを軽減できる見込みです
Bootstrap v5.x (v5.1.3) に対応した管理画面のテーマを実装済み
管理画面の切り替え機能で、旧来のものと並行してテーマとして提供します
これまでのアナウンスからの変更
これまでに Movable Type 8 での変更点としてニュースやセミナーでアナウンスしてきた内容からの変更点です。
リスティング、コンテンツタイプの編集画面などで利用されているライブラリRiot.jsのSvelte.jsへの変更は Movable Type 8 のリリースには含みません。
画像挿入ウィンドウの改善は Movable Type 8 のリリースには含まれません。画像挿入ウィンドウの改善は段階的にプラグインとして提供していく予定です。
ブロックエディタを活用した新テーマBlockは Movable Type 8 のリリースには含みません。パッケージに同梱されませんが、後ほどテーマとして公開する予定です。
プラグイン機構の見直しは Movable Type 8 のリリースには含みません。
動作環境・検証環境
基本的に従来と変わりませんが、サポートするバージョンを一部変更します。
- Linux/Unix (Mac)、Windows Server
- MySQL, MariaDB, Oracle, SQL Server
- PSGI / CGI (PSGI での動作を強く推奨)
- Perl 5.16.3 - 5.36.1 (そのときの最新版まで)
PHP 7.4 - 8.2 (そのときの最新版まで)
AMI 版 の新規提供OSは Amazon Linux 2023 にのみ対応
- Movable Type 7 (Amazon Linux 2) からのアップグレードが可能
バージョン表示、リリースサイクルの変更
MT8 ではリビジョン表示を止め、バージョン表記にしました。バージョンの表記は 8.0.1: 8.<minor>.<patch> といったようになっています。
- パッケージリリースは年に1回秋頃を予定、LTS 版を2年に一度リリースします
- リリース後のメンテナンスではパッチバージョンをアップします
- AMI 版のリリースはソフトウェア版に準じます
- クラウド版は 3カ月に1回のリリースを継続します
ライフサイクルポリシーの変更
これまでは EOS (End of Sales)、EOM (End of Maintenance)、EOL (End of Life) といったマイルストーンを設定していましたが、基本、最新版のみをメンテナンスの対象にします。
- クラウド版は3カ月ごとにマイナーバージョンアップし自動アップデートが適用されます。自動アップデートについては、30日間はアップデートの適用を遅らせることができます
- 1年ごとのソフトウェア版のリリース時に、前のバージョンは EOS/EOM とします
- ソフトウェアリリースには、2年ごとに LTS (Long Term Support) を設定します LTS版は EOS/EOM 後、2年間のセキュリティアップデートを提供します 非LTS版は、EOM と同時に EOL としますので、最新版への追従をお願いします
ソフトウェア版には2年ごとに LTS を設定します。
- LTS版は EOS/EOM 後、2年間のセキュリティアップデートを提供します
- 非LTS版は、EOM と同時に EOL としますので、最新版への追従をお願いします
詳しくは「Movable Type のプロダクト・ライフサイクルポリシーについて」のページをご覧ください。
その他の新機能・改善点、修正された問題
新機能・改善した機能
- ユーザー作成後にウェブサイトを作成できるようになりました (MTC-28888)
- ダッシュボード左上の製品名にメジャーバージョンを追加しました (MTC-29022)
- 削除された TinyMCE プラグイン用のリポジトリを公開しました (MTC-28975)
- フッターのバージョン表記を変更しました (MTC-29008)
- ブロックエディタ : 新規インストール時にはBlockEditorを無効にしました (MTC-28989)
- 管理画面の bootstrap5 対応テーマの名称を
admin2023
に変更しました(環境変数の値もbootstrap5からadmin2023に変更になりました) (MTC-28947) - 記事・ページのリスティング画面に作成日を表示しました (MTC-28814)
- プラグイン一覧で deprecated ログを表示するようにしました (MTC-28836)
- 検索結果が125件を超えているときに「最初の125件の結果を表示します」のメッセージを検索結果の下にも表示するようにしました (MTC-28903)
- コンテンツデータの検索・置換結果に identifier (出力ファイル名)を表示しました (MTC-28827)
- 検索結果の編集リンクの表示を改善しました (MTC-28826)
- 管理画面フッターの製品へのリンクと文言の調整を行いました (MTC-29047)
- ディストリビューション内のファイルを判定するために CHECKSUMS を用意しました (MTC-29042)
- ユーザ領域を指定する環境変数 BaseUserDirectory を新設しました (MTC-28428)
- mt-wizard.cgi にコンテンツ分離用のステップを追加しました (MTC-29044)
- UserPluginPath 環境変数などを新設しました (MTC-28973)
- 必須モジュール不足時の管理画面上での警告の表示を改善しました (SUPPORT-277)
変更された機能
- Perl のサポート下限を5.16に変更しました (MTC-28717)
修正された問題
- 環境変数の値を空にしたいときに引用符の組を空文字列がわりに使えるようにしました (CLOUD-308)
- Bootstrap5 対応中に発生した data-target のリグレッションを修正しました (MTC-29013)
- LPWx::ParanoidAgent に依存しないようにしました (MTC-28470)
- 記事の新規作成時の表示オプションのチェックボックスが重なって表示される問題を修正しました (MTC-29004)
- mt を MT のエイリアスにしないようにしました (MTC-28164)
- GA4 連携時に DataAPI で Statistics の値を取得すると null が返ってくる項目がある問題を修正しました (MTC-28885)
- プラグイン等の中でMTApp:Settingなどのタグを使うと、<_transsection> が付いてしま問題を修正しました (MTC-28992)
- GoogleAnalytics のプロファイルの選択後に、選択してあるかどうかがわかりにくい問題を修正しました (MTC-27150)
- ニュースなどのURLを指定する環境変数の初期設定を変更しました (MTC-28990)
- ThemeStaticFileExtensions の初期値を変更しました (MTC-28988)
- DataAPI の Stats リソースの内容を GA4 にあわせて修正しました (MTC-28985)
- MT::ConfigMgr の autovivification による警告を調整しました (MTC-28942)
- admin2023:ブロックエディタの画像選択画面のページャ部分に (currnt) が表示されていた問題を修正しました (MTC-28980)
- サーバー配信履歴の配信方法を画像からテキストに変更しました (MTC-28959)
- グローバルデストラクション時には save_config を実行しないようにしました (MTC-28960)
- MT::ConfigMgr 内部では不必要に instance を呼ばないようにしました (MTC-28961)
- MT::ConfigMgr の dirty フラグの扱いを見直しました (MTC-28965)
- ハッシュ型の MT 環境変数に = を含む値を設定できるようにしました (MTC-28966)
- MT::Util::Archive 内部の eval 判定を改善しました (MTC-28969)
- 7.9.4以前からのアップグレード時にサイトの作成日時を更新してしまう問題を修正しました (MTC-28967)
- 検索アイコンのuuvを解消しました (MTC-28948)
- theme.yaml でデフォルトの記事・ページを追加するときに basename パラメータの値が適用されない問題を修正しました (MTC-28963)
- リスティングフレームワークの list_header テンプレートが AdminThemeId に対応していない問題を修正しました (MTC-28954)
- MT::Upgrade::Core の中で正しく config の保存ができていなかった問題を修正しました (MTC-28956)
- サーバー配信履歴のログ詳細が bootstrap5 対応漏れのため開けなくなっていたのを修正しました (MTC-28958)
- 管理画面右サイドパネルのウィジェットが非表示にならない問題を修正しました (SUPPORT-265)
- 検索時にcache_keysが存在しないときはキャッシュを使わないようにしました (MTC-28927)
- 拡張子なしのファイルを画像として扱う場合に未定義値の警告が出ないようにしました (MTC-28926)
- 関連付け一覧で未定義値の警告が出ないようにしました (MTC-28925)
- プラグイン経由で追加されるメニューに不備があっても未定義値の警告が出ないようにしました (MTC-28924)
- applytextfilters で未定義値の警告が出ないようにしました (MTC-28923)
- (regex_)replaceモディファイアが未定義値の警告を出さないようにしました (MTC-28922)
- MTSetVar での uuv を回避するようにしました (MTC-28932)
- リストアクションでコンテンツデータを削除した際の uuv を回避するようにしました (MTC-28939)
- モディファイアの対象が未定義値になった場合に uuv を回避するようにしました (MTC-28935)
- SearchMaxResults に非数値を設定したときの uuv を回避するようにしました (MTC-28933)
- MT->model の引数が空のとき uuv を回避するようにしました (MTC-28934)
- エラーの発生するプラグイン(.pl形式)があると、プラグインによる object_types の追加が処理されないことがある問題を修正しました (MTC-28867)
- メニューに view の項目がない場合の初期値にwebsiteを追加しました (MTC-28928)
Bootstrap 5 で各種モーダルを Cancel するとJavaScriptエラーが発生する問題を修正しました (MTC-28870)
カスタムブロックの「読み込む」モーダルの閉じる方法を改善しました (MTC-29120)
- admin2023: システム > ブロックエディタ > カスタムブロック > 一覧 > 編集 > 読み込むウィンドウのボタンが見切れているのを修正しました (MTC-29116)
- MTBlockEditor : 「複数行テキスト」のフィールドが一つもないコンテンツタイプの編集画面を開くと JavaScript のエラーが発生する問題を修正しました (MTC-29148)
- MTBlockEditor : mtValidate を使って値を検証するようにしました (MTC-29135)
- MTBlockEditor : カスタムブロックのクラス名の文字数制限を100文字に変更しました (MTC-29130)
- MTBlockEditor: カスタムブロックの作成画面でエラー画面から戻ると collapse の状態が逆になる問題を修正しました (MTC-29136)
- MTBlockEditor : Firefoxでブロックのドラッグアンドドロップができない問題を修正しました (MTC-29127)
- MTBlockEditor : HTMLブロックをコピーしてペーストすると、入力データが変化してしてしまう問題を修正しました (MTC-29124)
- MTBlockEditor : 親サイトでのカスタムブロックの一覧表示の改善しました (MTC-28416)
- MTBlockEditor : カスタムブロックとプリセットをテーマで設定できるようにしました (MTC-29033)
- サーバー配信 FTP のみの場合はプルダウンを出さないようにしました (MTC-29034)
- MTCustomFieldHTML から出力される HTML の class 名にある Bootstrap の class を削除するようにしました (MTC-28818)
- MT::App::Wizard の最後の画面で $app -> config - > set('StaticWebPath', $setstaticuri_to) されない問題を修正しました (MTC-24814)
- Sync.pack 内部では Cloud::Util を呼ばないようにしました (MTC-29007)
- リクエスト内で同一ファイルテンプレートのロードが繰り返される場合にキャッシュするようにしました (MTC-29014)
- admin2023: 画像挿入で編集したあと背景が消えない問題を修正しました (MTC-29267)
- 記事/ページ : 新規作成/編集画面のタブがズレて見える問題を修正しました (MTC-29207)
廃止された機能
- MT8 までに廃止済みの環境変数を削除しました (MTC-28986)
- MT8 で廃止予定とした機能を実際に削除しました (MTC-28862)
- OpenID の依存モジュールやその判定情報を削除しました (MTC-29005)
- OpenID 関連機能を削除しました (MTC-27297)
- 多言語対応のスタイルファイルを削除しました (MTC-28983)
- flash関連のファイルを削除しました (MTC-28981)
- GoogleAnalytics プラグインを廃止しました (MTC-28974) なお、Google Analytics4対応のプラグインは別になり廃止されません
- spamlookup プラグインを削除しました (MTC-28972)
- TinyMCE (無印、TinyMCE 4向け)プラグインを削除しました (MTC-28971)
- rpt_logモード関連のファイルを削除しました (MTC-27332)
- Activity Feeds 関連のファイルや設定を削除しました (MTC-28953)
- MT::Util::Deprecated で廃止の警告を出している機能を実際に削除しました (MTC-28863)
- FacebookCommenters プラグインを削除しました (MTC-28941)
- Trackback プラグインを削除しました (MTC-28940)
- mt-testbg.cgi を削除しました (MTC-28920)
- フリーテキスト検索関連のファイルや設定を削除しました (MTC-28919)
- クイックポスト関連のファイルや設定を削除しました (MTC-28918)
- AtomPub 関連のファイルや設定を削除しました (MTC-28917)
- XMLRPC 関連のファイルや設定を削除しました (MTC-28882)
- ヨーロッパ言語の L10N ファイルと関連データを削除しました (MTC-28880)
- 再構築トリガーの ping 送信オプションを削除しました (MTC-26646)
謝辞
リリースにあたり不具合の報告や機能要望をしていただいた皆様すべてに感謝します。