Initialement signalé ici : https://github.com/sass/libsass-python/issues/245
<strong i="8">@import</strong> 'cssfile';
a { b: c; }
$ pysassc --version
pysassc 0.14.2 (sass/libsass 3.5.2)
$ pysassc input.scss
a {
b: c; }
$ pysassc --version
pysassc 0.14.3 (sass/libsass 3.5.3)
$ pysassc input.scss
pysassc: error: Error: File to import not found or unreadable: cssfile.
on line 1 of input.scss
>> <strong i="20">@import</strong> 'cssfile';
^
J'attends l'avertissement noté dans les notes de version
Je pense que cela peut être fermé, c'est exactement ce qui était attendu par # 1963.
Personnellement, je pense qu'il aurait d'abord dû être déprécié via un avertissement et provoqué une version mineure plutôt qu'un correctif, mais il est trop tard maintenant.
Désolé, il s'agissait d'un changement de rupture involontaire pour cette version de correctif.
Ma préférence est d'aller de l'avant avec le changement et de mettre à jour les notes de version.
Vous devrez utiliser l'API sass_option_push_import_extension
pour réactiver les importations .css
comme je vois que vous l'avez fait dans https://github.com/sass/libsass-python/pull/246 .
Remarque : cela entraînera un avertissement de dépréciation pour les fichiers .css
. L'avertissement de dépréciation sera supprimé dans 3.6.0.
Je suis très confus par l'amortissement, nulle part ne semble clair:
L'avertissement de dépréciation sera supprimé dans 3.6.0.
vs.
L'inclusion de fichiers .css avec
@import
est un comportement non standard qui sera supprimé dans les futures versions de LibSass. Utilisez un importateur personnalisé pour conserver ce comportement. Consultez la documentation de vos implémentations pour savoir comment créer un importateur personnalisé.
L'avertissement de dépréciation sera-t-il supprimé dans la version 3.6.0 et sass_option_push_import_extension
continuera-t-il à fonctionner ou la fonctionnalité d'importation de CSS sera-t-elle complètement supprimée ?
Personnellement, je dirais que ce serait un grand pas en arrière pour libsass d'arrêter de prendre en charge les importations CSS, cela signifiera soit :
Je n'utilise pas ruby, je ne vais pas le faire et je me fiche de ce qu'il fait et ne fait pas. S'il vous plaît, pouvons-nous garder sass_option_push_import_extension
.
Désolé de ne pas être clair. Les notes de version ont depuis été mises à jour pour, espérons-le, être plus claires.
Je n'utilise pas ruby, je ne vais pas et je me fiche de ce qu'il fait et ne fait pas
Premièrement, ce n'est pas nous contre Ruby. Sass est un langage avec un cahier des charges comme un autre. L'implémentation Ruby est la source de vérité pour la spécification du langage Sass.
Les importations CSS brutes sont une fonctionnalité qui viole les spécifications du langage Sass et n'aurait jamais dû être dans LibSass. Il doit être supprimé.
Étant donné que les gens en sont devenus si dépendants, nous devons l'éliminer de manière responsable.
En tant que tel, nous en faisons un comportement opt-in via sass_option_push_import_extension
. Cette API ne disparaîtra pas tant qu'il n'y aura pas un moyen compatible avec le langage Sass de le faire. Une telle fonctionnalité est prévue pour le système de modules 4.0.
L'avertissement de dépréciation a été ajouté dans 3.5.x car il n'y a pas suffisamment de crochets dans LibSass pour qu'un implémenteur produise de manière performante l'avertissement de dépréciation correct. C'est l'avertissement de dépréciation qui sera supprimé dans la version 3.6.
C'est là que nous nous attendrions à ce que les implémenteurs repoussent leurs majors s'ils souhaitent maintenir la conformité aux spécifications.
Merci de clarifier.
Je viens de lire la proposition de module pour sass 4 et ça a l'air super.
Voir aussi https://github.com/sass/node-sass/issues/2362 pour gérer cela du côté node-sass.
Commentaire le plus utile
Je suis très confus par l'amortissement, nulle part ne semble clair:
vs.
L'avertissement de dépréciation sera-t-il supprimé dans la version 3.6.0 et
sass_option_push_import_extension
continuera-t-il à fonctionner ou la fonctionnalité d'importation de CSS sera-t-elle complètement supprimée ?Personnellement, je dirais que ce serait un grand pas en arrière pour libsass d'arrêter de prendre en charge les importations CSS, cela signifiera soit :
Je n'utilise pas ruby, je ne vais pas le faire et je me fiche de ce qu'il fait et ne fait pas. S'il vous plaît, pouvons-nous garder
sass_option_push_import_extension
.