Introducing PinePods 0.8.2 – This relatively large update implements and fixes up quite a few user requested features. My goal throughout this has been to clear up as many open issues as possible.
🌍 Web App Improvements
- Translations Added – The PinePods web app now supports translations! The UI dynamically adjusts based on language settings, paving the way for full multilingual support in future releases. If you choose a language other than English currently you'll likely find it's still English or mostly English. This is due to the translation work that's now needed to actually implement. Please head here if you're multi-lingual and willing to help out the project. Thanks in advance!
- Account Settings Enhancements – Dropdown menus now pre-populate with current values in the account settings menu, making it much clearer when updating settings.
- Podcast Page Sorting – Sorting preferences are now stored on a per-podcast basis. Each podcast remembers your preferred episode sort order, improving navigation and consistency across sessions.
- Individual Episode Downloads – Episodes can now be downloaded individually from the
/episodepage for more control. There's a download button next to the share button. - Optional Podcast Covers – Users can now toggle the use of podcast cover art across the app for a more personalized layout experience. This setting always uses the podcast art rather than episode specific artwork when episodes are shown in a list.
- Episode Time Inconsistencies could result it playbar UI Issues – Thanks to @kestrel-x86 for fixing a UI bug where episodes could potentially be more than 100% complete if the actual run time was longer than what the feed displayed. @kestrel-x86 went above and beyond and ensured that the Pinepods DB would be updated upon playback if a time inconsistency was found during playback.
🔐 OIDC & Authentication Updates
- OIDC Setup on Startup – You can now configure OIDC right from the start, simplifying first-time setup and integration with external identity providers. This also allows you to skip the process of having a user that can login with a password for added security. Variable names can be found here
- New OIDC Endpoints – Added endpoints to edit and delete OIDC configurations directly from the interface.
- Redis/Valkey Authentication – Optional Password support authentication added for Redis and Valkey backends for optional improved security and external valkey/redis servers. The password variable can be found here
- Better Error Handling – More descriptive and actionable errors if required environment variables or configuration values are missing.
⚙️ Backend & Performance Enhancements
- Episode Addition Moved to Background – Adding new podcasts now offloads episode processing to a background task. This makes podcast subscriptions much faster while episodes populate asynchronously.
- HTTP Request Notifications – Added support for external HTTP-based notifications, compatible with Telegram, and other webhooks or custom HTTP integrations.
- Podcast Merge Options – You can now merge podcasts manually when premium feeds for a given podcast exist, keeping your library clean and organized. When merged, a podcast will no longer show up in the podcast page and will instead appear in the feed of the parent podcast. This merge option can be found in the Edit Podcast page in a podcast's settings.
- Podcast Edit Options – You can now manually edit podcast details. Helpful if you want to manually override a podcast's name, feed url etc. Can be found in a particular podcast's settings page.
- Podcast Index Matching – Added the ability to manually search for or enter a Podcast Index ID to correctly associate your podcast with its global metadata entry. Helpful in case the auto search doesn't find the result.
- Fixed Release Dates for Un-Added Podcasts – Non-added podcasts will now properly show their original release dates instead of defaulting to the current time.
- yt-dlp Fixes – Fixed issues with yt-dlp so that youtube episodes will again download.
🧠 Smarter Playback & Completion Logic
- GPodder Completion Fix – Fixed an issue where episodes that were played exactly to their length wouldn’t be marked complete.
- Auto-Complete Threshold Improvements – The historical completion logic now correctly works and will apply retroactively, marking older episodes as complete when appropriate based on your selected setting
🧩 Playlist & Data Handling
- Fully Dynamic Playlists – The playlist system has been completely rebuilt for real-time updates. Episodes will now show up in playlists immediately rather than waiting for a sync cycle when they become relevant for a given playlist.
- Duplicate Episode Fix – Fixed an issue that occasionally created duplicate episodes when metadata changed.
- RSS Feed Validation – Verified and corrected handling of downloaded URLs for RSS feeds to ensure episodes return correct download links consistently.
✅ Stability and Polish
This release is all about refinement — fixing inconsistencies, improving speed, and making the experience more reliable. Many background systems have been streamlined for better responsiveness and fault tolerance, especially around episode addition and completion tracking.
Reminder: Making a call out to the community to please help if you can with translations. If you can help out please head over to weblate and fill out any translations that you can! This is certainly a big accessibility step for the app. More of the Pinepods clients will soon follow, but for now only the web app supports translations. Stay tuned for the mobile apps too!
Thanks as always to the PinePods community! 0.8.2 is another big step forward toward a rock-solid, fully featured podcast ecosystem. Keep testing, reporting, and sharing your feedback — it directly shapes what PinePods becomes next.