Si vous utilisez des mappages sources ou des URL sources (tous deux décrits dans le guide HTML5 Rocks Primer sur Sourcemaps), un avertissement semblable à "/*@ sourceMappingURL=" source mapping URL declaration is deprecated, "/*# sourceMappingURL=" declaration should be used instead.
peut s'afficher dans la console Chrome.
Voici de quoi il s'agit:
Impétueux
Il a été détecté que //@ sourceMappingURL
avait un conflit avec IE chaque fois qu'il était détecté dans la page, après que //@cc_on
a été interprété pour activer la compilation conditionnelle dans le moteur JScript IE. Une ancienne version du code HTML5 Shiv est un exemple particulier d'infraction.
Modification des spécifications
La syntaxe //@ sourceMappingURL
est définie dans la spécification Sourcemap V3. Elle a été modifiée pour utiliser la syntaxe //#
à la place.
sourceURL
//@ sourceURL
est également défini dans la spécification et conçu pour correspondre à la syntaxe //#
à des fins de cohérence. Suivez-la pour en savoir plus sur ce que fait sourceURL. Il est utilisé par minispade d'Ember, concatenate.js d'Ember, etc. Dans Chrome, sourceURL
est compatible avec les scripts et les styles intégrés, en plus du JavaScript évalué.
Implémentation dans les Outils pour les développeurs du navigateur : c'est fait !
- Safari Inspector accepte désormais
//#
pour sourceMappingURL et sourceURL. - La modification de Firebug a été effectuée pour l'URL sourceURL.
- Firefox a envoyé la modification pour sourceMappingURL. La ticket sourceURL est disponible.
- Chrome DevTools a envoyé la modification pour sourceMappingURL et sourceURL. Vous serez également averti en cas d'utilisation de la syntaxe
//@
obsolète.
Bien que ces modifications permettent d'obtenir une version stable, vous pouvez utiliser les deux syntaxes simultanément pour bénéficier d'une compatibilité complète ou migrer immédiatement vers la syntaxe #
, selon vos besoins.