Releases: jmacdotorg/plerd
Release list
1.903
-
Open Graph metadata tags are now generated for any post that has an associated image (its own, or the blog-wide fallback image), whether or not the blog configures a
facebook_id. This makes link previews work out of the box on Discord, Slack, Mastodon, and other services that read Open Graph data. -
Twitter Card support is no longer scaffolded or documented. The
twitter_iddirective still works, but it has been removed from the sample configuration file, since Open Graph metadata already drives link previews on X as well as everywhere else. -
The
plerdall --initsuccess message now points to the configuration file's real location (conf/plerd.conf), rather than a nonexistent path in the working directory's root. -
Fixed a test whose expected result depended on the local time zone, causing spurious failures when the suite ran anywhere west of US Eastern.
-
Revised and refreshed the README documentation.
1.902
Maintenance release — bug fixes on top of 1.901.
Changes
- CRLF source files. Source files with Windows (CRLF) line endings are now normalized to LF throughout. Previously the in-place source rewrite left the body with CRLF line endings (mixed with LF metadata).
- Missing
tags.tt. Publishing no longer dies when the optionaltags.tttemplate is absent, so a blog with no tags can publish without it. - Emoji-only titles. Posts whose titles consist entirely of characters that can't appear in a filename (such as emoji) no longer collide on a single
YYYY-MM-DD-.htmlname; each now gets a distinct, stable filename derived from a hash of its title. index.htmlsymlink. Thedocroot/index.htmlsymlink now targetsrecent.htmlby basename rather than an absolute path, so it keeps working when the blog's docroot is moved or served from a different location.- Consistent post ordering. Full and incremental publishing now share one ordering rule (date-descending, then basename-ascending), so the two paths can no longer disagree about ordering. Output order is unchanged.
Distribution on CPAN: https://metacpan.org/release/JMAC/Plerd-1.902
1.901
Maintenance release — a docs/packaging fix on top of 1.900.
Changes
- Fixed README generation. The CI badge and an "install Sweat" copy-paste typo are now corrected at the
README.podsource, sinceREADME.mdis generated from it by Minilla. (A prior release had regeneratedREADME.mdfrom a staleREADME.pod, which silently dropped the badge and reintroduced a 2020 typo.)
Distribution on CPAN: https://metacpan.org/release/JMAC/Plerd-1.901
1.900
First release since v1.820 (2019). The headline change is incremental publishing; this is also the release that promotes webmention sending to a supported feature and removes experimental webmention storage (spun off into Whim).
Highlights
- Incremental publishing.
plerdwatchernow republishes incrementally on a source change, falling back to a full rebuild only when a change can affect shared pages (recent/archive/tag pages and feeds). This scales far better as a blog's archive grows. - Atomic writes. All generated files are now written atomically (rendered to a temp file, then renamed into place), so a web server never serves a half-written or empty file, and a failed render leaves the previous file intact.
- Webmention sending promoted from experimental to a supported feature.
- Webmention storage removed. The experimental support for receiving/storing webmentions is gone (it lives on in the separate Whim project).
Other changes
- HTML is now stripped from JSON Feed titles.
- Fixed a bug that would sometimes list a post twice on a tag page.
- The default post template now shows a "Previous post" link in list view when older posts exist.
- Trailing whitespace is now stripped from metadata values.
- Assorted correctness and robustness fixes (with added tests), and hardened
index.htmlsymlink creation. - Declared
Digest::MD5andJSONas dependencies. - Now requires DateTime 1.54 or later; older versions could round-trip a post's W3C
timevalue into an unparseable form. Thanks to Olivier Auverlot for the report. - Continuous integration moved from the defunct Travis CI to GitHub Actions (Perl 5.32 / 5.36 / 5.40).
Distribution on CPAN: https://metacpan.org/release/JMAC/Plerd-1.900
v1.820
-
Adding SSL support to Plerdwatcher.
-
Displayed webmentions are now sorted by time they were published (versus the time they were received).
-
Adding a trivial default handler on the webmention listener.
-
Plerd now emits an intentional warning on publication if the blog contains tags that are identical except for case.
v1.601
-
Fixing a bug that prevented the Webmention-receiving plerdwatcher process from accepting webmentions for posts created after it launched.
-
Adding a (commented-out)
<link rel="webmention [...] />element to the set of sample templates. (Thanks to Karen Cravens for the bug report.) -
Separating the display of replies versus uncategorized webmentions, in the sample templates.
-
Retroactively adding a bunch of entries to the 1.6 Changelog entry that I forgot about in the excitement of the Webmention stuff.
v1.6
-
Adding experimental support for Webmention sending, receiving, and display.
-
If a template fails to process, Plerd will now die with a meaningful error message.
-
Adding a post_with_url method to Plerd objects.
-
Adding Microformats2 metadata to the sample templates.
v1.55
- Fixed a bug where higher-than-ASCII characters could get double-encoded in certain contexts.
v1.54
-
Improving how Plerd handles UTF-8 source and template files. (Much like v1.44, except I think I got it right this time.)
-
Adding mention of v1.52's alt-text improvement to the documentation.
v1.53
-
Fixing a bug where Markdown symbols, if present in the first paragraph of a post's source file, would appear in default social-media description tags.
-
Now requiring a minimum HTML::SocialMeta version.