Войти с помощью github
Форум /

Привет, давно ничего не рассказывал, а есть о чём — исправляюсь.

Версия ENB 1.0.0 появилась пару месяцев назад. Многие из вас, наверное, уже увидели этот релиз, а может даже успели перейти.

Но я всё же расскажу, зачем оно нам. Основная цель релиза — не сделать ничего полезного, и мы с этой целью прекрасно справились =)

Но это ещё не всё.

API

Единственный способ использовать ENB до 1.x — подключать модули, указывая путь к ним.

var buildFlow = require('enb/lib/build-flow'),
    BaseTech = require('enb/lib/tech/base-tech'),
    FileList = require('enb/lib/file-list'),
    asyncFs = require('enb/lib/fs/async-fs.js');

Такой способ не даёт возможности отличить модули, предназначенные для внешнего использования от внутренних, не предназначенных никому, кроме самого ENB.

Начиная с версии 1.0.0 мы предоставили всё необходимое с помощью API.

var enb = require('enb');

enb.buildFlow // Хэлпер для создания технологий
enb.BaseTech  // Базовая технология, от которой можно унаследоваться
enb.FileList  // Класс для передачи списка файлов в технологию 
enb.asyncFs   // vow-fs

Важно: если вы используете модули, которые не предоставляются посредством API, то делаете это на свой страх и риск. Это внутренняя реализация, а значит нет никакой гарантии в соблюдении обратной совместимости в минорных или патчевых версиях.

Технологии

Пакет ENB — это, прежде всего, ядро и хэлперы для создания технологий. Сами технологии должны храниться в отдельных пакетах.

Поэтому мы удалили все устаревшие технологии, а также те, которые переехали в другие пакеты. Остались только 4 технологии для работы с файлами:

При создании технологий вы могли использовать некоторые из утилит. Мы вынесли их в отдельные пакеты:

Модуль drop-require-cache был удалён. Вместо него нужно использовать clear-require.

Если вы использовали css-preprocessor, то мы рекомендуем заменить его на PostCSS, особенно если вы используете Autoprefixer. А для плавного перехода css-preprocessor вынесен в отдельный пакет.

История изменений

Подробнее о всех изменениях читайте в примечании к релизам: v1.0.0, v1.0.1, v1.1.0, v1.1.1.

Вопросы про сборщик ENB традиционно ждем на нашем форуме с меткой enb.

Приятного использования!