Skip to content

t2vi/arrgh](https:

v0.1.1 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

Published 7d Media Servers
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Summary

AI summary

Updates What's new, Bug fixes, and Auto-routed across a mixed release.

Changes in this release

Feature Low

Adds nhentai source plugin for downloading doujinshis.

Adds nhentai source plugin for downloading doujinshis.

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Uses E-Hentai as metadata authority for titles with the hentai tag.

Uses E-Hentai as metadata authority for titles with the hentai tag.

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Implements source default_explicit flag for explicit sources (nhentai, e‑hentai).

Implements source default_explicit flag for explicit sources (nhentai, e‑hentai).

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Adds title_aliases table and migration 0032 for fuzzy source matching.

Adds title_aliases table and migration 0032 for fuzzy source matching.

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Introduces sync_warnings flag and per‑source unmatched warnings (migration 0033).

Introduces sync_warnings flag and per‑source unmatched warnings (migration 0033).

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Adds sync_log table and migration 0036 for live progress logging.

Adds sync_log table and migration 0036 for live progress logging.

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Adds API endpoint GET /api/titles/:id/sync-log to retrieve sync log entries.

Adds API endpoint GET /api/titles/:id/sync-log to retrieve sync log entries.

Source: llm_adapter@2026-05-28

Confidence: high

Feature Low

Shows live sync progress on library card and title detail page.

Shows live sync progress on library card and title detail page.

Source: granite4.1:30b@2026-05-28-audit

Confidence: low

Bugfix Medium

Fixes cover thumbnail fallback to MangaUpdates CDN when local file is missing.

Fixes cover thumbnail fallback to MangaUpdates CDN when local file is missing.

Source: llm_adapter@2026-05-28

Confidence: high

Bugfix Medium

Fixes relative download_dir override causing covers to be written to container filesystem instead of volume.

Fixes relative download_dir override causing covers to be written to container filesystem instead of volume.

Source: llm_adapter@2026-05-28

Confidence: high

Bugfix Medium

Fixes downloader to error on empty CBZ instead of writing an empty file.

Fixes downloader to error on empty CBZ instead of writing an empty file.

Source: llm_adapter@2026-05-28

Confidence: high

Bugfix Medium

Prevents FK crash when a title is deleted between sync response and background processing.

Prevents FK crash when a title is deleted between sync response and background processing.

Source: granite4.1:30b@2026-05-28-audit

Confidence: low

Bugfix Low

Handles MangaUpdates latest_releases 502 by deserializing null series_id as None.

Handles MangaUpdates latest_releases 502 by deserializing null series_id as None.

Source: granite4.1:30b@2026-05-28-audit

Confidence: low

Bugfix Low

Migrates titles mistakenly set to doujinshi content type back to manga.

Migrates titles mistakenly set to doujinshi content type back to manga.

Source: granite4.1:30b@2026-05-28-audit

Confidence: low

Full changelog

*ARRgh v0.1.1 — nhentai + Sync Progress + Cover Resilience

Released: 2026-05-28


What's new

nhentai source plugin

New plugin for downloading doujinshis from nhentai. Requires CloakBrowser (Cloudflare bypass).

  • Searches by title and gallery ID
  • Full chapter page download via CloakBrowser CDP
  • Auto-routed: titles with the hentai tag will match nhentai automatically (see source routing below)

E-Hentai as hentai metadata authority

For titles with the hentai tag, E-Hentai now provides covers, descriptions, and tags instead of MangaUpdates (see ADR 0021). MangaUpdates remains the authority for all other content types.

Hentai source routing

Sources now declare default_explicit via their /info endpoint. During source matching, explicit sources (nhentai, e-hentai) are only tried for titles with the hentai tag, and non-explicit sources are skipped for them. This prevents false matches and keeps the correct sources in the pool.

Title aliases (associated names)

MangaUpdates associated names are now fetched and stored per title (title_aliases table, migration 0032). The source-matching algorithm checks all aliases — a title that's known as "Berserk" in one source and "ベルセルク" in another will now match correctly.

Sync warnings

When source matching completes but one or more sources couldn't be matched, the title gets a has_sync_warnings flag. An amber ! badge appears on the library card. Clicking the title and re-syncing (after refreshing metadata) will retry the match.

Sync progress log

Adding a title (or manually re-syncing) now shows live progress instead of a static "Building…" spinner.

  • Library card — overlay updates in real time: "Searching MangaDex…", "Matched in Comick: …", "Synced 383 chapters from comick", etc. Card is always clickable while building.
  • Title detail page — "Last Sync" panel shows the full step history. Collapsed by default; click to expand. Cleared at the start of each new sync.
  • Synopsis — also collapsed by default to reduce visual noise.

Implementation: sync_log table (migration 0036), append-only per sync run, polled every 2 s. See ADR 0022.

Favicon + branding

Skull pirate icon now appears in browser tabs, bookmarks, and home screen shortcuts for both the web app and the docs site. The docs site hero now shows the logo above the title.


New API endpoints

| Method | Path | Description |
|--------|------|-------------|
| GET | /api/titles/:id/sync-log | Sync log entries for a title in insertion order |


Bug fixes

  • Cover thumbnails after rebuildGET /api/media/cover/:id now falls back to the cached MangaUpdates CDN URL when the local file is missing, then restores it to the DB. Previously a missing file would permanently null out cover_url.
  • Relative download_dir overrideserver_settings.download_dir is ignored when it is a relative path (e.g. ./downloads). A relative path caused covers to land in the container filesystem layer (not the volume), disappearing on every image rebuild.
  • Downloader empty CBZ — downloader now fails with an error instead of writing an empty .cbz when a source returns 0 pages.
  • Sync FK crash — if a title is deleted between the POST /titles/:id/sync 202 response and the background spawn executing, the spawn now exits cleanly instead of crashing with a FK constraint error.
  • MangaUpdates latest_releases 502releases/search API can return null for series_id; now deserialized as None without an error.
  • doujinshi content_type — titles accidentally set to doujinshi migrated back to manga (migration 0034).

DB migrations

| # | Name | Change |
|---|------|--------|
| 0032 | title_aliases | Stores MangaUpdates associated names for fuzzy source matching |
| 0033 | sync_warnings | Per-title, per-source unmatched warning flags |
| 0034 | revert_doujinshi_content_type | doujinshimanga data fix |
| 0035 | source_default_explicit | external_sources.default_explicit column |
| 0036 | sync_log | Append-only per-sync progress log |


Upgrading

docker compose pull
docker compose up -d

All 5 migrations run automatically on startup. No breaking API changes.

Fix existing broken thumbnails: covers nulled out by the old behaviour self-heal on first page load — serve_cover now redirects to the MangaUpdates CDN URL automatically.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track t2vi/arrgh](https:

Get notified when new releases ship.

Sign up free

About t2vi/arrgh](https:

All releases →

Related context

Earlier breaking changes

  • v0.1.13 Removes the single `/api/discover/trending` endpoint; clients must use lane‑specific endpoints.
  • v0.1.13 Removes `MangaFire` source entirely, including plugin and related code.
  • v0.1.2 Rust/Axum server removed; replaced with .NET 9 ASP.NET Core Minimal API implementation.
  • v.0.0.9 Drops manga.source and chapters.source_id columns from schema.

Beta — feedback welcome: [email protected]