Eric Le Lay
635c2e1800
deprecated cgi.escape to html.escape + escape every self.show_message
...
Otherwise an empty Download Error popup happens
if episode title contains '&' when important=True and we set
the popup's text using pango markup.
2019-09-08 18:14:52 +02:00
Eric Le Lay
25ca3593bf
Merge remote-tracking branch 'origin/master' into youtube-dl
2019-08-27 21:58:11 +02:00
Eric Le Lay
8cafd22161
fix edit config boolean editor: align left
2019-08-27 21:57:54 +02:00
Eric Le Lay
ded38eda51
youtube description: fix log + translate No description available
2019-08-27 21:56:13 +02:00
Eric Le Lay
dfb245fd85
don't override custom feed descriptions
2019-08-27 21:55:49 +02:00
Eric Le Lay
5e9d2923db
Merge remote-tracking branch 'origin/master' into youtube-dl
2019-08-27 20:49:51 +02:00
Eric Le Lay
28f729f15e
use stream_url or download_url when applicable
2019-08-26 20:56:16 +02:00
Eric Le Lay
e82f1f97f8
fix View > Show Toolbar always disabled
...
broken since Feb (e4a16f1526
)
2019-08-24 16:26:57 +02:00
Eric Le Lay
31e8de4355
fix #547 Download progress not updated on auto download
...
- adding new tasks to download queue manager is delayed in
download_episode_list() so new tasks are in INIT state.
- download_list_update() will disable UI refresh when it sees no task
in queued downloading or synchronizing state.
So after download_episode_list(), there is a race condition between
the first execution of download_list_update() and queue_task()
Fixed by calling enable_download_list_update() after adding tasks to the
download queue manager.
Also queue_tasks() now registers all tasks at once instead of one by
one.
2019-08-24 16:02:22 +02:00
Hiltronix
39e45f353f
Update util.py
...
Change so there is no blind except.
2019-08-20 11:04:09 -05:00
Hiltronix
da3e2391f7
Update youtube.py
...
Fix white space.
2019-08-19 23:06:52 -05:00
Hiltronix
3b56118daf
Update youtube.py
...
Fix blank line spacing.
2019-08-19 23:03:24 -05:00
Hiltronix
b49327fe09
YouTube Updates
...
YouTube full size 900x900 image was never being selected, images were always 100x100, due to HTMLParser interating till all matches were found. 900x900 was found first, then 100x100px image, which was the final result. Now all results are saved in a list, the first find is the selected result.
YouTube channel description and link were not being discovered, or saved to the sqlite DB. Desc is now retreived from the YouTube channel webpage in the same manner as the cover image link, and the link is the YouTube channel URL.
2019-08-19 22:53:34 -05:00
Hiltronix
08a0b8255b
Fix Podcast Description None
...
Error occurs when saving changes to sqlite DB when desc is None, as SQL field "description" is set "NOT NULL" in table "podcasts". Desc must be empty string not None.
2019-08-19 22:29:34 -05:00
Eric Le Lay
a7fbe0d531
use registry.feed_handler instead of gPodderFetcher.custom_handlers
2019-08-17 17:48:52 +02:00
Eric Le Lay
1444b71ddc
add webm extension, mimetype
2019-08-17 16:26:02 +02:00
Eric Le Lay
a05bd85d76
registry.custom_downloader + registry.download_url
...
for extensions to be able to register custom downloaders,
not only resolving episode to a real download url.
refactor {escapist,youtube,vimeo}.get_real_download_url to use registry.
2019-08-17 16:25:00 +02:00
Eric Le Lay
c847988531
backport gpodder-core's registry
2019-08-17 16:15:56 +02:00
Eric Le Lay
e03a3f1909
remove unused gpodder.net feedservice example code
2019-08-11 16:33:24 +02:00
Eric Le Lay
b4554005d9
fix linter warning
2019-08-11 12:18:28 +02:00
Eric Le Lay
d004d952f5
fix #648 Checking for new episodes clears file_size for some downloaded files
...
in particular youtube episode info never has file size, erasing downloaded file size.
Thanks to @auouymous for the fix
2019-08-11 12:05:30 +02:00
Eric Le Lay
a7385c95b5
fix #649 Progress icon doesn't appear when downloading a failed or paused episode
...
thanks to @auouymous for the fix
2019-08-11 11:59:08 +02:00
Eric Le Lay
03819e4abf
fix #635 Vimeo download fail
2019-06-18 09:00:26 +02:00
Eric Le Lay
034e3ffa2b
Merge default and custom feed handling; support paged feeds
...
RFC 5005 (http://podlove.org/paged-feeds/ )
Fixes #231
2019-06-09 18:59:09 +02:00
Eric Le Lay
711ed276df
doctest: convert dict to sorted seq for python 3.5 compat
2019-06-09 16:46:17 +02:00
Eric Le Lay
7d0381905a
fix linter warning
2019-06-09 16:30:21 +02:00
Eric Le Lay
80a017e231
fix unittest on python 3.5
2019-06-09 16:23:03 +02:00
Eric Le Lay
6d1906dab9
prepare 3.10.9 release
2019-06-09 16:11:40 +02:00
Eric Le Lay
d16cad438f
fix linter warnings
2019-06-09 16:11:40 +02:00
Eric Le Lay
42cd004935
don't eat extension's dot in sanitize_filename_ext
...
it's too confusing: caused bugs in core itself (#630 )
2019-06-09 16:05:16 +02:00
Eric Le Lay
078d6f856a
fix #630 Send to local folder doesn't put the . in the name before the extension
2019-05-28 20:36:13 +02:00
Eric Le Lay
1f99e166fb
fix jumping webview when hovering a link with long url
...
the label showing the URL at the bottom of the screen then expands the view
horizontally, causing a relayout.
2019-05-27 21:09:59 +02:00
auouymous
deebcf8cec
Use https to download from YouTube
2019-05-25 15:33:09 +02:00
auouymous
73229700ce
Use HTTPS for https urls
2019-05-25 15:32:59 +02:00
Eric Le Lay
8391bafd31
new gpodder.util.parse_mimetype
...
to access params
2019-05-19 15:04:48 +02:00
Eric Le Lay
0b36f1ee60
pass max_episodes to custom feed handlers
2019-05-19 15:04:17 +02:00
Eric Le Lay
80b3b69837
list instead of generator otherwise episodes not seen are not all deleted
2019-05-19 15:03:17 +02:00
Eric Le Lay
27ac7c2a78
remove code already in podcastparser 0.6.4
2019-05-19 11:38:01 +02:00
Eric Le Lay
f454548a5b
fix typo in comment
2019-05-19 11:38:01 +02:00
Eric Le Lay
06e35d1c5a
fix #623 : youtube - Download failed: 'reason'
...
thanks to @auouymous for the patch!
2019-05-18 18:00:04 +02:00
Eric Le Lay
ed4d2dea71
fix #296 - Notification window for failed download should show podcast name
...
thanks to @auouymous for the patch
2019-05-18 17:59:55 +02:00
Eric Le Lay
4f063851b1
Custom feeds: change handle_url to fetch_channel
2019-05-18 17:16:06 +02:00
Eric Le Lay
10adc4a0fc
add model.unregister_custom_handler
...
to be able to register AND unregister custom feed handlers from extensions
2019-05-08 19:11:27 +02:00
Eric Le Lay
19bf70572c
add support for feed image in ico format
2019-05-08 18:55:57 +02:00
Eric Le Lay
28e2ef0a06
use channel auth in html shownotes
2019-05-05 17:03:59 +02:00
Eric Le Lay
76feaa7117
fix has_website_link() usage as attribute
2019-05-05 16:47:23 +02:00
Eric Le Lay
1b018a3659
Fix #618 download extension lost on long filenames
2019-04-06 17:11:04 +02:00
Eric Le Lay
4e39b9b6cb
prepare 3.10.8 release
2019-04-04 22:27:09 +02:00
Eric Le Lay
81550092e2
fix Model not imported after refactoring
2019-02-03 01:23:10 +01:00
Eric Le Lay
9e4cfe4974
relative imports
2019-02-02 18:39:49 +01:00
Eric Le Lay
e4a16f1526
refactor main.py a bit into app.py
2019-02-02 18:35:19 +01:00
Eric Le Lay
8afbe93faf
fix linter warnings
2019-02-02 17:07:20 +01:00
Eric Le Lay
e84547ad18
prepare 3.10.7 release
2019-02-01 08:44:16 +01:00
Eric Le Lay
4400f5bf16
fix #591 invalid local filename when content-disposition invalid extension
...
1. fix download to remove query string from attachment name
can cause regressions when filename contains query before extension
or other strange characters because we parse as url an intended filename
2. fix episode.local_filename() to always sanitize the extension
2019-01-27 12:30:46 +01:00
Eric Le Lay
00fa10b1f6
fix #360 Resume downloads for gpo
...
partial [--guid] List partially downloaded episodes with or without GUIDs
resume [--guid] Resume partially downloaded episodes or single GUID
2019-01-26 16:52:05 +01:00
Eric Le Lay
1aed4a35f5
fix missing variable since a36a9ac
2019-01-26 16:46:12 +01:00
Eric Le Lay
d70f032040
Fix #586 remove debug print
2019-01-26 12:52:51 +01:00
Eric Le Lay
a36a9ace22
dynamic channel cover icon based on tree text size
...
See #590
2019-01-24 19:03:42 +01:00
Eric Le Lay
1ad321def7
deduce progress bar size from treeAvailable text size
...
See #590
2019-01-24 18:44:03 +01:00
Eric Le Lay
117c8f9403
prepare 3.10.6 release
2018-12-29 14:36:49 +01:00
Eric Le Lay
f29e6a3acc
remove stray debug message
2018-12-15 22:38:52 +01:00
Eric Le Lay
7794c3afdf
Merge pull request #573 from bth/check_overwrite_file_save
...
fix #563 add confirmation if file already exist
2018-12-15 17:36:17 +01:00
Eric Le Lay
ad86c35b9a
fix download episodes requiring authentication
2018-12-15 17:02:16 +01:00
Eric Le Lay
f51ef5a88e
fix #571 unable to subscribe to authenticated podcast after redirect
2018-12-15 17:02:16 +01:00
bth
7d8f8346a0
Extract filename from message for name placeholders
2018-12-15 14:56:51 +01:00
bth
635e2bb9a8
Add filename in the message
2018-12-13 09:59:02 +01:00
Eric Le Lay
3547938638
tentative fix 550 - gPodder 3.10.5 stops responding when updating and downloading
...
fix a leftover python2 bytes vs str comparison causing the download loop to never end
See #550
2018-12-11 09:59:33 +01:00
bth
b03ed2f503
make indentation with a multiple of four
2018-12-10 17:38:32 +01:00
bth
a732c8c9db
fix #563 add confirmation if file already exist
2018-12-10 17:16:16 +01:00
Eric Le Lay
6433f5f10b
return filename in episode.local_filename(return_wanted_filename=True)
...
when episode has a filename. It used to return the full path.
see #555
2018-11-13 21:44:12 +01:00
Eric Le Lay
00f9cd094b
fix #559 TypeError: position_func() takes 1 argument but 4 were given
...
due to changed api between pygtk:
https://developer.gnome.org/pygtk/stable/class-gtkmenu.html#method-gtkmenu--popup
and gtk3 gobject:
http://lazka.github.io/pgi-docs/#Gtk-3.0/callbacks.html#Gtk.MenuPositionFunc
2018-11-11 15:37:27 +01:00
Eric Le Lay
2b235ce5ed
add info message with downloaded url
2018-11-10 17:17:28 +01:00
Eric Le Lay
4c9b5b0c0b
fix cancel,download buttons enable/disable on tab switch
2018-11-10 16:55:04 +01:00
Eric Le Lay
5bab63a552
simplify: treeview always hasattre is_rubber_banding_active
2018-11-10 16:53:59 +01:00
Eric Le Lay
6fcc647c73
replace deprecated config with new one
2018-11-10 16:52:12 +01:00
Eric Le Lay
73413700fc
remove dead method for_each_episode_set_task_status
2018-11-10 16:51:32 +01:00
Eric Le Lay
d6d969ce31
fix export to local folder: 1st filename not selected
2018-10-14 21:54:38 +02:00
Eric Le Lay
2f67507a4c
fix default extensions disabled when (de)activating any other extension
2018-10-14 17:34:50 +02:00
Eric Le Lay
97db9c97d2
fix #243 add sync command to gpo
2018-10-14 16:10:45 +02:00
Eric Le Lay
cdbeb04eb5
fix #374 export to local folder filename customizable again
...
with a checkbox to export all remaining episodes to same folder.
This restores the ability to choose the filename for each episode,
while keeping export of a large number of episodes convenient (click export remaining...)
2018-10-13 18:18:25 +02:00
MarkusHackspacher
4fa86ba0b7
fix linter warning
...
set linelenght for check to 142
2018-09-15 20:11:18 +02:00
Eric Le Lay
56ab5a7890
3.10.5 revbump
2018-09-15 12:27:12 +02:00
Eric Le Lay
ed30e8b9d1
Merge pull request #538 from MarkusHackspacher/linelenght
...
fix E501 line too long
2018-09-09 21:38:26 +02:00
Eric Le Lay
5b176a60c2
3.10.4 revbump
2018-09-08 18:20:28 +02:00
MarkusHackspacher
4baaa75ee4
fix E501 line too long
...
in lines with more than 145 characters
2018-09-07 06:52:32 +02:00
MarkusHackspacher
f4c075c334
fix E127 continuation line over-indented for visual indent
2018-08-25 09:42:10 +02:00
Eric Le Lay
74d0dd4591
Merge pull request #522 from MarkusHackspacher/stylee12x-1
...
fix E127 continuation line over-indented for visual indent
2018-08-19 17:08:32 +02:00
MarkusHackspacher
9a45b04c23
fix E128 continuation line under-indented for visual indent
2018-08-18 12:27:24 +02:00
Eric Le Lay
49d2d36496
fix #516 - gpodder does not recognize new episodes as new and therefore does not download them
...
the heuristics to not mark episodes with older dates new was
tricked by a publishedDate in the future
2018-08-17 12:42:18 +02:00
Eric Le Lay
48ac787af9
fix #412 let html shownote title spill to next line instead of hzscroll
2018-08-15 16:34:26 +02:00
Eric Le Lay
7c96338f50
fix #329 console log feed progression
2018-08-15 15:57:13 +02:00
Eric Le Lay
a769429039
fix #503 Missing translatable content
2018-08-02 22:42:42 +02:00
Eric Le Lay
3d2e7822be
add missing require_version
2018-08-02 22:40:33 +02:00
Eric Le Lay
e9ab9ceb46
run isort on make lint
2018-07-29 14:45:34 +02:00
Eric Le Lay
3aebdb18a4
use localized label to find menu
...
was broken in French po because it's translated without _
2018-07-28 21:04:25 +02:00
MarkusHackspacher
735ec25fb7
not sort import gi and add isort to travis
2018-07-28 17:04:41 +02:00
Eric Le Lay
fd7036c459
work around python 3.7.0 2to3 bug with win32ctypes
...
see https://github.com/enthought/pywin32-ctypes/issues/81
also remove byreference alias to ctypes.byref
2018-07-28 14:09:04 +02:00
MarkusHackspacher
3ce9cd55e7
remove too many blank lines
2018-07-24 14:11:05 +02:00
MarkusHackspacher
82f41f4c21
sorting imports
...
with isort -y -rc
see #393
2018-07-24 11:08:10 +02:00
MarkusHackspacher
0e32494b94
fix codestyle
...
recognized by travis CI
2018-07-23 11:17:47 +02:00
Eric Le Lay
e4334eafb4
gPodderShownotesText prefer description_html to show hyperlinks
...
fixes #414 comment
2018-07-21 22:01:38 +02:00
Eric Le Lay
f8a06d025b
gPodderShownotesText shows target and change cursor when mouse pointer is over an hyperlink
2018-07-21 21:58:32 +02:00
Eric Le Lay
499a330055
fix UI freeze when going from All Episodes to a channel with shownotes open
2018-07-21 21:34:24 +02:00
Eric Le Lay
17300d3672
config.device_sync.max_filename_length value migration
...
999 is bad for NTFS, ext{2-4} (255 limit), as well as eCryptFS.
Setting it to 120 to be consistent with PodcastEpisode.MAX_FILENAME_LENGTH
2018-07-21 11:40:13 +02:00
Eric Le Lay
fc78c66f66
fix #484 windows context menu not translated
2018-07-20 17:42:10 +02:00
Eric Le Lay
febee67a36
replace py27 buffer() with py3 memoryview()
2018-07-20 16:02:09 +02:00
Eric Le Lay
7d6e476435
fix leftover python3 str incompatibility
...
fixes #482
2018-07-20 16:01:25 +02:00
Eric Le Lay
21acabebb5
Merge pull request #472 from MarkusHackspacher/style231
...
fix E231 missing whitespace after ','
2018-07-20 14:03:39 +02:00
Eric Le Lay
495ec4bb1f
warning at startup if gPodder home path is too long
...
see #494 : we get an error even if we limit folder and filename
if home path is too long.
2018-07-20 09:38:00 +02:00
Eric Le Lay
66bc2a6f72
fix #494 - ensure short filenames
...
- fix rename_download that was causing #494
- max_length is now mandatory in util.sanitize_filename
- add max_length param where it's missing
- factor name computation in deviceplaylist and sync
2018-07-20 09:38:00 +02:00
Eric Le Lay
e7e5b2209e
deviceplaylist.py: remove dead code
2018-07-20 09:38:00 +02:00
Todd Zullinger
638ce45add
Avoid python-3.7 reserved keyword "async"
...
The "async" keyword was added in python-3.7¹. Using it throws
SyntaxError exception.
¹ https://docs.python.org/3.7/whatsnew/3.7.html
https://bugs.python.org/issue30406
2018-06-25 10:28:17 -04:00
Eric Le Lay
1bc5cdcca5
3.10.3 revbump
2018-06-12 21:11:39 +02:00
Markus Hackspacher
94628749ea
Merge branch 'master' into style231
2018-06-10 14:46:12 +02:00
Eric Le Lay
3101c72387
fix linter warnings
2018-06-10 12:20:04 +02:00
Eric Le Lay
d19b0f3ff7
3.10.2 revbump
2018-06-10 12:18:28 +02:00
Eric Le Lay
93094ab976
adjust comment
2018-06-04 22:29:09 +02:00
MarkusHackspacher
c99fca923e
fix E231 missing whitespace after ','
2018-05-29 22:54:05 +02:00
Eric Le Lay
b307b41a40
apply util.Popen everywhere
...
It will default to close_fds=True.
On Windows, it will log an explanation message on incompatible use of close_fds+redirection.
2018-05-28 21:14:08 +02:00
Eric Le Lay
a1da47dfae
Merge branch 'master' of https://github.com/Vhati/gpodder into Vhati-master
2018-05-28 20:32:12 +02:00
Eric Le Lay
b102d174ac
Merge pull request #470 from MarkusHackspacher/style241
...
fix E241 multiple spaces after ':'
2018-05-28 20:22:06 +02:00
MarkusHackspacher
9c2faec85a
fix E241 multiple spaces after ':'
2018-05-27 20:29:39 +02:00
MarkusHackspacher
7188ef9f2f
fix E201 whitespace after '('
...
Part 2
2018-05-27 20:09:40 +02:00
Eric Le Lay
229844cf5c
Merge pull request #463 from MarkusHackspacher/style20x
...
fix E201 whitespace after '('
2018-05-27 10:13:29 +02:00
Eric Le Lay
92ce200438
Merge pull request #462 from MarkusHackspacher/style251
...
fix E251 unexpected spaces around keyword / parameter equals
2018-05-27 10:13:02 +02:00
Eric Le Lay
25ba18d9dd
fix linter errors
2018-05-27 10:06:31 +02:00
Eric Le Lay
92dcb1c0c3
Merge branch 'master' into gtk3-win_installer
2018-05-27 10:05:11 +02:00
Eric Le Lay
c502e67397
fix parse_youtube_url(None) exception
...
urlsplit returns empty byte(s) instead of empty str(s)
2018-05-24 21:54:38 +02:00
MarkusHackspacher
bfa93465d3
fix E201 whitespace after '('
2018-05-21 21:40:40 +02:00
MarkusHackspacher
8eaa6a3c33
fix E251 unexpected spaces around keyword / parameter equals
2018-05-21 19:26:01 +02:00
Eric Le Lay
adad95494f
remove old todo
2018-05-20 15:25:14 +02:00
MarkusHackspacher
eecfd64f63
fix E261 at least two spaces before inline comment
2018-05-17 08:39:56 +02:00
MarkusHackspacher
0a851a1302
fix E265 block comment should start with '# '
2018-05-16 18:17:52 +02:00
Eric Le Lay
ebb74743ba
fix #459 gpodder 3.10.1 on ubuntu 18.04 breaks filenames
2018-05-14 19:25:40 +02:00
Eric Le Lay
395aec5514
Merge pull request #448 from gpodder/340-connection-limit
...
support jumps in limit downloads
2018-05-13 17:32:32 +02:00
Eric Le Lay
5ade7d40ff
Merge pull request #457 from MarkusHackspacher/code-e702
...
Fix E502 the backslash is redundant between brackets
2018-05-13 17:30:10 +02:00
Eric Le Lay
36cfc6994b
Merge pull request #454 from MarkusHackspacher/style731
...
fix E731 do not assign a lambda expression, use a def
2018-05-13 17:28:30 +02:00
Eric Le Lay
dac2d2c09c
win: fix opus episodes are shown as text
...
e.g. in Binärgewitter opus feed
2018-05-12 19:09:03 +02:00
Eric Le Lay
5c029a3251
fix linter warning
2018-05-10 21:50:23 +02:00
Eric Le Lay
049187137c
win: Gtk.Builder localization working
2018-05-10 17:59:13 +02:00
jawbkr
43be0e1966
Fix unable to drag and drop from episode list
2018-05-09 21:31:09 -05:00
MarkusHackspacher
005b9615f5
Fix E502 the backslash is redundant between brackets
2018-05-08 11:41:52 +02:00
MarkusHackspacher
158210c961
fix wrong backslash
2018-05-08 11:08:38 +02:00
MarkusHackspacher
49bb08c8a3
fix E502 the backslash is redundant between brackets
2018-05-08 10:43:56 +02:00
Eric Le Lay
57433d024d
fix linter errors
2018-05-07 15:55:07 +02:00
MarkusHackspacher
039ffba236
fix E731 do not assign a lambda expression, use a def
2018-05-06 22:26:54 +02:00
Eric Le Lay
4c3583e52f
win: fix debug output to stderr
2018-05-06 18:42:00 +02:00
Eric Le Lay
b27a84991d
adjust license version for code from Quodlibet
2018-05-06 18:22:52 +02:00
Eric Le Lay
fbc268be74
win: get GPODDER_HOME from registry
2018-05-06 18:17:23 +02:00
MarkusHackspacher
11bf9e3ef8
fix E401 multiple imports on one line
2018-05-05 23:50:37 +02:00