ソースマップまたは sourceURL(どちらも HTML5 Rocks Primer on Sourcemaps で説明しています)を使用すると、Chrome コンソールに "/*@ sourceMappingURL=" source mapping URL declaration is deprecated, "/*# sourceMappingURL=" declaration should be used instead.
のような警告が表示されることがあります。
こちらが原因です。
引く力
IE JScript エンジンで条件付きコンパイルを有効にするように //@cc_on
が解釈された後、ページで検出されたときは常に、//@ 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 の変更が行われました。また、非推奨の
//@
構文の使用についても警告します。
これらの変更は安定版リリースになりますが、両方の構文を同時に使用してツールを完全にサポートすることも、ニーズに応じてすぐに #
構文に移行することもできます。