Как увеличить трассировку стека задачи Gulp?

$ gulp patch
[17:13:27] Requiring external module coffee-script/register
[17:13:28] Using gulpfile ~/source/sem-campaign.js/gulpfile.coffee
[17:13:28] Starting 'bump'...
[17:13:28] Starting 'add'...
[17:13:28] Bumped version to: 1.0.2
[17:13:28] Bumped version to: 1.0.2
[17:13:28] Finished 'bump' after 31 ms
[17:13:28]
[17:13:28] Finished 'add' after 30 ms
[17:13:28] Starting 'commit'...
[?] enter a commit msg, eg initial commit: initial commit
[17:13:32] Finished 'commit' after 3.26 s
[17:13:32] Starting 'patch'...
no buddy
[17:13:32] Finished 'patch' after 25 μs

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: Command failed:
  at ChildProcess.exithandler (child_process.js:648:15)
  at ChildProcess.emit (events.js:98:17)
  at maybeClose (child_process.js:756:16)
  at Socket.<anonymous> (child_process.js:969:11)
  at Socket.emit (events.js:95:17)

Мне трудно сказать, где моя задача глотка терпит неудачу и почему. Как я могу увеличить трассировку стека по умолчанию?

1 ответ

Добавить комментарии и сантехник:

  1. Добавьте этот вспомогательный метод:

    log = (msg) -> console.log msg # вы будете получать файлы Vinyl в виде чанков transform = (file, cb) -> # читать и изменять содержимое файла # file.contents = new Buffer(String(file.contents)) + "некоторый измененный контент");

    # if there was some error, just pass as the first parameter here
    cb(null, file);
    

    # возврат карты вызовет вызов функции преобразования # для каждого полученного вами фрагмента (файла). И когда этот поток # получит сигнал 'end', он также закончится. # # Кроме того, вы хотите требовать event-stream где-нибудь еще. return eventStream.map(transform);

  2. метод журнала thw pipe между этапами задачи:

    gulp.task 'myTask', -> gulp.src myCss, base: myBase.pipe log "Получил css файлы!" .pipe concat 'app.css' .pipe log "concated css!!"

это написано в coffeescript, вы можете включить его в javascript здесь: http://js2coffee.org/

  1. создайте вспомогательный метод перехвата ошибок:

    catchError = (err) -> plugins.util.beep () # ref; console.log err

  2. добавить сантехника в плагины:

    gulp.task 'myTask', -> gulp.src myCss, base: myBase.pipe plugins.plumber errorHandler: catchError.pipe log "Получил css файлы!" .pipe concat 'app.css' .pipe log "concated css!!"

Готово!:)

Дополнительные ресурсы для проверки: gulp-print gulp-debug

Другие вопросы по тегам