Первоначально сообщается здесь: 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';
^
Я ожидаю предупреждения, отмеченного в примечаниях к выпуску
Думаю, это можно закрыть, это именно то, чего ожидал # 1963.
Лично я думаю, что сначала нужно было обесценить его с помощью предупреждения и вызвало незначительный выпуск, а не патч, но сейчас уже слишком поздно.
Извините, это было непреднамеренное критическое изменение для этого выпуска исправления.
Я предпочитаю продвигаться вперед с изменениями и обновлять примечания к выпуску.
Вам нужно будет использовать sass_option_push_import_extension
API, чтобы повторно включить импорт .css
как я вижу, вы это сделали в https://github.com/sass/libsass-python/pull/246 .
Примечание. Это приведет к предупреждению об устаревании файлов .css
. Предупреждение об устаревании будет удалено в 3.6.0.
Меня очень смущает амортизация, нигде не ясно:
Предупреждение об устаревании будет удалено в 3.6.0.
против.
Включение файлов .css с
@import
- нестандартное поведение, которое будет удалено в будущих версиях LibSass. Используйте настраиваемый импортер, чтобы поддерживать такое поведение. Ознакомьтесь с документацией по реализации, чтобы узнать, как создать настраиваемый импортер.
Будет ли удалено предупреждение об амортизации в версии 3.6.0, и sass_option_push_import_extension
продолжит работать или функция импорта css будет полностью удалена?
Лично я бы сказал, что для libsass было бы большим шагом назад прекратить поддержку импорта css, это будет либо означать:
Я не использую рубин, я не собираюсь и мне наплевать, что он делает, а что нет. Пожалуйста, оставим нам sass_option_push_import_extension
.
Приносим извинения за непонятность. С тех пор примечания к выпуску были обновлены, чтобы, надеюсь, стать более понятными.
Я не использую рубин, я не собираюсь и мне все равно, что он делает, а что нет
Во-первых, это не мы против Руби. Sass - это язык со спецификацией, как и любой другой. Реализация Ruby является источником истины для спецификации языка Sass.
Необработанный импорт CSS - это функция, которая нарушает спецификацию языка Sass, и ее никогда не должно было быть в LibSass. Его надо удалить.
Поскольку люди стали настолько зависимыми от него, мы должны удалить его ответственным образом.
Таким образом, мы делаем это поведение согласия через sass_option_push_import_extension
. Этот API не исчезнет, пока не появится способ, совместимый с языком Sass. Такая функция предусмотрена в системе модулей 4.0.
Предупреждение об устаревании было добавлено в 3.5.x, потому что в LibSass недостаточно хуков, чтобы разработчик мог эффективно выдавать правильное предупреждение об устаревании. Это предупреждение об устаревании, которое будет удалено в версии 3.6.
Это то место, где мы ожидаем, что разработчики подтолкнут своих крупных компаний, если они захотят сохранить соответствие спецификациям.
Спасибо за разъяснение.
Я только что прочитал предложение модуля для sass 4, и оно отлично выглядит.
См. Также https://github.com/sass/node-sass/issues/2362, чтобы справиться с этим на стороне node-sass.
Самый полезный комментарий
Меня очень смущает амортизация, нигде не ясно:
против.
Будет ли удалено предупреждение об амортизации в версии 3.6.0, и
sass_option_push_import_extension
продолжит работать или функция импорта css будет полностью удалена?Лично я бы сказал, что для libsass было бы большим шагом назад прекратить поддержку импорта css, это будет либо означать:
Я не использую рубин, я не собираюсь и мне наплевать, что он делает, а что нет. Пожалуйста, оставим нам
sass_option_push_import_extension
.