“All parts should go together without forcing. You must remember that the parts you are reassembling were disassembled by you. Therefore, if you can’t get them together again, there must be a reason. By all means, do not use a hammer.” — IBM Manual, 1925
- IBM Manual 1925
How Do I Do That, Again?
I decided to change the avatar on the blog. The problem was, I hadn’t messed with it in a while.
Nothing obvious jumped out while browsing the Chirpy theme documentation. The _config.yml file was referenced a lot.
Looking at _config.yml in VSCode showed basic configuration options. The avatar option was here along with the URL for the old image. I replaced the URL with a link to the new picture, saved the file and committed the change to Github.
Failed Build
While the Github Action ran I went and made some coffee. When I got back I saw the action had failed.
Github action build failure
The details showed the error had something to do with Ruby. I know nothing about Ruby. Luckily, the error was straightfoward and included a fix.
Asking for a specific platform
Looks a particular platform was being asked for, specifically, x86_64-linux. This needed to be added to a lockfile. I was only aware of one file that sounded relevant, Gemfile.lock. I found the relevant platform section inside Gemfile.lock and saw the platform included in the error, x64-mingw-ucrt.
The error gave a CLI command to add the missing platform to the file. I manually added x86_64-linux on a new line in the Gemfile.lock, assuming this is what the CLI command was doing. Once the new platform had been added to the lockfile I made the commit and watched the action run.
Action running…
So far so good.
Action looks good so far…
But… the action failed again.
Action failed again
Now what?
Liquid what?
Liquid Exception: undefined method ‘tainted?’. Huh? No idea. A quick Google search took me back to Github, specifically, an Issues page where someone was reporting a very similar error. Reading through the comments it turned out to be an incompatibility issue with Liquid 4.0.3 and Ruby 3.2.0.
Liquid and Ruby incompatibility
Someone recommended a fix, code to add to the Gemfile. The code looks like it is forcing Liquid version 4.0.4 or greater. I opened up Gemfile and added the code to the bottom of as suggested.
Forcing Liquid version
Save. Comment. Commit. Watch.
Watching action run again
The Action ran successfully!
Action ran successfully!
Phew, that was a lot of work to just change an avatar image. Time to check out the page and verify the new image is there.
*sigh*
Still blank. Forced a page refresh, tried a different browser, etc. Still blank. Maybe it was the new CDN I switched to for the new image? Out of curiosity, I decided to try a direct link to the Jekyll logo.
I then added the link to the _config.yml file.
Save. Comment. Commit. Watch.
Okay so the direct link worked. I decided to upload my avatar to Imgur this time.
Save. Comment. Commit. Watch.
New avatar finally working
Finally!