Hacker Newsnew | past | comments | ask | show | jobs | submit | aymericbeaumet's commentslogin

OP here, thanks for the amazing comments. Some nice projects to look into!

As much as I love z, I'm also a fan of fzf, both are really complementary. I'm using this little piece of code (not from me, but cannot find the original source) to fallback to fuzzy search when z fails to find a result or when no args are given:

  unalias z &> /dev/null
  z() {
    [ $# -gt 0 ] && _z "$*" && return
    cd "$(_z -l 2>&1 | fzf --nth 2.. +s --tac --query "${*##-* }" | sed 's/^[0-9,.]* *//')" || exit 1
  }
I also use this approach in a few other places in my workflow (git checkout, vim, etc). Expect a blog post covering this in the near future.


Is Duo smart enough to remember when it finds a library requirement with a specific tag? So that it is not necessary to indicate the tag on the other places where this same library is required.

If so, manifests could be written in a very neat way. See: https://gist.github.com/aymericbeaumet/22c3a9deba54549821e3


You could also just export from each of the requires in that manifest.js file you have there.

Although there's no real benefit of doing that over using the manifest other than it's kinda cool :)


A one could indeed export its requires. However, my idea was was to stay close to the require caching system existing in Node.

As a personal taste, I by far prefer to configure my application in a JavaScript file rather than a JSON file. And I consider dependencies as a part of the configuration process. It agrees with the Duo philosophy which aims to simplify the building process from A to Z.


That is a pretty cool idea! I wouldn't have even thought to do that


Even though they are clearly related, Gulp and Grunt are fulfilling different purposes. You should carefully examined your needs before choosing one over another.

I recently switched to Gulp for several projects, and I'm thinking of switching back to Grunt.

Gulp lacks of some important features. For instance, it does not allow to sequentially execute tasks: everything is done in parallel. This could for sure be emulated by using async, but the overhead is not worth it.

On the other side, Grunt does support sequential and parallel tasks execution, but is more verbose and does a lot of file writing on the disk (though it is relatively moderate).

One concrete example for sequential tasks execution (easily done with Grunt):

- Watch JavaScript files, when a modifications is detected:

  - lint files -> [JSHint, JSCS]

  - if success: launch tests -> [Karma, Mocha]

  - if success: notify
- If any failure occurs: notify and abort the sequence


> it does not allow to sequentially execute tasks: everything is done in parallel

There's a package[1] for Gulp which does exactly that.

[1]: https://www.npmjs.org/package/run-sequence


I didn't know about it! Thanks


We're adding the ability to handle sequential tasks (and other cool combinations) in Gulp 4. See bach[1] for some ideas.

[1]: https://github.com/phated/bach


I remember some discussions on Gulp's issues tracker where maintainers were reticent about integrating sequential tasks execution.

But that's great if you are going to do it. This may make me come around and give a second chance to Gulp.


There are ways, like others have said. There is also a callback system you can use to make things sequential, but last time I looked it wasn't well documented


There are always ways. But I find Grunt much more handy to do it.


"For instance, it does not allow to sequentially execute tasks: everything is done in parallel."

This is false. You can set perquisites for a task, which will be executed in sequence.


I think you are talking about this[1], indeed you are right.

However, task dependencies allows sequential tasks execution, but that's not very handy as you may want a same task to be executed in two different sequences.

Let's see a simple example on which I honestly struggle to reproduce with Gulp:

  [Lint, Test] -> Concatenation -> Minification

  Watch -> [Lint, Test] -> LiveReload
How would you do such a setup without having a redundancy in your tasks declaration?

[1]: https://github.com/gulpjs/gulp/blob/master/docs/recipes/runn...


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: