ソースマップまたは sourceURL を使用する場合(どちらも、ソースマップの概要で説明しています)、Chrome コンソールに "/*@ sourceMappingURL=" source mapping URL declaration is deprecated, "/*# sourceMappingURL=" declaration should be used instead.
などの警告が表示されることがあります。
詳細は次のとおりです。
引く力
//@cc_on
が解釈されて IE JScript エンジンで条件付きコンパイルが有効になった後、ページ内で //@ sourceMappingURL
が検出されると、IE と競合することが検出されました。特に、HTML5 Shiv の以前のバージョンは問題の原因となります。
仕様の変更
//@ sourceMappingURL
構文は Sourcemap V3 仕様で定義されています。そこで、代わりに //#
構文を使用するように変更されました。
sourceURL
//@ sourceURL
も仕様で定義されており、整合性を確保するために //#
構文と一致するように作られています。sourceURL の詳細については、手順に沿ってご確認ください。これは、Ember の minispade、Google の concatenate.js などで使用されています。Chrome では、評価された JS に加えて、インライン スクリプトとインライン スタイルで sourceURL
がサポートされています。
ブラウザの DevTools で実装 = 完了
- Safari Inspector で、sourceMappingURL と sourceURL の
//#
がサポートされるようになりました - sourceURL のFirebug の変更がリリースされました。
- Firefox で、sourceMappingURL の変更がリリースされました。sourceURL のチケットはこちらです。
- Chrome DevTools で、sourceMappingURL と sourceURL の変更が適用されました。また、非推奨の
//@
構文の使用についても警告が表示されます。
これらの変更は安定版リリースに反映されますが、ニーズに応じて、両方の構文を同時に使用してツールを完全にサポートすることも、#
構文にすぐに移行することもできます。