I’m trying to migrate my personal blog from Jekyll & GH Pages to Bridgetown & DO App Engine and I’m having severe issues with Bridgetown and I’d like some tips on resolving that

I read upon the whole page: https://www.bridgetownrb.com/docs/migrating/jekyll

However, there’s one thing that this page doesn’t cover at all: backward compatibility

The thing is: the links are already out there. You can find the links to my blog on multiple resources outside my control – and folks sometimes do access the links. So I’d like to preserve the same behavior I had previously. I’d like my posts to be available at the same links as before – even though the engine has changed

That includes the expectation that I won’t be adding new ways to generate and access those links: I’d like those to freeze in time.

and that’s what I can’t seem to find

Here’s the previous behavior:

  1. Most of the pages were shared with .html extension
  2. One of the pages was shared without the .html extension, being a directory
  3. Folks might, in theory, access all pages without the .html extension. Doesn’t happen in practice, though

So I’d like to preserve behaviors 1 and 2. What that means is that I’d like the old posts to have the same URL, being year-mm-dd-slug.html. However, I’ve come to find that no matter how hard I try to patch permalink behavior, Bridgetown cuts off .html

I’ve come to find that there’s code which unconditionally strips HTML from URLs in a resource: https://github.com/bridgetownrb/bridgetown/blob/622b9445886bceb2faccbf74e787115b500dc3c7/bridgetown-core/lib/bridgetown-core/resource/base.rb#L376

and I can’t seem to be able to access raw, unfiltered URLs

what can I do here?