Mike Fährmann
9e56d81292
fix Last-Modified mtime overwriting post processor mtime ( #7529 )
...
https://github.com/mikf/gallery-dl/issues/7529#issuecomment-2989955455
- split '_mtime' into '_mtime_http' and '_mtime_meta'
- add PathFormat.set_mtime() method
2025-06-20 16:19:37 +02:00
Mike Fährmann
41191bb60a
'match.group(N)' -> 'match[N]' ( #7671 )
...
2.5x faster
2025-06-18 13:05:58 +02:00
Mike Fährmann
fa1fc39a36
[pp:exec] implement 'commands' option
...
to run multiple commands in succession
and stopping if one fails
2025-06-13 20:19:01 +02:00
Mike Fährmann
e08ec7e083
update copyright notices
2025-06-13 00:03:41 +02:00
Mike Fährmann
811b665e33
remove @staticmethod decorators
...
There might have been a time when calling a static method was faster
than a regular method, but that is no longer the case. According to
micro-benchmarks, it is 70% slower in CPython 3.13 and it also makes
executing the code of a class definition slower.
2025-06-12 22:50:52 +02:00
Mike Fährmann
9b43a3677e
[pp:directory] add 'directory' post processor ( #7432 )
2025-04-28 09:08:35 +02:00
Mike Fährmann
763bbfae8b
[pp:ugoira] support '"keep-files": true' + custom extension ( #7304 )
...
for '"mode": "archive"'
2025-04-17 20:03:18 +02:00
Mike Fährmann
fc561c2936
[pp:ugoira] restore 'keep-files' functionality ( #7304 )
...
fixes regression introduced in a08c35ad79
2025-04-17 19:25:31 +02:00
Mike Fährmann
f3ababc3be
[pp:ugoira] use '_ugoira_frame_index' to detect '.zip' files
2025-04-17 18:37:08 +02:00
Mike Fährmann
a08c35ad79
[pp:ugoira] preserve 'extension' when using "mode": "archive" ( #7304 )
2025-04-11 16:33:11 +02:00
Mike Fährmann
edd90fbf02
[pp:metadata] add 'metadata-path' option ( #6582 )
...
https://github.com/mikf/gallery-dl/issues/6582#issuecomment-2781643835
2025-04-09 20:24:14 +02:00
Mike Fährmann
8eb365d4b6
[pp:metadata] fix handling of empty directory paths ( #7296 )
2025-04-08 17:03:27 +02:00
Mike Fährmann
fd4de02e67
[archive] support PostgreSQL archives for post processors ( #6152 )
2025-02-17 14:58:14 +01:00
Mike Fährmann
800cf5beb5
replace 'print()' with 'output.stderr_write("\n")'
2025-02-15 18:01:05 +01:00
Mike Fährmann
d8cf381904
[archive] use defaults when 'prefix'/'format' are 'null'
2024-11-29 16:36:35 +01:00
Mike Fährmann
9b2d782cb7
[pp:classify] rewrite & simplify ( #5213 )
...
Do not manually build paths, which get later overwritten by
pathfmt.build_path() anyway. Just update the target directory and let
the rest of the "path logic" handle it.
Fixes skipping previously downloaded and categorized files,
which was broken since 8124c16a50
2024-11-19 08:05:11 +01:00
Mike Fährmann
4b7a24122e
[pp:ugoira] prevent BadZipFile exceptions ( #6285 )
...
reset '_convert_…' flags on every 'prepare' event
2024-10-10 09:20:06 +02:00
Mike Fährmann
cc38042500
[pp:ugoira] forward frame data as '_ugoira_frame_data' ( #6154 , #6285 )
2024-10-08 11:28:44 +02:00
Mike Fährmann
c0835a0cd1
[pp:ugoira] catch all exceptions when extracting zip archive ( #6285 )
2024-10-08 10:06:19 +02:00
Mike Fährmann
a051e1c955
directly pass exception instances as 'exc_info' logger argument
2024-09-19 14:50:08 +02:00
Mike Fährmann
319116c923
[pp:ugoira] update mtime of zipped files ( #6147 )
...
in zip archives generated by '"mode": "archive"'
2024-09-12 21:51:55 +02:00
Mike Fährmann
ff07aef776
[pp:ugoira] implement storing "original" frames in archives ( #6147 )
...
… by using '"mode": "archive"'
- rename 'ffmpeg-demuxer' option to 'mode'
- add 'metadata' option
- add 'zip' as a possible `--ugoira` format
TODO: adjust file mtimes inside archives when 'mtime' is enabled
2024-09-09 21:41:37 +02:00
Mike Fährmann
061cc12fdd
[pp:ugoira] fix "KeyError: '_ugoira_frame_index'" ( #6154 )
...
fixes regression introduced in 07bd967f
Files with a non-ugoira related 'frames' metadata field would cause an
exception when an ugoira post processor was active.
2024-09-06 21:29:12 +02:00
Mike Fährmann
07bd967f59
[pp:ugoira] update ( #6056 )
...
- introduce '_ugoira_frame_index' metadata field
- store Ugoira file exts separately
- add 'skip' option
2024-09-05 20:25:20 +02:00
Mike Fährmann
8072dcf717
[pp:rename] recheck if file exists only when necessary
2024-09-05 17:42:29 +02:00
Mike Fährmann
359572162b
[pp:rename] improve renaming files 'to' a format ( #5846 , #6044 )
2024-09-03 21:17:31 +02:00
Mike Fährmann
57da9ebfb5
[pp:ugoira] initial support for "original" frames ( #6056 )
2024-09-01 21:32:00 +02:00
Mike Fährmann
ae9b0da755
[pp:hash] add 'hash' post processor ( #6099 )
2024-08-31 17:04:44 +02:00
Mike Fährmann
17f5ba43a8
[pp:rename] add 'rename' post processor ( #5846 , #6044 )
...
renames previously downloaded files to a different filename format
2024-08-30 18:21:36 +02:00
Mike Fährmann
eef5beb841
[pp:metadata] fix using '..' in directories on Windows ( #5942 , #6094 )
2024-08-27 14:38:40 +02:00
Mike Fährmann
4b94b7d477
[pp:metadata] add 'include' and 'exclude' options ( #6058 )
2024-08-19 21:58:57 +02:00
Mike Fährmann
605f6fba2c
[pp:metadata] implement 'base-directory' option ( #5262 , #5728 )
2024-08-07 10:15:06 +02:00
Mike Fährmann
1656c9287d
[pp:metadata] fix 'directory' when file directory has conditions ( #5728 )
2024-07-06 22:07:17 +02:00
Mike Fährmann
da9916c01f
[pp:metadata] implement format strings for 'directory' ( #5728 )
2024-07-06 03:08:59 +02:00
Mike Fährmann
4727ad6f57
[pp:ugoira] include traceback in exception debug log ( #5683 )
2024-06-16 18:42:32 +02:00
Mike Fährmann
9c65db2a92
consistent 'with open(…) as fp:' syntax
2024-06-14 01:22:00 +02:00
Mike Fährmann
88f94190f4
[archive] move DownloadArchive into its own module
2024-05-10 01:05:28 +02:00
Mike Fährmann
0e730ba980
[pp:mtime] do not overwrite '_mtime' for None values ( #5439 )
2024-04-07 02:33:19 +02:00
Mike Fährmann
3346a377b3
[pp:ugoira] log errors for general exceptions
2024-04-06 17:00:48 +02:00
Mike Fährmann
9a8403917a
restore LD_LIBRARY_PATH for PyInstaller builds ( #5421 )
2024-04-06 16:58:33 +02:00
Mike Fährmann
92fbf09643
remove single quotes in some logging messages ( #4908 )
...
('FileNotFoundError: [Errno 2] No such file or directory: ''')
->
(FileNotFoundError: [Errno 2] No such file or directory: '')
2023-12-11 19:13:45 +01:00
Mike Fährmann
6402f2950f
[pp:metadata] ignore non-string tag values ( #4764 )
2023-11-04 17:33:14 +01:00
Mike Fährmann
72b18d701f
represent util.NONE as 'null' in JSON output
...
was '"None"' before
2023-11-02 15:23:28 +01:00
Mike Fährmann
67ba4ee842
[pp:exec] support more replacement fields for '--exec' ( #4633 )
...
- {_directory}
- {_filename}
- {_path} (alias for {})
2023-10-09 12:50:10 +02:00
Mike Fährmann
92f98e6f5e
'sys.exit' -> 'SystemExit'
2023-08-21 23:46:39 +02:00
Mike Fährmann
c1c73c0b0e
[pp:ugoira] add '"framerate": "uniform"' ( #4421 )
2023-08-21 19:43:47 +02:00
Mike Fährmann
2a3acd318a
[pp:ugoira] fix high frame rates ( #4421 )
...
only return an output frame rate for non-uniform ugoira
when the frame delay gcd is >= 10, i.e. 100 fps
2023-08-21 19:17:14 +02:00
Mike Fährmann
70bdf32a88
[pp:ugoira] extend 'ffmpeg-output' ( #4421 )
...
- when setting this option to a string value,
pass -hide-banner and -loglevel to FFmpeg
- change default to "error"
2023-08-21 18:19:53 +02:00
Mike Fährmann
0ef1fcab20
[postprocessor] update 'finalize' events
...
Add 'finalize-error' and 'finalize-success' events that trigger
depending on whether error(s) did or did not happen.
'finalize' itself now always triggers regardless of error status.
(was supposed to have the same behavior as the new 'finalize-success')
2023-08-10 19:46:37 +02:00
Mike Fährmann
15275b3524
[postprocessor:ugoira] restore 'libx264-prevent-odd' ( #4407 )
...
was accidentally removed in commit be9547a5
2023-08-10 18:32:52 +02:00