gPodder Changelog

What's new in gPodder 3.11.2

Aug 14, 2023
  • New features:
  • #1507 add a View menu option to show time in the episode released column
  • #1507 add a View menu option to right align the episode released column
  • #1507 always show released time in shownotes
  • add EQL adjectives 'failed' and 'paused'
  • Improvements:
  • #1480 appdata: fix syntax, add 3.9-series release dates
  • #1480 appdata: add release 3.11.1
  • #1484 require python 3.7
  • #1520 adapt youtube-dl plugin to latest yt-dlp
  • #1522 fix various typos found by codespell
  • display feed name when logging update errors
  • refactor _receive_configure_event()
  • log 'from' and 'to' sizes when syncing files
  • raise exception when gpodder.net queries fail
  • log exceptions when searching for podcasts on gpodder.net
  • bump required yt-dlp version for changes in #1520
  • fix more typos found by codespell
  • fix linter issues for pycodestyle 2.11.0
  • update dependencies
  • add codespell to linter
  • Bug fixes:
  • fix typo in youtube-dl extension preferences
  • add empty custom_downloader field in SyncTask to prevent exception
  • do not move window if maximised
  • fix issue retrieving channel ID for Youtube pages
  • Translations:
  • Dutch
  • Norwegian Nynorsk
  • French

New in gPodder 3.11.1 (Feb 19, 2023)

  • New features:
  • #1297 add setting to treat only really new episodes as new after an update
  • #1303 add setting to disable find-as-you-type
  • #1363 download and embed subtitles in youtube-dl downloader
  • #1402 add menu item to open logs folder
  • #1442 rename extension: add menu item to rename all episodes
  • #1444 add setting to disable trimming episode title prefix
  • #1461 allow channel to be selected from both episode menus
  • #1463 add config to set playlist file extension
  • add 'url', 'link' and 'filename' EQL nouns
  • Improvements:
  • #1304 gpo: add description and link fields to info
  • #1355 keep 'find partial downloads' dialog open longer
  • #1357 change /usr/bin/python -> /usr/bin/env python3 and remove unneeded shebang lines
  • #1367 add util.IdleTimeout class to reduce lag when updating progress tab
  • #1368 improve cancelling and manually updating in progress dialogs
  • #1368 add progress dialogs for long running actions
  • #1369 add icon to clear URL in the add podcast dialog
  • #1372 replace SimpleMessageArea with GtkInfoBar when resuming
  • #1372 do not hide progress tab resume infobar on page switch
  • #1374 channel editor: add buttons next to cover, feed URL, etc
  • #1390 appdata: merge appdata.xml from flathub
  • #1390 appdata: add missing release dates since version 3.10.0
  • #1400 write to log when sync directory is not writable
  • #1401 catch unknown sync exceptions when opening device and show error
  • #1403 quote file URIs moved by drag and drop
  • #1404 use symbolic toolbar icons
  • #1429 gpo: queue all episodes before download to allow resuming
  • #1431 add flake8 config and fix some code style issues
  • #1433 remove localdepends.py
  • #1435 optimize episode list
  • #1443 remove legacy settings
  • #1452 improve UI responsiveness when downloading hundreds to thousands of episodes
  • #1452 improve responsiveness when shift-selecting episodes
  • #1464 accept coverart as SVG
  • upgrade to newer version of 7-Zip for portable Windows build
  • remove redundant force_start parameters
  • switch deprecated GObject functions to GLib
  • update osx-bundle to 22.8.27
  • remove unused 'others' variable in update_downloads_list()
  • log which program the youtube-dl extension is using
  • show youtube-dl/yt-dlp name and version in preferences
  • remove redundant timeout removal when creating progress dialog
  • close progress dialog immediately in concatenate videos extension
  • add method to clamp a config value between minimum and maximum values
  • allow different required versions for youtube-dl and yt-dlp
  • change include_description parameter to required
  • cache episode list config values
  • organize View menu and move some preferences to it
  • rename showEpisodeDescription's internal names to match other items
  • don't discard episodes with invalid urls and links
  • set error icon for episodes with invalid URLs
  • don't show episodes without URLs in "new episodes available" when subscribing
  • set download list state only once after batch queueing tasks
  • log URL when youtube.py can't get channel ID
  • don't display stacktrace for common download errors
  • update dependencies
  • Bug fixes:
  • #1353 fix hang when resuming thousands of episodes
  • #1356 fix #1352 reset window position if completely off-screen
  • #1374 fix setting cover image from local file
  • #1382 fix #1360 fix yt-dlp output file name
  • #1383 fix #1263 don't try to download media files with youtube-dl extension
  • #1398 fix duration when greater than 24 hours
  • #1434 fix #1416 check for size mismatch when syncing and send to device again
  • #1440 fix #1439 fix support for old versions of yt-dlp
  • #1441 tagging extension: delete tags before modifying
  • #1452 fix #1311 remove all timer deadlocks by using idle_add priority for them
  • #1465 fix absolute path setting for playlist and two_way_sync
  • fix stripping of pasted text when adding podcast URL
  • fix #1350 set "New episodes available" tooltip for episodes with html descriptions
  • gpo: remove download directory when unsubscribing
  • fix #1394 fix crash on older versions of python
  • fix #1311 don't use idle_add() for progress dialogs that don't need it
  • fix #1399 fix msgstr errors in Norwegian Bokmål translation
  • update progress tab widgets when their values are modified via edit config
  • disable progress tab spinbuttons if unchecked at startup
  • throw exception if youtube channelId is empty to avoid clearing description and coverart
  • fix #872 get rid of custom icons for each type of audio and video file (also improves episode list redraw speed)
  • require new version of youtube-dl/yt-dlp to fix youtube.com change
  • Translations:
  • Dutch
  • French
  • Norwegian Nynorsk
  • Russian
  • Slovak
  • CI references:
  • macOS CircleCI build 935
  • Windows Appveyor build 1.0.966

New in gPodder 3.11.0 (Jul 31, 2022)

  • New features:
  • #1054, #1112, #1115, #1149, #1152, #1155, #1160, #1191, #1213 use Gio for file system based device sync (allows mtp:// URLs for Linux only)
  • #1083 add option to rename_download extension to put the sortdate after the podcast title
  • #1108 add --close-after-startup option for benchmarking startup time
  • #1121 add option to require control click to sort episodes
  • #1127 double-click or press Enter to open channel settings
  • #1132 allow distributions to disable the update check
  • #1289, #1334, #1335 iPod support restored using ctypes and libgpod (needs libgpod installed on the system)
  • Improvements:
  • #1093 reset shownotes scrolling to top when changing episodes
  • #1094 create an html description when none provided by feed to highlight links in shownotes
  • #1096 restore window maximize state
  • #1098 make the text shownotes title a clickable and copyable link
  • #1105 fix loading of cached thumbnails to reduce startup time
  • #1107 refactor resize_pixbuf_keep_ratio to speed up thumbnail scaling
  • #1108 add logging and advanced cli option groups
  • #1120 support PEP 440 local version label
  • #1130 query duration for youtube episodes when not using youtube-dl
  • #1135 use a TextView for dialogs with multiple text lines
  • #1154, #1156, #1172, #1188 remove deprecated Gtk features
  • #1158 remove unused variables from play_or_download
  • #1159 show paused tasks in progress tab
  • #1161 set a paused icon in episode list when an episode is paused
  • #1174 improve youtube initial player response regular expression
  • #1182, #1259 use youtube-dl or yt-dlp for the youtube-dl extension
  • #1201 open error dialog if user tries to use not-installed program
  • #1201 open error dialog if xdg-open is not found when opening a folder
  • #1233 reduce number of network queries per youtube feed
  • #1233 catch youtube coverart and description query errors and show better error messages
  • #1235 make error message more verbose on NotFound gpodder.net sync error
  • #1242 allow pausing and resuming downloads from Episodes and context menus, and toolbar
  • #1244 undelete deleted episodes when a download is attempted so failure leaves it undeleted
  • #1246 add episode art URL and chapters to database
  • #1248 allow failed downloads to be cancelled from episodes list
  • #1249, #1252, #1255, #1269 refactor episode/task actions for consistency between toolbar and context/Episodes menus
  • #1261 use GtkStack instead of GtkNotebook in preferences
  • #1268 add youtube-dl extension to preferences dialog
  • #1272 show episodes without downloadable content
  • #1274 narrower preferences dialog
  • #1285 open episode download folder from context and Episodes menus
  • #1300 retry failed episode downloads, without authentication, if feed uses authentication
  • #1313 remove border around extensions list in preferences
  • #1330 add/remove extension preferences buttons when loaded/unloaded
  • optimize youtube code
  • support youtube 'user' feed URLs
  • change order of progress button status counts
  • make the About dialog text selectable to copy version
  • use all lowercase letters in youtube-dl name
  • use proper capitalization for YouTube name
  • Bug fixes:
  • #1106 properly scale cover/pill on hires displays
  • #1110 fix missing extension when downloading youtube-dl format=worstaudio (audio/webm mimetype)
  • #1124 fix #1099 folder not escaped when renaming podcast from dialog
  • #1126, #1211 fix Windows taskbar progress extension
  • #1141 delay episode treeview column reordering to prevent gtk warnings on console
  • #1145 restore window position before and after window is shown to fix issues with some window managers
  • #1171 actually delete partial file when cancelling
  • #1171 cancel failed task before streaming
  • #1193 do not try to rename the outtmpl file in the youtube-dl extension
  • #1206 fix shownotes for episodes that contain HTML comments
  • #1219 youtube-dl extension should always rename partial files with extensions
  • #1219 clean up parial files created by cancelled YoutubeDL downloads
  • #1221 perform chosen "after sync" action in gpo
  • #1222 fix warning when exporting to local folder on systems with buttons in dialog headerbar
  • #1222 fix typo in "file exists" message when saving episodes
  • #1228 create partial file when reusing cancelled tasks
  • #1262 prevent youtube-dl failure for some RSS feeds
  • #1265, #1286 MPRIS extension fixes
  • #1276 trim leading/trailing whitespace in user-clipboard auto-inputted URLs
  • #1280 open links in HTML shownotes
  • #1287 close extension files after reading metadata
  • #1287 change deprecated logger.warn() to logger.warning()
  • #1287 close config file after loading it
  • #1320 prevent links from opening browser twice
  • #1335 don't print traceback on missing eyed3.mp3
  • fix #1227 pixbuf could be None in some cases
  • fix #1254 prevent crash when gpo sync removes episodes from gpodder
  • remove erroneous logger parameter when failing to get Youtube GDPR URL
  • prevent normalize extension from placing files in the directory gpodder was started in

New in gPodder 3.10.21 (Jul 20, 2021)

  • Improvements:
  • #1071 narrow channel dialog
  • add Strawberry player to the enqueue extension
  • skip non-integer youtube formats
  • use util.urlopen instead of requests.get for youtube
  • save and restore channel dialog state
  • Bug fixes:
  • #1065 prevent soundcloud from downloading existing episodes on each update
  • #1073 fix native youtube support in Europe by automatically accepting GDPR consent form
  • #1084 fix native youtube support by trying new endpoint before old endpoint
  • #1095 fix links in About dialog on platforms without gvfs
  • fix 'msgid' format string with unnamed arguments cannot be properly localized warning
  • fix DRM content detection for youtube episodes
  • fix "gpo sync" failure
  • fix soundcloud API change when adding new channels
  • Translations:
  • French
  • Slovak
  • Turkish
  • Russian

New in gPodder 3.10.20 (Jul 20, 2021)

  • Improvements:
  • #934 add more episode details to shownotes
  • #949 allow episodes with youtube-dl compatible URLs
  • #983 show channel or episode titles in delete dialog
  • #990 never delete locked episodes
  • #996 do not attempt to download episodes that lack an URL
  • #1001 add funding link on github project page
  • #1015 add checkbox to disable connection checking
  • #1018 build gPodder bundle from tools/mac-osx and downloaded generic bundle
  • #1028 create config file with group/world permissions revoked
  • #1030 improve channel and episode searching
  • #1031 allow a narrower podcast directory window
  • #1035 make refreshing channel image more discoverable and easier to do
  • #1037 cancel failed download in progress tab when deleting episode
  • #1039 show error icon on episodes that fail to download
  • #1040 show section if any of its channels have an update error
  • #1044 improve Youtube streaming
  • #1047 use latest Youtube-DL for Windows builds (Mac builds did the same in #1018)
  • #1055 subscribe to Youtube channels via video pages
  • support dragging HTTPS URLs to image in channel dialog
  • Bug fixes:
  • #991 properly toggle deleted episodes to new
  • #1015 fix connection checking for some linux users
  • #1034 fix dragging an image URL to image in channel dialog
  • #1043 fix internal Youtube support
  • #1059 using audio formats with Youtube-DL will show audio icon and use audio player
  • #1060 add tools/requirements.txt (should fix socks proxy in flatpak)
  • fix "Open" item on episode context menu and give it an icon
  • skip 'best' Youtube formats when using built-in support
  • bump required youtube-dl version to 2021.02.04
  • Translations:
  • Norwegian Nynorsk
  • Dutch

New in gPodder 3.10.19 (Jul 20, 2021)

  • Bug fixes:
  • fix macOS dependencies
  • revert window position save and restore code

New in gPodder 3.10.18 (Jul 20, 2021)

  • New features:
  • #897 add 'Always show new episodes' toggle to view menu
  • #966 add combined duration and size columns to episode list
  • #971 make sections selectable + filter episodes on channel search pattern
  • Improvements:
  • #843 use the requests package (compressed feeds, redirects, and more)
  • #919 log youtube-dl version and warn if known to have issues
  • #930 prevent 'add podcast' text entry from expanding vertically
  • #931 refactor shownotes
  • #933 get correct window size when saving UI state
  • #933 do not save or restore window position
  • #943 set episode selector title before creating window
  • #946 narrow down About dialog, pack items vertically
  • #952 don't reset last folder to home if cancel is selected in 'Send to' dialog
  • #951 skip episode media with 'application/*' mime type, if there is video or audio
  • #953 make layouting calculations clearer in draw_text_pill()
  • #957 strip HTML tags from channel descriptions
  • #965 disable context menu item if channel or episode has no website
  • #962 remove deprecated gtk elements in preferences dialog
  • remove config.player and config.videoplayer from legacy settings
  • #968 show URL that caused invalid feed error
  • #984 require either DISPLAY or WAYLAND_DISPLAY being set
  • Bug fixes:
  • fix #608 308 redirects
  • fix #905 HTTPS_PROXY
  • #910, #913, #915 fix windows installer build script
  • #927 don't leak kernel version in user-agent
  • #940 fix uncaught exception on channel list key navigation
  • fix gtk warnings in mass unsubscribe dialog when podcast title contains ampersand, etc.
  • #954 fix unit tests
  • #970 fix warning on non-200 status codes in coverart
  • #975 fix connectivity checking
  • Translations:
  • Many translation updates:
  • French
  • German
  • Russian
  • Turkish
  • Norwegian Nynorsk
  • Dutch

New in gPodder 3.10.17 (Nov 25, 2020)

  • New features:
  • #834 run command on download works from gpo
  • Improvements:
  • #838 rename youtube-dl partial file when it contains % or $ characters
  • #796 MKV Files Not Properly Renamed,
  • #846 youtube rss feed urls
  • #850 Discard episode when its GUID collides with a newer episode.
  • #866 Show update error in the podcast dialog (for copy-paste and seeing it fully)
  • #867 youtube live streaming support
  • #871 add youtube streaming format for 1080p
  • #873 Detect new key name for youtube DRM content
  • #879 Avoid stale Today and Yesterday dates by refreshing episodes daily
  • #902 support youtube user url
  • Bug fixes:
  • fix tagging extension exception on mkv files
  • fix #830 Shortcut key conflict Episode descriptions vs Discover new Podcasts
  • #848 fix youtube-dl not responding to config change
  • #855 detect DORMANT wifi state as online
  • #857 only send a single channel update error notification to avoid spamming the user
  • fix #727 gtk exception when hiding deleted episodes
  • fix #869 fix already subscribed to youtube feed in some cases
  • #875 Fix escapist and gpo issues caused by youtube streaming
  • #877 Remove leftover debug message
  • #901 Fix translation of Youtube playlist URL to a feed
  • fix #888 Prevent an empty entries bug in YouTube-DL from removing all episodes.
  • Translations:
  • Many translation updates:
  • Chinese
  • Russian
  • Brazilian Portuguese
  • German
  • Dutch
  • Italian
  • Norwegian Nynorsk

New in gPodder 3.10.16 (Jun 22, 2020)

  • New features:
  • #685 add menu items to trigger podcast/episode search
  • #804 add EQL functions to match text in title and/or description ((S("case sensitive")), (s("case insentitive")), (R("case sentitive regex")), (r("case insentitive regex"))
  • #820 add podcast and section EQL variables for use with SsRr functions (in addition to title and description)
  • #795 filter episodes extension works in gpo
  • #802 --quiet flag for less messages on the console
  • #791 better client-side decorations on environments requesting them (gnome3)
  • Improvements:
  • #787 refactor youtube formats and add settings for more resolutions
  • #798 don't clear custom youtube formats when switching to a builtin one
  • #803 better indicate optional imports (gpod and eyed3.mp3)
  • Bug fixes:
  • #776 fix ubuntu/unity extensions
  • #788 mpris_listener playback position lost on VLC quit
  • #790 Gtk UI: Force-resize icons in player list
  • #805 readable hyperlinks in shownotes with darker themes
  • #807 - outdated podcastparser on windows (and macOS)
  • Updated Translations:
  • Dutch
  • French
  • German
  • Norwegian Nynorsk
  • CI references:
  • macOS CircleCI build 419
  • Windows Appveyor build 1.0.299

New in gPodder 3.10.15 (Apr 15, 2020)

  • New features:
  • #743 Filter Episodes extension, allowing to prevent automatic download of episodes matching a pattern
  • Improvements:
  • #752 support subtitle and comment in tagging extension
  • #656 extension management via gpo
  • episode selector: remove default focus on Download button (see #679)
  • #763 show channel url in error dialog
  • youtube_dl integration improvements
  • #741 show error message and emblem on channel cover when an error occurs refreshing it
  • Bug fixes:
  • #749 windows installer: can't support custom installation path
  • #769 fix gpodder.ui.unity check for newer Ubuntu versions
  • fix a regression with the remaining term in queries
  • Translations:
  • Updated French
  • Updated German
  • Updated Hebrew
  • Updated Norwegian Nynorsk
  • macOS build:
  • update macOS base to python 3.8

New in gPodder 3.10.13 (Apr 15, 2020)

  • Bug fixes:
  • fix #737 tagging extension broken in 3.10.12

New in gPodder 3.10.12 (Jan 29, 2020)

  • Improvements:
  • #684 added subtitle to the tagging extension
  • #704 save position and size for preferences and editcfg windows
  • #724 Save episode column sorting and position
  • #717 quieter youtube-dl
  • #718 Add episode menu option to download with youtube-dl extension
  • #723 get duration for youtube episodes
  • #725 Fix youtube live stream detection
  • macOS: switch to gpodder-osx-bundle base-5.0.1 (pipenv based)
  • Bug fixes:
  • #681 "Change delete lock" only unlocks an episode
  • #702 on_podcast_delete method is passed incorrect object
  • #703 The GtkNotebook in the preferences dialog doesn't resize
  • #716 Possible channel tooltip coordinate bug
  • #715 use box instead of table to fix size of channel tooltips
  • #686 add YouTube channel not working with YouTube DL extension activated on Windows
  • #714 Youtube download fail when preferred formats aren't available
  • #711 [youtube] support player_response.streamingData.formats
  • #728 Fix icon for deleted episode
  • Translations:
  • Italian translation update
  • #720 warning: internationalized messages should not contain the 'r' escape sequence
  • CI references:
  • macOS CircleCI build 334
  • Windows Appveyor build 1.0.245

New in gPodder 3.10.3 (Jun 15, 2018)

  • Bug Fixes:
  • #413 macOS version crash when showing file browser (e.g. when exporting OPML).
  • macOS:
  • Updated dependencies and fixed certificate bundle generation (broken since 3.10.0)

New in gPodder 3.10.1 (Feb 20, 2018)

  • Bug fix release:
  • #371 Youtube fixes
  • #361 Download folder sanitization
  • #377 OPML export fixes

New in gPodder 3.9.3 (Jan 10, 2017)

  • Fixing some issues that people were having with some feeds and the change to podcastparser:
  • Soundcloud: Increase track limit (by mprangenberg)
  • Fix HTTP conditional GET (Fixes #193, #182)
  • Podcastparser 0.6.1: Work around a XML parsing bug when PyXML is installed (#185)

New in gPodder 3.9.2 (Dec 10, 2016)

  • Fix tagging download extension (#148, patch by Eric Le Lay)
  • Improve YouTube cover art resolution (patch by Hiltronix)
  • win32-launcher: Fix crash when Python is missing
  • Sync UI: Update podcast list after sync (#136)
  • Port from feedparser to podcastparser
  • Set UI upper limit for episodes per podcast based on current value
  • Cache cover art thumbnails in SQLite database
  • Load/update the episode list model in the background

New in gPodder 3.9.1 (Sep 22, 2016)

  • Gtk UI: Remove WebKit1 support (Debian bug 790218)
  • Add 'set_artist_to_album' config option to 'tagging' extension (by Brian J. Cohen)
  • Resolve all symlinks in path (bug 2064)
  • Handle "mktime argument out of range" (by Markus Wamser, bug 2023)
  • Include OS name and version in user agent
  • Don't fail if update server is down (bug 2067)
  • Use html5lib/HTMLParser to find hyperlinks in show notes (by Mathias Rav)
  • desktopfile: Filter non-player apps (improves app selector choices on Linux)

New in gPodder 3.9.0 (Apr 28, 2016)

  • Added Korean translation (by Byeongkeon Kim)
  • Device sync: Only fail if we can determine free disk space (bug 2052)
  • Enqueue episodes after download (Closes #133)
  • Ubuntu AppIndicator extension: 'visible' config option
  • gpodder.download: Ignore non-ASCII content-disposition header (bug 2059)
  • Win32-launcher: Remove download feature (works around Norton warning)
  • Remove WebUI, QML UI and MeeGo 1.2 Harmattan support
  • Remove broken Flattr integration (use gpodder.net's Flattr support)
  • Redesign about dialog
  • Preferences: Move video services to separate tab
  • Vimeo: Fix Vimeo integration

New in gPodder 3.8.5 (Dec 28, 2015)

  • CLI: Cleanup old downloads on CLI startup (bug 2012)
  • Gtk UI: Fix model column data types (bug 2008)
  • Device sync: Handle sync failure when no space left (patch by Aaron Wright)
  • model: Limit filenames to 120 characters for eCryptFS (bug 1898)
  • rename_download: Add add_sortdate and add_podcast_title option
  • Remove the unused 'pipe' IPC module
  • Fix coverage usage
  • Use Travis CI for running basic sanity tests
  • Various small code improvements and fixes
  • Vimeo:
  • Fix vimeo feed discovery (bug 2009)
  • Allow both http and https URLs (bug 2019)
  • YouTube:
  • youtube: Improve channel migration code
  • youtube: Fix cover art downloading (bug 2014)
  • Make the YouTube key button link to the gPodder Wiki
  • Add pattern to YouTube feed URL list (patch by Danilo Shiga)

New in gPodder 3.8.4 (Jun 17, 2015)

  • Update Sonos Extension
  • Make sure cover_url is always set (bug 1978)
  • gpodder.util: Fix timestamp issues (bug 1983)
  • gpodder.download: Strip whitespace in url (bug 1991)
  • tools/localdepends.py: Fix feedparser downloading
  • Podcast details dialog: Avoid re-showing on close
  • Updated German translation
  • Support for The Escapist
  • gpodder.directory: Remove broken YouTube search
  • YouTube: Support V3 API via user-supplied key (bug 1999)
  • YouTube: Auto-resolve URLs also in CLI and QML
  • QML UI: Add YouTube API key text entry + migrate button
  • CLI: Add "youtubefix" subcommand to rewrite URLs
  • YouTube: Match _ in channel URLs

New in gPodder 3.8.3 (Dec 10, 2014)

  • Fixes extraneous icon in the MeeGo 1.2 Harmattan (N9) build (Harmattan doesn't support the NoDisplay key in .desktop files)
  • Fixes a typo in the QML files that caused gPodder to fail to start up
  • Enable "Check for updates" by default, even on non-Windows platforms
  • Extension: Open website in episode list (bug 1958)

New in gPodder 3.8.1 (Oct 13, 2014)

  • gpodder.util: Don't force password to be lowercase (bug 1942)
  • YouTube: Add support for channels, rewrite URL matching

New in gPodder 3.8.0 (Jul 28, 2014)

  • Generic fixes and maintenance:
  • gpodder.util: Fix a bug in delete_empty_folders
  • Fix a typo in the German translations
  • Mention tools/localdepends.py in dependency check
  • Remove obsolete Qt4-based Sailfish QML UI
  • makefile: Force UTF-8 encoding in xgettext
  • Updated German translations
  • QML UI (Nokia N9 / MeeGo 1.2 Harmattan):
  • Nicer "pull down to refresh" animation
  • Allow updating of episode list via pull down
  • Elide text in podcast and episode lists
  • Scroll to top and bottom quickly (bug 1908)
  • "Mark episodes as old" menu item for "All episodes"
  • Better gpodder.net directory integration
  • Margin fixes for sheets (bug 1915)
  • Copy feed URL to clipboard menu item (bug 1916)
  • Also show spinner while episode list is loading
  • Move filter to episode list header
  • Use new JSON API for searching gpodder.net

New in gPodder 3.7.0 (Jul 7, 2014)

  • Extensions:
  • Fixed the TED subtitles download plugin (Vladimir Rutsky)
  • Add new audio players to the enqueue extension (Christian Boxdörfer)
  • New MPRIS listener extension (Dov Feldstern)
  • New concatenate videos using ffmpeg extension
  • New extension for syncing cover art to Rockbox players (Alex Mayer)
  • New features:
  • Delete empty folders on download, update pending (bug 1601, Ricardo Miranda)
  • Chronological download order configuration option (Tomislav Jovanovic)
  • Fixes and improvements:
  • Mac OS X: Use standard locations for GPODDER_HOME (bug 1912)
  • Fixed Vimeo integration (bug 1837)
  • Add rewrite_url() function to model (bug 1905)
  • Removed features:
  • XSPF plugin: This was broken for some time, now removed
  • Translations:
  • Updated German translation

New in gPodder 3.6.1 (Mar 12, 2014)

  • Fix YouTube integration (bug 1887)
  • Desktop file: Add prefix to path (bug 1618)
  • Makefile: Use LC_ALL=C to have C-locale dates in manpage

New in gPodder 3.6.0 (Mar 5, 2014)

  • Bug fixes and packaging additions:
  • Various YouTube-related fixes
  • Add manpage for gpodder-migrate2tres
  • Fix FreeBSD network detection (bug 1730)
  • Fix double episode download bug
  • gpodder.net-related fixes if sync is not enabled
  • Gtk UI:
  • Update shownotes behaviour
  • Show duration column instead of size by default
  • Move podcast list view options to preferences dialog
  • Gtk status icon extension: Add option for progress bar
  • Display episode's last played position (not only duration)
  • Do not save maximized window position to configuration
  • Model
  • Fix problem with migrated databases
  • Play info string for finished episodes contains duration
  • Do not add files without filename
  • iPod Synchronization:
  • Alpha release by Joseph Wickremasinghe
  • Device Synchronization
  • Require eyed3 version 0.7 (Fixes #100)
  • Internationalization and localization
  • Update translation templates from source
  • Updated German translation

New in gPodder 3.5.2 (Sep 25, 2013)

  • Extensions:
  • Support for Flattr'ing extensions and showing documentation (Bernd)
  • Option to auto-embed covert art images into files (bug 1742, Bernd)
  • Gtk UI:
  • Various keyboard-related improvements
  • Various fixes (Eugene, bugs 1825, 1832, 1834)
  • Device sync: Fix to only include episodes in playlist (Joseph)
  • QML UI:
  • Various UX-related improvements (Rigoberto, bug 1813, PR #94)
  • Translation updates:
  • Italian (Maurizio)
  • Spanish (Rigoberto)
  • Tooling and other fixes:
  • Disable gpodder.net when authentication failed (Stefan)
  • makefile: Add Harmattan an Sailfish to QMLFILES

New in gPodder 3.5.1 (Apr 11, 2013)

  • Device synchronization:
  • Sanitized playlist filename (bug 1788)
  • Sanitize mount point encoding (bug 1785)
  • Extensions:
  • Merge audio/video converter extensions (bug 1783)
  • Cleaned up "Enqueue in Media Player"
  • Enqueue episodes in Totem also (bug 1775)
  • Gtk UI:
  • Clear filter using secondary icon in GtkEntry
  • Fix submenu activation/focus issues (bug 1778)
  • Show notification bubbles when downloads fail (bug 1265)
  • QML UI:
  • Add various checks for undefined / null objects
  • Apply automatic rotation setting to all pages (bug 1792)
  • Better selection reset logic for episode list (bug 1804)
  • Convert selection indices to integers (bug 1802)
  • Directly add a podcast via feed URL
  • Fix layout for multi-line episode titles
  • Highlight podcasts on Harmattan, but not on Sailfish
  • Make selection background color visible again
  • Reset selection when episode list changes (bug 1804)
  • Separate gpodder.net login page (pull request 85)
  • Other improvements:
  • CLI: Fix subscribe/unsubscribe when list has not been loaded yet
  • Database: Check if every episode is assigned to a podcast
  • Makefile: Build ".pyo" files on "make install" (bug 1786)
  • Model: Disallow subscribing to an already-existing URL
  • Remove "print" statement in enqueue_in_mediaplayer
  • Tools: Ubuntu PPA generator for "raring" release
  • Updated German translation

New in gPodder 3.5.0 (Mar 7, 2013)

  • README: Add dependency information for Sailfish Silica
  • Util: Fix unit test (use real unknown extension)
  • Updated Portuguese (Brazil) translation
  • Updated Portuguese translation
  • Updated Polish translation
  • Updated Spanish (Spain) translation
  • Updated German translation
  • Updated Czech (Czech Republic) translation
  • Updated translation templates from source
  • QML UI: Fix top margin of input sheet
  • QML UI: Small triangle new indicator in podcast item
  • Gtk UI: Shownotes text view must not be editable
  • Gtk UI: Searching in extensions list, keyboard interaction
  • Allow search-as-you-type searching in the extensions list.
  • Use separate columns in extensions list to allow interaction with keyboard (enable/disable and show extension infos).
  • Remove custom mouse button handling, which was confusing.
  • Gtk UI: Resizable shownotes view in main window
  • Gtk UI: Don't close preferences when WebKit/Gtk is missing
  • When trying to login to Flattr without WebKit/Gtk installed, the preferences dialog should stay open after the message box.
  • Gtk UI: Show error message for unconfigured devices
  • Gtk UI: Disable all widgets when device sync is off
  • In the preferences dialog, disable all widgets in the "Device sync" tab if device sync is not enabled.
  • QML UI: Fade truncated text in Sailfish UI
  • QML UI: Abstraction for common UI elements (Label, Button, ...)
  • QML UI: Harmattan UI customization bug fixes
  • QML UI: Fix header height in Sailfish UI list views
  • QML UI: Abstraction of ListView / pull down handle
  • QML UI: Symbolic colors, Sailfish-related color/opacity changes
  • QML UI: Abstraction for ScrollDecorator
  • QML UI: Abstraction of root window and orientation handling
  • QML UI: More subtle indication of new episodes in podcast
  • QML UI: "listview" property for pages with lists
  • QML UI: Initial support for Sailfish Silica
  • QML UI: Declare x-axis drags for PlaybackBarProgress
  • Fixes a bug in Sailfish Silica wrt page switching, see:
  • QML UI: Page abstraction (actions, back button, etc..)
  • QML UI: Abstraction of page-wide menu
  • Gtk UI: Fix context menu UI blocking (bug 1778)
  • Cover downloader: Add 5-second connection timeout
  • QML UI: Asynchronous image loading in episode item
  • QML UI: Step-wise asynchronous episode list loading
  • QML UI: Refactoring / grouping of upcalls
  • QML UI: Remove QObjectProxy and "main" from Python
  • QML UI: Decoupled UI shutdown handling
  • QML UI: Decoupled current episode handling
  • QML UI: Fix/refactor episode playback (un-)queueing
  • QML UI: Decouple Python upcalls from QML UI
  • QML UI: Fix download status reporting
  • QML UI: Podcast and episode models as context property
  • QML UI: Episode list loading and clipping fixes
  • QML UI: Clean up Podcast List section headers
  • QML UI: Scroll multi-episode list to episode list position
  • QML UI: Menu for MediaPlayer (instead of broken buttons)
  • QML UI: Fix top margin of Subscribe sheet
  • QML UI: Move MediaPlayer into its own Page, InfoBanner usage
  • QML UI: Move Episode list into its own Page
  • QML UI: Subscribe UI as separate Page
  • QML UI: Remove nowPlayingThrobber from Main
  • QML UI: Move shownotes into its own Page
  • QML UI: Remove unused items and artwork files
  • QML UI: Generalize PullDownHandle
  • tools/localdepends.py: Fix https link usage
  • Device sync: Fix sync when playlists are disabled (bug 1769)
  • Correct ffmpeg/avconv extensions for Windows (bug 1773)
  • Util: Improve parse_time()
  • marked episode(s) as played when enqueue (bug 1749)
  • Extensions: Add option to remove all tags (bug 1771)
  • Add a new option to the tagging extension
  • bin/gpo: Spelling fix: Ambigous -> Ambiguous
  • Extensions: Support both libav and ffmpeg (bug 1773)
  • M4A Converter: Check file extension (bug 1770)
  • Testing: Add support for HTMLTestRunner reports
  • Testing framework: Add support for unit tests
  • Model: Day, month and year for custom filename (bug 1768)
  • Users can now use the following fields to customize the sync filename when using MP3 player device sync:
  • {episode.pubdate_year} - Year of publication (without century)
  • {episode.pubdate_month} - Month of publication (01-12)
  • {episode.pubdate_day} - Day of publication (01-31)
  • In addition to these fields, {episode.sortdate} is still provided and gives YYYY-MM-DD as result (just like before).
  • Prepare for mygpoclient 1.7 dependency change
  • QML UI: Horizontal line for sections (pull request 52)
  • QML UI: Landscape fixes for media player (pull request 48)
  • When in landscape the play queue button would not be visible.
  • This change detects the orientation and changes the number of columns on the grid, so the buttons are either arranged in the horizontal or vertical.
  • Add a busy indicator to the toolbar (pull request 53)
  • Sonos extension: Mark strings translatable, cleanups
  • Mark "Stream to Sonos" translatable, rewrite some parts of the extension for easier readability (SONOS_CAN_PLAY).
  • "Stream to Sonos" extension
  • In src/gpodder/gtkui/main.py: Use "callback is None" instead of "callback==None", and also make the function signature nicer (spacing, newline).
  • Remove trailing whitespace in all files affected by the latest device sync patch: git show HEAD | diffstat -l | xargs sed -i 's/\s\+$//g'
  • Device playlists & two-way sync
  • Clean up preferences dialog (pull request 55)
  • Makes the gpodder.net and Flattr tabs behave the way the rest of the tabs in the preferences dialog do (the widgets dont expand in the y direction).
  • Sets the vertical and horizontal scrollbars in the Extension tab so that they are only used if necessary.
  • Fix status icon not disappearing after being disabled (bug 1714)
  • Util: Python 2.6 compatibility fixes
  • Offline mode: Logic fixes (bug 1730)
  • Make online detection a bit smarter (bug 1730)
  • If we don't have "ifconfig" and "ip" assume we're online (because we can't determine that we're offline), and if detecting the network connection fails for some reason, also assume that we're online. This avoid bogus "you're offline" messages while still giving good feedback to users who try to check for new episodes while offline.
  • Gtk UI: Fix Gtk 2.18 compatibility (bug 1761)
  • po/messages.pot: Update translation template from source
  • i18n tools: Fix generate_commits script for Transifex changes
  • Updated translations from Transifex
  • Updated Italian translation
  • Updated French translation
  • Updated Greek translation
  • Updated Chinese (China) translation
  • Updated Swedish translation
  • Updated Portuguese (Brazil) translation
  • Updated Portuguese translation
  • Updated Dutch translation
  • Updated Norwegian Bokmål translation
  • Updated Kazakh translation
  • Updated Hebrew translation
  • Updated Galician translation
  • Updated Persian (Iran) translation
  • Updated Basque translation
  • Updated Spanish (Mexico) translation
  • Updated Spanish (Spain) translation
  • Updated Spanish translation
  • Updated Czech (Czech Republic) translation
  • i18n tools: Prefer .po file from Transifex
  • YouTube: Fix directory search (bug 1760) For users who set their realname as display name, search results resulted in non-working feeds. Now using the username from the URI to fix this.
  • Mac OS X: GtkOSXApplication 2.0.1 fixes (bug 1759)
  • Merge pull request #62 from stefankoegl/batch-actions Upload episode actions in batches
  • upload episode actions to gpodder.net in batches allows partially successful uploads and resuming; avoids empty uploads
  • Extensions: New on_episode_playback function
  • Mention eyeD3 version compatibility
  • Updated Italian translation
  • bin/gpo: Fix broken "YouTube" command
  • Util: Add interface detection for FreeBSD (bug 1730) I've also been hit with this bug on FreeBSD where iproute2 is not available. FreeBSD 8.2-STABLE i386 I wrote a little patch to make gpodder work on FreeBSD.
  • Util: Improve parse_time() function
  • Vimeo: Use video title as download filename
  • Extensions: Remove broken Woodchuck extension After the simplifications of the model objects, the Woodchuck extension is broken for now. If somebody wants to take ownership of that extension and fix it up for re-inclusion, please get in touch.
  • Add new extension (bug 1733) and correct some errors New extension to convert ogg to mp3 few bugfixes in other extensions
  • Fix: Switching between shownotes can cause window to expand (bug 1736)
  • Fix GtkWarning from the shownotes (bug 1735)
  • Add support for the opus audio codec (bug 1734)
  • Util: Parse HH:MM-style strings with HH > 59
  • Model: Whitespace and indentation fixes
  • Model: Various cleanups/simplifications
  • Model: Don't track changes in model objects
  • Model: Fix cover_url setting
  • Cleanup feed parsing, remove some special-cases
  • Download: Avoid bogus error messages (bug 1731)
  • QML UI: Show the download filename in the shownotes
  • QML UI: Add shownotes button to media player
  • QML UI: Show playback position in episode list

New in gPodder 3.4.0 (Feb 8, 2013)

  • Updated translations from source (+German translation)
  • QML UI: Highlight color when selecting new episodes
  • Add smart grouping of extension context menu
  • Add flattr option to the episode context menu
  • QML UI: Pull down to refresh
  • Episode loading animation
  • Some more tweaks to the QML UI
  • Initial QML Performance Changes
  • QML UI: Cleanup and simplify episode list
  • Add disable_in=win32 to a few extensions (bug 1729)
  • gpodder.util: Use gpodder.ui.win32 for new code
  • Don t warn about unknown file if it is a system file (Bug 1712)
  • Fixing TEDtalks subtitle downloader
  • Pipe: Avoid downloading podcast cover art
  • Vacuum minidb-based databases too (bug 1721)
  • Pipe module: Minor bugfix
  • Pipe: Experimental pipe-based IPC interface
  • QML UI: Cleanup / simplify UI
  • Util: Python 2.6 compatibility fix
  • Vimeo: Fix downloading of Vimeo videos
  • Gtk UI: Don't require Gtk+ 2.24 in .ui file
  • YouTube: Remove dependency on OrderedDict
  • Remove old api.py module
  • Gtk UI: Import titles from OPML / directory (bug 1711)
  • Device sync: Per-podcast sync option (pull request 22)
  • Linux: Detect PPP as Internet connection (bug 1702)
  • handle mygpoclient's MissingCredentials exception
  • YouTube: Cleanup the format selection patch
  • YouTube: Gtk UI for video quality selection (pull request 19)
  • Add extension to enqueue in media player (bug 1583)
  • Download: Rate-limiting for progress updates
  • gpo: Align safe_print() with Python 3's print() (bug 1697)
  • Remove podcast_id accessor functions (bug 1696)
  • Offline mode detection for OS X (bug 107)
  • Gtk UI: Don't auto-update when offline (bug 107)
  • New extension: update_feeds_on_startup (bug 1656)
  • Download strategy: Only keep latest (bug 188)
  • Basic Offline mode support (bug 107)
  • QML UI: Open show note links in browser (bug 1556)
  • Flattr: Reload when pressing play in the shownotes (bug 1684)
  • Use 'util.sanitize_encoding' for the flattr payment-url
  • YouTube: Add support for https:// links
  • YouTube: Fix the new 403 issue (bug 1665)
  • Updated credits.txt
  • QML UI: Fix back button behavior (bug 1677)
  • Gtk UI: Fix wrong artwork in podcast settings (bug 1675)
  • Improvements to the extension system:
  • Add category metadata in every extension
  • Show this category in the extension list gui
  • Add "mandatory_in" and "disable-in" configuration for an extension
  • Add Ubuntu unity check to enable/disable unity specific extensions
  • Move "gpodder.win32" and "gpodder.osx" setting to the "gpodder.ui" namespace to be able to use it in the extensions category settings
  • Only show metadata information in the right-click dialog of an extension
  • Web UI: Various improvements to the interface (pull request 17)
  • Added thumbnails and descriptions for podcasts and episodes
  • Changed Ajax calls to jQuery
  • Added support for video files
  • Stubbed out some methods to track played and position
  • Copied images from QML UI (audio.png and video.png)