4 ms·
An asset pipeline (and templatized at that) is being added to Hugo as we speak. Just Sass support to begin with but more later. Once that’s added the reasons to
by biggestlou 8y ago
An asset pipeline (and templatized at that) is being added to Hugo as we speak. Just Sass support to begin with but more later. Once that’s added the reasons to use Jekyll, which is essentially abandonware, will shrink to zero.
- tny 8y agoWhy do you say that Jekyll is abandonware?
- giancarlostoro 8y agoI'm curious about this too considering GitHub uses it for GitHub pages, I would assume they have a vested interest in maintaining Jekyll even if they had to fork it to improve upon it.
- nickjj 8y agomd5 tagging at the Hugo level has been talked about since 2014 and it's still no where on the horizon. If SASS support still isn't out yet, who knows how long "later" is. > Once that’s added the reasons to use Jekyll, which is essentially abandonware, will shrink to zero. They are working hard on Jekyll 4.x and huge sites like Docker's documentation[0] use Jekyll. I'd still feel comfortable using it today. It really comes down to preference IMO. Jekyll is more than adequate to use for a blog or large site. If you like liquid's template engine and enjoy having the ability to write plugins in Ruby then it's a good match. [0]: https://github.com/docker/docker.github.io https://github.com/docker/docker.github.io
- benatkin 8y agoIf you have a CDN or Varnish, they can provide eTags, and you don't need an md5 in the URL, except to save the browser from doing a GET request and getting a 304 Not Modified. A few Not Modified requests served by a fast server is worth the tradeoff of not having to deal with an asset pipeline, or worse, overly aggressive caching, which is common in asset pipeline environments where the cache settings designed for md5 tagged assets inevitably get applied to non-tagged assets.
- qw 8y agoThat would cause issues when deploying new versions. Even if the CDN or Varnish serves an updated etag, the browsers could potentially keep using an older version from its cache. Not what you want when you just fixed important bugs. This has happened to me, even without aggressive caching. I suspect that even if you told the browser to revalidate on each request, you would end up in situations where the browser ignores it or is overruled by a corporate proxy. With a md5 in the URL, the browser would be forced to make a new request.
- benatkin 8y agoI've seen that happen, but I've seen people reset their browser caches because of misconfigured aggressive caching much more often. IMO max-age=0, must-revalidate is a much better choice for the average website/blog owner. For complex apps, setting up the asset pipeline can be worth the tradeoff. But Hugo is hardly a lower tier static site generator for not supporting this.
- nickjj 8y agoYou can't shoot yourself in the foot with the md5 tagging approach. It completely solves cache invalidation in a simple way. That's why it's so popular. When the content of your file changes you get a completely new file which has no cache headers associated to it. Then nginx caches the file forever, and when you make a change, a new file is created and the process repeats but if you don't make a change, then the same file is served from the user's local cache.
- kaushalmodi 8y ago> md5 tagging at the Hugo level has been talked about since 2014 and it's still no where on the horizon. If SASS support still isn't out yet, who knows how long "later" is. As someone who follows Hugo development closely, I wouldn't be surprised if both md5 tagging (fingerprinting) and sass support is out in the next week :) See the Hugo Discourse for more details.
- veidr 8y agoSpecifically: https://discourse.gohugo.io/t/coming-soon-sass-support-and-more/12429 https://discourse.gohugo.io/t/coming-soon-sass-support-and-m...
- kipari 8y ago> which is essentially abandonware Could you please expand on this? This seems like something that requires a source.
- nicoburns 8y agoOo, that will be awesome. I use hugo for my personal website, and currently run the node-sass cli separately.
- edem 8y agoThe reasons to use hugo are negative. I only have cons to it.