Releases: enb/enb-bem-techs
v2.2.2
Исправления ошибок
- Исправлено кэширование в технологии
levels-to-bemdecl
(@L0stSoul #255). - Исправлена схема уровней
levels-plain
: не работала сenb@1.x
(@dmkova #250). - Исправлена технология
provide-deps
: должна поддерживать зависимости в формате массива (@dmkova #251).
Зависимости
- Модуль
bem-naming@0.5.1
обновлен до версии1.0.1
. - Модуль
inherit@2.2.3
обновлен до версии2.2.6
. - Модуль
js-yaml@3.5.2
обновлен до версии3.7.0
. - Модуль
vow@0.4.12
обновлен до версии0.4.13
.
Остальное
v2.2.1
v2.2.0
Опции
Для технологий levels-to-bemdecl
, bemjson-to-bemdecl
и deps-by-tech-to-bemdecl
добавлена опция bemdeclFormat.
Опция позволяет возвращать результат не только в стандартном BEMDECL-формате, но и формате результата deps
и depsOld
технологий.
Пример BEMDECL-формата:
{ blocks: [{ name: 'b', elems: [{ name: 'e', mods: [{ name: 'm', vals: [{ name: 'v' }] }] }] }]}
Пример DEPS-формата:
{ deps: [{ block: 'b', elem: 'e', mod: 'm', val: 'v' }] }
Важно: DEPS-формат позволяет выражать декларации, в которые может входить элемент без своего блока и модификатор без своего блока или элемента. Это может быть необходимо при сборке бандлов, которые будут догружаться в браузере.
v2.1.1
Исправления ошибок
Исправлена работа технологии deps-by-tech-to-bemdecl
:
- Не учитывался контекст БЭМ-сущности по имени файла (#191).
- Некорректно обрабатывалась короткая запись для булевых модификаторов (#192).
Зависимости
- Модуль
enb-async-require@1.0.0
обновлен до версии1.0.1
. - Модуль
enb-require-or-eval@1.0.1
обновлен до версии1.0.2
. - Модуль
inherit@2.2.2
обновлен до версии2.2.3
: возможность подменять метод__base()
при тестировании. - Модуль
js-yaml@3.4.2
обновлен до версии3.5.2
. - Модуль
vow@0.4.11
обновлен до версии0.4.12
.
v2.1.0
v2.0.1
v2.0.0
Важно: ознакомтесь с руководством по переходу на версию 2.0.0
.
Технология files
[ major ] Исправлен порядок файлов, возвращаемый для нескольких суффиксов:
- Файлы должны быть отсортированы сперва по имени сущности, и только потом по суффиксу (#129).
- Файлы должны быть отсортированы сперва по уровню, и только потом по суффиксу (#156).
Технология deps-old
- [ major ] Исправлена ошибка раскрытия
must
-зависимостей (#175). Алгоритм раскрытия зависимостей был полностью переписан. - Добавлена опция strict, которая включает строгий режим раскрытия зависимостей.
- Теперь в консоль выводятся предупреждения о циклических
must
-зависимостях.
Технология deps
- Исправлена ошибка, из-за которой невозможно было задать
must
-зависимость модификатору от своего блока (#148).
Формат deps.js
В чтении и обработке deps.js
-файлов исправлены следующие ошибки:
- Не учитывались элементы, переданные в виде массива в поле
elem
(#136). - Не учитывались булевые модификаторы, переданные в виде массива строк (#113).
- Не учитывался контекст блока для его элементов и модификаторов (#112).
- Исправлена обработка пустых
deps.js
-файлов (#151).
Технология merge-bemdecl
- Исправлено объединение деклараций: не учитывались модификаторы без значения (#116).
Технология subtract-deps
- Исправлена обработка опций
from
иwhat
: не раскрывался?
в названии таргета (#128).
Зависимости
- Модуль
js-yaml@3.2.7
обновлен до версии3.3.1
. - Модуль
vow@0.4.8
обновлен до версии0.4.10
.
v1.0.4
Исправления ошибок
Исправлена ошибка, из-за которой невозможно было представить декларацию БЭМ-сущностей в DEPS-формате в виде массива (#107). Актуально для технологий, ожидающих или возвращающих декларацию в формате принятом в enb@0.13.x
.
Ошибки могли возникать в двух случаях:
- Если базовые технологии получали на вход декларации, построенные с помощью сторонних технологий.
- Если сторонние технологии получали на вход декларации, построенные с помощью базовых технологий.
Исправления были внесены в следующие технологии:
deps
deps-old
files
merge-deps
subtract-deps
Также в релиз вошли следующие изменения
- Добавлена поддержка
Node.js
версии0.12
. - Добавлена поддержка
io.js
. - Модуль
js-yaml@3.2.5
обновлён до версии3.2.7
.