So I decided to update jekyll to version 3.0 yesterday… What could possibly go wrong? Well… a lot!

Installation of the new jekyll version via gem update was no problem. I made some modifications to the links section of this blog, commited these changes to git and pushed it all to the server. Just as I always do. But when I open the browser for a live view of the changes, I was baffled: all internal links were broken! The URLs didn’t have any extensions, so what used to be /links.html became just /links. And lighttpd doesn’t automatically handle extensionless URLs. Furthermore, all blog posts had just a blank styling, no CSS whatsoever. The links for CSS resources went nowhere, somehow skipping a directory in the path to the relevant files.

What happened? I have no idea. Some changes seem to have been made between jekyll version 2.5.3 and 3.0.0 which broke my trusted workflow. Extensionless URLs have some advantages regarding Permalinks, but not if you are taken by surprise! And it still doesn’t explain what happened to the CSS resources in the blog posts. But I surely did learn something:

  • NEVER, NEVER, NEVER blindly update software vital to your workflow! Read release notes!

  • Always test the result before going life!

  • And keep backups. Just in case you ignored the previous two advices and your pants catch fire.

I will update this post, if I find the reasons for these strange problems. And maybe I will finally learn how to use lighttpd’s url.rewrite() properly.

UPDATE (27.01.2016): The issue with CSS (and other assets) paths failing seems to be universal with jekyll 3.0.0 and has been reported.

blog comments powered by Disqus


19 January 2016