Skip to content

Publisher hostname fallback - #3139

Merged
dteviot merged 2 commits into
dteviot:ExperimentalTabModefrom
beebutler:publisher-hostname-fallback
Nov 11, 2026
Merged

dteviot merged 2 commits into
dteviot:ExperimentalTabModefrom
beebutler:publisher-hostname-fallback

Conversation

@beebutler

Copy link
Copy Markdown
Contributor

Summary

This change automatically populates the Publisher field using the source website's hostname when og:site_name metadata is missing or empty.

Existing publisher metadata is preserved, and the field remains editable.

Related to #3132.

Changes

  • Preserve the website's existing og:site_name when available.
  • Fall back to the source hostname when publisher metadata is missing or blank.
  • Handle non-HTTP(S) URLs safely.
  • Add four regression tests covering these scenarios.

Testing

  • npm run lint — passed.
  • QUnit — 695 assertions passed, 0 failed.
  • Verified the fallback in Chrome using controlled test pages.
  • Generated EPUBs and confirmed the Publisher metadata in Calibre.
  • Successfully retested after restarting Chrome.

Additional context

I originally encountered this issue while experimenting with a locally adapted parser for an independent archive running AO3/OTW-based software during the ongoing AO3 outage.

I deliberately haven't requested official support for that archive. Its volunteer administrator has been dealing with harassment and server-load concerns, and I don't want to bring additional attention or traffic to the site without their approval.

That experimentation led me to investigate how WebToEpub handles Publisher metadata when og:site_name is unavailable.

This pull request addresses the general metadata issue and does not include the custom parser.

Thank you for considering this contribution.

@dteviot
dteviot merged commit 3bebda1 into dteviot:ExperimentalTabMode Nov 11, 2026
1 check passed
@dteviot

dteviot commented Nov 11, 2026

Copy link
Copy Markdown
Owner

@beebutler
Thank you for your contribution.
You missed adding yourself to the credits, but I've taken care of that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants