Googling for upgrading octopress gave me my own article as the second match. It’s always a great reason to blog and have your notes indexed by Google!
I ran into one difficult issue with the upgrade. The issue was the very frustrating:
bin/ruby_executable_hooks:15: stack level too deep (SystemStackError)
How did I solve the problem?
Naturally the first thing to do is to google the error message. That was not particularly helpful.
Since I assumed that this problem would be pretty specific to my Octopress site, I guessed that the issue was related to a rogue Jekyll plugin.
I moved all my plugins that were not part of standard Octopress into a
/plugins_removed
directory, and then added back my plugins one at a time. That
helped me narrow down the issue to the jekyll_alias_generator
plugin, which
sets up redirects when you change the URL of a published blog articles.
Then I clicked on the Issues icon for the jekyll_alias_generator and searched for stack level too deep and BINGO!
And here’s the solution: Stack level too deep error #14, which is to replace
lines 73-75 in alias_generator.rb
with this code:
Update: rather than using the AliasGenerator plugin, use: jekyll/jekyll-redirect-from
Another issue I hit was that I had a few template files that were using
layout: nil
This results in errors like:
Build Warning: Layout 'nil' requested in atom.xml does not exist.
This got changed in the recent version of Jekyll to use null
, like this:
layout: null
So grep your files for layout: nil
and change those to layout: null
.
This is a companion discussion topic for the original entry at http://www.railsonmaui.com//blog/2014/09/28/updating-to-jekyll-2-and-discourse-for-comments/