С переходом gulp c 3 версии на 4 изменился синтаксис. Если в 3 версии можно было указывать в [] скобках какие функции выполнять месте с таском , то в 4 версии для этого появились специальные функции gulp.series (для последовательного выполнения) и gulp.parallel (для параллельного). Т.е вот такая запись
gulp.task('watch', ['browser-sync', 'css-libs', 'scripts'], function(){
gulp.watch('app/sass/**/*.scss', ['sass']);
gulp.watch('app/*.html', browserSync.reload);
gulp.watch('app/js/*.js', browserSync.reload);
});
заменяется на такую
gulp.task('watch', gulp.parallel('browser-sync', 'css-libs', 'scripts'), function(){
gulp.watch('app/sass/**/*.scss', gulp.parallel('sass'));
gulp.watch('app/*.html', browserSync.reload);
gulp.watch('app/js/*.js', browserSync.reload);
});
А также в 3 версии можно было ссылаться на функцию в любой части кода, то в 4 версии, чтобы на нее ссылаться, она должна быть создана выше. Иначе появится ошибка "Task never defined: task_name".