Skip to content

Releases: jmacdotorg/plerd

1.903

Choose a tag to compare

@jmacdotorg jmacdotorg released this 26 Jun 01:49
  • 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_id directive 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 --init success 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 23 Jun 22:40

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 optional tags.tt template 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-.html name; each now gets a distinct, stable filename derived from a hash of its title.
  • index.html symlink. The docroot/index.html symlink now targets recent.html by 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 21 Jun 22:50

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.pod source, since README.md is generated from it by Minilla. (A prior release had regenerated README.md from a stale README.pod, which silently dropped the badge and reintroduced a 2020 typo.)

Distribution on CPAN: https://metacpan.org/release/JMAC/Plerd-1.901

1.900

Choose a tag to compare

@jmacdotorg jmacdotorg released this 21 Jun 22:50

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. plerdwatcher now 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.html symlink creation.
  • Declared Digest::MD5 and JSON as dependencies.
  • Now requires DateTime 1.54 or later; older versions could round-trip a post's W3C time value 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 26 Dec 04:26
  • 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 11 Aug 18:35
  • 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 06 Aug 01:24
  • 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 19 Mar 19:55
  • Fixed a bug where higher-than-ASCII characters could get double-encoded in certain contexts.

v1.54

Choose a tag to compare

@jmacdotorg jmacdotorg released this 17 Feb 23:41
  • 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

Choose a tag to compare

@jmacdotorg jmacdotorg released this 29 Oct 19:39
  • 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.