-
v0.3.0 Stable
released this
2026-02-13 20:28:55 +00:00 | 50 commits to main since this releaseWhat's Changed
New Features
- Fetch YouTube playlist metadata — New "Fetch Metadata" button in the feed editor auto-populates Title, Author, Image URL, Description, and Link from a YouTube playlist URL, saving time when creating feeds
- Only fills empty fields to avoid overwriting user-entered values
- Description is sourced from the first video (since YouTube playlists don't expose descriptions via the API) with a clear note to review
- Loading spinner shows during fetch with snackbar feedback on success/error
- Resilient error handling: partial failures (e.g., video description fetch fails) still return primary metadata (title, author, thumbnail)
Full Changelog: https://github.com/joezombie/castr/compare/v0.2.1...v0.3.0
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Fetch YouTube playlist metadata — New "Fetch Metadata" button in the feed editor auto-populates Title, Author, Image URL, Description, and Link from a YouTube playlist URL, saving time when creating feeds
-
v0.2.1 Stable
released this
2026-02-13 12:32:34 +00:00 | 53 commits to main since this releaseWhat's Changed
Bug Fixes & Hardening
- Enrich existing files with YouTube metadata — When a feed with a playlist URL is created or synced, existing MP3 files are now matched to playlist videos and enriched with descriptions, thumbnails, and publish dates
- Prevent re-downloading existing files — Matched files are marked as downloaded in the
DownloadedVideotable so the playlist watcher skips them on subsequent polls - Hardened error handling in playlist sync — Narrowed
DbUpdateExceptioncatch to rethrow non-race-condition errors, added targeted entity detach instead of clearing all tracked entities, addedOperationCanceledExceptionfilter for graceful shutdown - Dashboard visibility for sync failures — Partial sync failures are now logged as activity entries visible in the dashboard
Chores
- Added Claude Code Review and PR Assistant GitHub Actions workflows
Full Changelog: https://github.com/joezombie/castr/compare/v0.2.0...v0.2.1
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v0.2.0 Stable
released this
2026-02-12 23:05:17 +00:00 | 58 commits to main since this releaseWhat's Changed
New Features
- Immediate feed processing on creation — Creating a feed now syncs existing directory files and triggers YouTube playlist fetch immediately, instead of waiting up to 60s for the next poll cycle
- Channel-based trigger mechanism (
IPlaylistWatcherTrigger) — UI can wake the backgroundPlaylistWatcherServiceon demand - Continuous directory sync — All active feed directories are synced every poll cycle to discover manually added files
Bug Fixes & Hardening
- Fixed misleading "Failed to save feed" error when directory sync fails after successful feed creation — now shows a warning instead
- Fixed
CancellationTokenSourcedisposal race during application shutdown - Isolated directory sync failures from aborting the entire YouTube poll cycle
- Added
OperationCanceledExceptionfilter to per-feed processing catch block - Added input validation guard on feed trigger
Chores
- Removed legacy
PodcastFeedsconfig — feeds are now database-only - Updated docker-compose env vars for new
Databaseconfig section - Updated docker-compose to use GHCR image
- Removed legacy
match_episodesscripts and data files - Cleaned up README for Castr
Full Changelog: https://github.com/joezombie/castr/compare/v0.1.0...v0.2.0
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
v0.1.0 Stable
released this
2026-02-07 21:30:49 +00:00 | 68 commits to main since this releaseFirst release
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)