The GitHub CI Actions for my favorite open-source project, the bookmarking service Shaarli, started failing recently. No one was quite sure why, especially because there hadn’t been any significant updates to the tests, and they passed locally for all the developers who ran them. I had a small pull request that was failing as well, so I thought I would give fixing the actions a shot.
Recent Posts
-
Debugging GitHub CI Actions
-
The Perl and Raku Conference 2024 - Las Vegas
I was fortunate enough to attend my very first in-person Perl conference this year in Las Vegas! Ironically my first real exposure to Perl was almost 30 years (!!) ago when I read Learning Perl on a plane to Vegas!
It was great to finally meet so many wonderful people that I felt I already knew through using their software and watching conference talks from prior years. Here were the highlights of the conference for me.
-
Changelog/JS Party Podcast on Node.js Notes
Episode 294 of JS Party is titled Reports of Node’s death are greatly exaggerated and features two members of the Node Technical Steering Committee: Matteo Collina and James Snell. Their perspective on the project (and software development in general) was insightful, especially some of the challenges they face.
-
Excerpts for Eleventy: My Implementation
Converting my relatively basic personal website to Eleventy has shown me how challenging it is to build a static-site generator flexible enough to satisfy all the user cases and requirements. The great thing about Eleventy is being simultaneously opinionated by default and yet extremely flexible and customizable.
One area where everyone seems to have different requirements are reproducing blog post excerpts on the site’s home page. Here are my wants:
- By default, use the start of the content (up to a delimiter)
- Optionally, define the excerpt in the front matter configuration
- Markdown is parsed exactly the same as the original post
- Include images but allow custom styling on the home page
- Syntax highlighting
Here is how I implemented each of the requirements.
-
UTC/Local Date Conversion in Perl With Time::Piece
Time::Piece
is my preferred perl module for handling dates. Here is how it can be used to convert between UTC and the local time, even for past dates which may have crossed the current daylight savings time status. -
Excalidraw: Add Padding Around Exported Image
My favorite app for creating diagrams is excalidraw. It is a free, open-source, web application that has all the features necessary to quickly create almost any kind of workflow image. The user interface is terrific and easily grokked by anyone familiar with drawing apps. You can export images in either SVG or PNG formats.
There was only one thing that bothered me about the app. When images are exported, there is no padding or margins around the image, which can make them hard to work with. I wasn’t the only one with the issue and someone opened a github issue to discuss possible solutions. In the end, the issue was closed without a resolution, because there didn’t seem to be a generic solution that would please everyone.