I use gulp-notify
to trigger notifications when tasks complete. If a task is ran standalone, a notification for that specific task is triggered. If a task is ran as a dependency of another task, a notification for all dependencies is triggered.
In gulp@3, I check if the task is being called as a dependency using gulp.seq
, which contains an array of the tasks being ran. Let's say I have three tasks: default
, styles
, and scripts
, with the later two set as dependencies of the first. When running gulp styles
, gulp.seq
will contain [ 'styles' ]
. When running gulp
(the default task), gulp.seq
will contain [ 'styles', 'scripts', 'default' ]
. Knowing that, I then check gulp.seq.indexOf("styles") > gulp.seq.indexOf("default")
, which tells me weather or not styles
was ran as part of the default
task.
With gulp@4, it appears that gulp.seq
no longer exists. I've tried digging through the documentation and source code with no luck. It seems like gulp.tree({ deep:true })
(docs) might be what I'm looking for, but I don't see anything in it that returns anything useful.
Is there an equivalent of gulp.seq
in gulp@4?
Through a bit of luck, I discovered this was possible via the module yargs, which I already have installed.
When running
gulp styles
, for example, I can checkargv._.indexOf("styles") > -1
, as it contains['styles']
. When runninggulp
(i.e the default task), it contains[]
. In my testing, this works perfectly for my use case.