Skip to content

Release history

ytdl-sub releases

Lightweight tool to automate downloading and metadata generation with yt-dlp

All releases

29 shown

Upgrade now
2026.07.17.post1 Maintenance
Dependencies

Routine maintenance and dependency updates.

No immediate action
2026.07.16 New feature

keep_max_files_sort_by option

No immediate action
2026.06.23 Bug fix

Folder name truncation fix

Review required
2026.06.12 Maintenance
Dependencies

Routine maintenance and dependency updates.

2026.05.10.post1 Bugfix

Fixed output sanitization type checking when the return type isn't a class.

Full changelog

[BUGFIX] Fix output sanitization type checking (#1467)

In the inspection output, we check function's return types via issubclass to see if an optimization can be made. Guard against this check in case the return type isn't a class -- it could be a Union[..., ...] from a conditional.

2026.04.13.post1 New feature

New `inspect` subcommand displays subscription preset format and variable resolution.

2026.03.19 Maintenance

Updated yt-dlp dependency to include latest upstream improvements.

2026.03.09.post3 Maintenance

Update pytest requirement from =7.2 to >=7.2, Co-authored-by: dependabot[bot]

2026.01.30 Maintenance

Updated yt-dlp dependency to version 2026.1.29, incorporating upstream improvements and bug fixes from the latest release.

2026.01.27.post1 Maintenance

[BACKEND] Less string casting behind the scenes (#1425) Simplifies internal scripts by not casting things to String when unnecessary.

2026.01.27 Bugfix

[HOTFIX] Fix StringFormattingException regarding keep_max_files (#1427) Closes this issue from last release: https://github.com/jmbannon/ytdl-sub/issues/1426

2026.01.24.post1 Bug fix

Reverted a formatter post_process change that introduced a breaking change to ytdl_options, restoring previous behavior.

2026.01.24 Maintenance

[BACKEND] More flexible formatter post_process (#1421) Makes the underlying formatting process better handle native (non-string) types in a more flexible way.

2026.01.23.post1 Maintenance

[BACKEND] Cache cycle checks (#1420) Small speedup to make cycle validation faster.

2026.01.23 Bugfix

[BUGFIX] Fix soundcloud not downloading tracks (#1419) The /tracks URL is currently broken in yt-dlp. Now uses the input URL which will download the entire artists' page instead to get non-album tracks.

2026.01.16.post1 Maintenance

[BACKEND] Preserve dict formatter value (#1416) Do not modify the original definition of dict validators.

2026.01.16 Maintenance

[BACKEND] Sorted video tags (#1417) For reproducibility in tests.

2026.01.13 New feature
Notable features
  • Partial script resolution mechanism
  • Inspect sub-command preparation
2026.01.11 Maintenance

[BACKEND] Remove cast and legacy_bracket_safety usage (#1414) Removes unused casts and calls to the legacy_bracket_safety function.

2026.01.06 Maintenance

[BACKEND] Simplify script quote generation (#1409) Internal script -> string generation used triple-quotes redundantly. Try to use them less to make it more human-readable.

Beta — feedback welcome: [email protected]