• 0.4.1 06a177afdc

    0.4.1
    All checks were successful
    / pr-review (push) Has been skipped
    / gitleaks (push) Successful in 17s
    / checks (push) Successful in 1m38s
    / publish (push) Has been skipped
    / pr-review (release) Has been skipped
    / gitleaks (release) Successful in 15s
    / deploy-docs (push) Successful in 1m7s
    / checks (release) Successful in 1m39s
    / deploy-docs (release) Has been skipped
    / publish (release) Successful in 27s
    Stable

    marvin8 released this 2026-08-29 23:27:15 +00:00 | 0 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:B4Q+9pbWSIqGYTl3Ub/FPrBSqAVd2OkCR13hYRG5wek

    [0.4.1] - 2026-08-30

    Commits

    • ⬆️ bump deps e348155
    • 📝 reset Release-Notes.md for next release ff5abaa
    Downloads
  • 0.4.0 b61b81474b

    0.4.0
    All checks were successful
    / pr-review (push) Has been skipped
    / gitleaks (push) Successful in 18s
    / pr-review (release) Has been skipped
    / gitleaks (release) Successful in 18s
    / checks (push) Successful in 2m40s
    / publish (push) Has been skipped
    / checks (release) Successful in 2m26s
    / deploy-docs (release) Has been skipped
    / publish (release) Successful in 30s
    / deploy-docs (push) Successful in 1m18s
    Stable

    marvin8 released this 2026-08-20 09:59:06 +00:00 | 4 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:B4Q+9pbWSIqGYTl3Ub/FPrBSqAVd2OkCR13hYRG5wek

    [0.4.0] - 2026-08-20

    • Same-date episodes now sort in a stable, deterministic order.
    • Generated opml.xml now includes a dateModified timestamp.
    • Episode chapters are now exposed via Podcast 2.0 (<podcast:chapters>).
    • Invalid parent_dir and base_url now fail with clear, actionable errors.

    Commits

    • 🔧 add config to automatically update version number in Release-Notes.md on release 3e4cf89
    • 🔀 Merge branch 'feat/issue-31-podcast-chapters' 1f0a82f
    • ✏️ clarify chapters sidecar naming and location in docs db9c3e4
    • 🔥 remove superseded concept.md and improvements.md 4ca6b34
    • 📝 document chapters in integration guide, README, and AGENTS.md b04fe68
    • ✏️ clarify chapters docs wording 7afa833
    • 🐛 harden chapters parsing against malformed info.json shapes b632164
    • ✏️ clarify chapters emitted only when non-empty 6b9feb8
    • emit Podcast 2.0 chapters from ytdl-sub info.json be6f3a6
    • 🔀 Merge branch 'feat/issue-30-documentation' 9888a06
    • 📝 docs: record concept decisions, update integration guide, add README example and troubleshooting 3c62a2e
    • 🔀 Merge branch 'feat/issue-29-edge-case-tests' 1e4d3da
    • create placeholder audio files in the 100+ episodes test 8e036f7
    • add edge-case tests for emoji, BOM, long titles, and 100+ episodes a05339d
    • 🔀 Merge branch 'feat/issue-28-feed-opml-metadata' b4ba927
    • ✏️ reword width/height item as a decision, not an addition 411e5f5
    • 📝 mark completed improvements; add OPML metadata release notes ca70d2e
    • 🔥 omit hardcoded itunes:image dimensions (per #28 decision) 47a3cbc
    • 🐛 use locale-independent format_datetime for OPML dateModified 9db1f9d
    • add itunes:image dimensions, OPML dateModified, and missing-feed warning 1eb3ba9
    • 🔀 Merge branch 'feat/issue-27-deterministic-sort-url-helper' 628ee94
    • 🔧 align pre-commit revs with pyproject and bump zaojun to 1.7.4 c8d11f3
    • ✏️ clarify release notes antecedent 5fbfa24
    • ⬆️ deps: bump cyclopts, complexipy, prek, ruff, ty, uv e369154
    • 📝 add release notes for deterministic episode ordering 078ace4
    • ♻️ extract shared URL-building helpers into urls.py 354d7e9
    • 🐛 sort same-date episodes deterministically by filename 790bd2b
    • 🔀 Merge branch 'feat/issue-26-cli-validation' e921d50
    • add coverage for lowercase http:// base_url a2445c5
    • assert actionable message in invalid-port test a54ffe3
    • 🐛 reject whitespace hosts and invalid ports in base_url c31383e
    • 🐛 validate hostname not netloc, rejecting empty and whitespace hosts 035823c
    • 🐛 require a host in base_url, rejecting hostless http(s):// URLs 415247d
    • 🐛 normalize base_url scheme check to be case-insensitive b8297e5
    • validate parent_dir and base_url with actionable errors ddd26ca
    • 🔀 Merge branch 'chore/rename-claude-md-references' 4c8e1c6
    • 📝 revert CHANGELOG renames — historical entries keep CLAUDE.md wording 3dbd3f8
    • 📝 fix CHANGELOG entry — CLAUDE.md is the symlink, not AGENTS.md 68c9e01
    • 📝 rename CLAUDE.md references to AGENTS.md ce3add8
    Downloads
  • 0.3.4 61a4256f9d

    0.3.4
    All checks were successful
    / pr-review (push) Has been skipped
    / gitleaks (push) Successful in 15s
    / pr-review (release) Has been skipped
    / gitleaks (release) Successful in 14s
    / checks (push) Successful in 2m12s
    / publish (push) Has been skipped
    / checks (release) Successful in 1m51s
    / deploy-docs (release) Has been skipped
    / publish (release) Successful in 27s
    / deploy-docs (push) Successful in 1m10s
    Stable

    marvin8 released this 2026-08-19 00:29:49 +00:00 | 45 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:B4Q+9pbWSIqGYTl3Ub/FPrBSqAVd2OkCR13hYRG5wek

    [0.3.4] - 2026-08-19

    Commits

    • 🔀 Merge branch 'chore/stage2-migration' c96f638
    • 🔧 chore: finish forge stage-2 migration and bump dependencies ca6a596
    Downloads
  • 0.3.3 7628f0365d

    0.3.3
    All checks were successful
    / pr-review (push) Has been skipped
    / gitleaks (push) Successful in 16s
    / pr-review (release) Has been skipped
    / gitleaks (release) Successful in 17s
    / checks (push) Successful in 1m50s
    / publish (push) Has been skipped
    / checks (release) Successful in 1m48s
    / deploy-docs (release) Has been skipped
    / publish (release) Successful in 29s
    / deploy-docs (push) Successful in 1m9s
    Stable

    marvin8 released this 2026-08-06 21:22:33 +00:00 | 49 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:B4Q+9pbWSIqGYTl3Ub/FPrBSqAVd2OkCR13hYRG5wek

    [0.3.3] - 2026-08-07

    Commits

    • 🔀 Merge branch 'migrate/forge-marvin8-zone' 2d39095
    • 🚚 migrate: Codeberg → forge.marvin8.zone 7e908da
    Downloads
  • 0.3.2 ac8ccd212f

    0.3.2 Stable

    marvin8 released this 2026-07-19 23:47:32 +00:00 | 53 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [0.3.2] - 2026-07-20

    Commits

    • 💡 docs: add docstrings for _populate_channel_metadata and _append_episode_item 3cafeba
    • 🔧 chore: align .editorconfig with mature project standard (indent_size, py max_line_length, json/rst/html sections) cb44e18
    • 💡 docs: add Args/Returns/Raises to all public function docstrings 5c16fe5
    • 💡 docs: add module/class/function docstrings to all source files; replace bare except-pass with logging.warning in discovery feb9d2d
    • 🔧 chore: add ruff.toml (TID252, expanded rules), LICENSE.md, README badges; bump ty→0.0.59 f9fbdc4
    • 📝 fix AI-DECLARATION.md — copilot level, DeepSeek tool, deployment none 2be8dd4
    • 📝 docs: add AI-DECLARATION.md v0.1.2 with auto level and badge a1693f6
    • 🐛 fix: use subshell for gitleaks checksum verify to avoid cwd change 376a2c6
    • 📝 docs: fix AGENTS.md heading to match filename; make CLAUDE.md a symlink 356421a
    • 🔧 chore: scaffolding alignment — gitleaks.toml title, ruff target-version py312, .editorconfig, uv_build>=0.11.0 83f0fef
    • 👷 ci: replace curl|sh uv installs with astral-sh/setup-uv@v5; checksum-verify gitleaks binary in CI c7f8081
    • ⬆️ deps: bump cyclopts→4.21.0, prek→0.4.9, ty→0.0.58; align pre-commit revs ty→v0.0.58, zaojun→1.7.2 2dfb6b9
    • 📝 reset Release-Notes.md for next release 1c3f6a9
    • 📝 document potential future improvments b17a1f5
    Downloads
  • 0.3.1 27a1f496c7

    0.3.1 Stable

    marvin8 released this 2026-07-09 23:49:46 +00:00 | 69 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [0.3.1] - 2026-07-10

    Commits

    • 🔀 Merge branch 'feat/issue-17-ci-to-forgejo-actions' 206d43f
    • 🙈 added site folder to gitignore 0f92423
    • 🔍 change tags for release notes 1d624fd
    • 📝 replace stale Woodpecker CI badge with Forgejo Actions badge c5f7019
    • 📝 update CLAUDE.md with gitmoji note, release process, and release notes 361eb3b
    • ♻️ replace git-cliff with Release-Notes.md-based changelog generation fa592d6
    • 📝 set up MkDocs docs deployment to grebedoc 579d105
    • 📝 add Release-Notes.md taibai thread and template 7cbce77
    • 👷 add weekly checks workflow on Codeberg shared runner 7617c4f
    • 👷 migrate CI from Woodpecker to Forgejo Actions fa48b7a
    • ⬆️ bump deps c1e1a43
    Downloads
  • 0.3.0 4df07ab6ba

    0.3.0 Stable

    marvin8 released this 2026-06-19 07:46:29 +00:00 | 82 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [0.3.0] - 2026-06-19

    Features

    • feat: detect episode .jpg thumbnail sidecar in discover_episodes (1d4ca73)
    • feat: add itunes:image to RSS item when thumbnail_path is set (e5a1499)
    • feat: print program name and version on startup (dcbb63d)
    Downloads