-
Notifications
You must be signed in to change notification settings - Fork 37
Make the kickstarter fast again for it's main purpose: development #42
Comments
Thanks for your feedback. Good idea to reconsider and perhaps restructure the tasks … |
@krnlde But I don’t address your complaints against download and 1. dev taskThe before:
After getting rid of after:
Not a big win 😞 But hej, it’s almost a half of a second. So I did the change with 39150d3. I don’t see any other enhancement possibilities within the |
2. build taskThe
Are there any task we could remove here but keep them in the release tasks? I guess the following are valid candidates:
Which would take the BUT that means that when people don’t use the release tasks they won’t have optimized images. This isn’t a problem for me personally. Because I do use the release tasks. But I’d like to get feedback from @krnlde @mfroehner @uschmidt and @revrng |
Thanks for breaking down the times spent on each task. I think not each task itself is a problem (still it is good that plato and jsdoc are removed for dev), no I think the problem is that the tasks are executed sequentially despite not having any dependencies on each other, except for
|
Ahh. Good point 👌 Yes there is something called grunt-concurrent which I’ve never used. But I’ll give it a try 😏 |
With gulp it would be really really easy and bulletproof at the same time 💨 |
😆 Without a doubt. But You would need some extra effort to run tasks synchronously which are depending on each other And I don’t want this discussion to drift into the direction Gulp vs. Grunt vs. Broccoli vs. Brunch vs. Webpack. Although I’m open to switch to Gulp – in case it makes sense! But like I mentioned before this is not the issue to talk about switching from Grunt to Gulp. Feel free to open another issue if you like to discuss this |
run-sequence is your friend anywhere you need sequencial pipes. Sure anyone can rebuild that, but - speaking for myself - I currently don't have the time to build the exact same pipeline in gulp you built in grunt. Because it is really time-consuming copycatting the exact options and look for differences in every task rather than building a detached (new) one just focusing on getting the best out of pipes and parallelism. That being said, I really would love to see how the grunt-concurrent task works out, because it uses real cores for every concurrent task, which should be a HUGE impact in terms of performance. Also the API looks nice and understandable. |
Back to topic …
Using grunt-concurrent makes things worse. I changed the before:
after:
😱 It felt to me that the concurrent task hat something like an initial »boot time«. @sindresorhus describes the problem over here:
Seems to be a architectural problem with Grunt – compared to Gulp 😦 |
👎 child_processes don't need that much time (like seconds) to start, aaand they should speed up the computation to run everything in parallel despite having a slower start :-/ Mhm... I guess we stick to the pipeline as it is right now then... |
Jep. I have no clue what’s going on there 😥 |
Closing this for now. |
😿 |
The main problem is not spawning child processes, but that grunt is incredible slow to start up. |
@sindresorhus Thanks for your feedback :unicorn_face: |
I experience huge loads each time I'm downloading, installing, starting and running the kickstarter project. Most of the tasks that run for development aren't per se necessary at the beginning of a project. Sure we need reports, sure we need imagemin and all that sorts of stuff. But, as the name quotes, a kick-ass start would be the biggest gainer :)
What do you think @mischah ?
The text was updated successfully, but these errors were encountered: