Leaflet 1.9 リリース
v1.9 リリースにより、2016 年以来初となる Leaflet のメジャーバージョンアップの舞台が整いました。それ以来さまざまな変化があり、Leaflet が Web プラットフォームとともに進化するべき時期が来ました。
このリリースの後、1.x コードをブランチオフしてメンテナンスモードに移行し、1.x リリースは重大なバグフィックスのみを対象とする予定です。バージョン 2.0はまだずっと先であり、形を整えるにはしばらく時間がかかりますが、次の変更を行う予定です
- Internet Explorer のサポート終了。これは長い間予定されていたことですが、Internet Explorer が 正式に終了したため、お別れする時期が来ました。これからは、Firefox、Chrome、Edge、Safari などのブラウザをターゲットとするエバーグリーン戦略に移行します。
- 最新の JavaScript の採用。下位互換性を維持するために、Leaflet はレガシーブラウザでサポートされる JavaScript バージョンの ES5 で完全に記述されています。そのため、標準クラス などの優れた JavaScript 機能の多くを活用できていません。代わりに、独自の実装に頼らざるを得ませんでした。ECMAScript 標準のより最新のバージョンを採用することで、Leaflet を最新の JavaScript ライブラリに期待されるものに沿うように調整する作業を開始できます。
- 標準化モジュール。Leaflet v1 をリリースしたとき、JavaScript の世界は大きく異なっており、CommonJS、AMD、UMD などの競合するモジュール標準がたくさんありました。現在は、ECMAScript モジュールが JavaScript エコシステムを 1 つのバナーの下に統一するための明確な方法となっています。今後、Leaflet は単一の標準化モジュールシステムでのみ配布され、配布されるコードの複雑さを大幅に低減します。
- Leaflet グローバルの削除。Leaflet を利用する開発者にとっては、大文字のコード
L
がきっとよく知られているでしょう。これは Leaflet グローバルで、Leaflet のすべての機能が存在します。コンパイラツールが ツリーシェイキングと呼ばれるプロセスを通じてデッドコードをより適切に排除できるように、このグローバル変数は削除されます。古いプラグインとの下位互換性を維持するために、手動でインポートしてこの機能を復元できるシムを提供します。
こちらで完全な変更ログを確認してください。
編集: v1.9.1 パッチが、Leaflet.markercluster プラグインとの互換性に対処するためにリリースされました。
編集: v1.9.2 パッチがリリースされました。このバージョンではプラグインとの互換性に関する多数の問題があるため、ESM のサポートが元に戻されています。
編集: v1.9.3 パッチがリリースされました。これにより、いくつかのバグ修正とアクセシビリティの問題が解決されました。
編集: v1.9.4 パッチがリリースされました。これにより、いくつかのバグ修正が解決されました。
乾杯,
Leaflet チーム。