Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | refactor(crates/fmt): Init forked `uu_fmt` library | Benedikt Peetz | 2025-02-16 |
| | |||
* | chore(crates/termsize): Vendor | Benedikt Peetz | 2025-02-16 |
| | |||
* | refactor(treewide): Remove all references of the now obsolete update_raw.py | Benedikt Peetz | 2025-02-16 |
| | |||
* | feat(yt/update): Port the Python updater to rust | Benedikt Peetz | 2025-02-16 |
| | | | | | | | | This has the massive upside, that we no longer need to communicate via JSON, and thus can filter errors and use included rust logger. The big downside of this approach is, that this port regresses the update speed by a factor of 3 (i.e., previously updating took 1 min for my set of subscriptions, it now takes 3 mins). | ||
* | chore(yt): Change the type of `max_backlog` to `usize` | Benedikt Peetz | 2025-02-16 |
| | |||
* | fix(crates/yt_dlp/wrappers/info_json): Serialize the `InfoType`s with their ↵ | Benedikt Peetz | 2025-02-16 |
| | | | | correct name | ||
* | fix(crates/yt_dlp/wrappers/info_json): Don't serialize `None` values | Benedikt Peetz | 2025-02-16 |
| | | | | This keeps the jsons, which we internally parse, shorter. | ||
* | feat(crates/yt_dlp/lib): Wrap `process_ie_result` function | Benedikt Peetz | 2025-02-16 |
| | |||
* | fix(crates/yt_dlp/lib): Actually resolve the `entries` generator object | Benedikt Peetz | 2025-02-16 |
| | | | | Previously, we just ignored it. | ||
* | fix(crates/yt_dlp/lib): Swallow all error logs from yt_dlp | Benedikt Peetz | 2025-02-16 |
| | | | | | | These are already returned as `PythonError`s and thus often printed twice. As such, removing the python print gives the consumer more liberty of how to handle the error. | ||
* | fix(crates/yt_dlp/progress_hook): Print the progress to stderr | Benedikt Peetz | 2025-02-16 |
| | |||
* | fix(crates/yt_dlp/error::PythonError): Add the python type as `kind` | Benedikt Peetz | 2025-02-16 |
| | |||
* | fix(crates/libmpv2/Mpv::command): Correctly escape arguments | Benedikt Peetz | 2025-02-14 |
| | | | | | This allows us to avoid all these ad-hoc command escaping `format!` invocations. | ||
* | fix(yt/watch): Always open a `mpv` window | Benedikt Peetz | 2025-02-14 |
| | | | | | Otherwise, controlling playback of things like podcast or audio dramas becomes impossible because they do not have a video stream. | ||
* | fix(yt/select/selection_file/help.str): Disable vim line wrapping | Benedikt Peetz | 2025-02-14 |
| | | | | | Wrapping lines in a file with concealed lines (due to `tree-sitter-yts`), is rather ugly. So just disable it. | ||
* | feat(yt/status): Include the approximate total watch time | Benedikt Peetz | 2025-02-14 |
| | |||
* | feat(yt/select/selection_file/duration): Support durations up to days | Benedikt Peetz | 2025-02-14 |
| | | | | | The current maximum of hours was enough in most cases, but not for all cases. | ||
* | fix(yt/download/download_options): Stop trying to write annotations | Benedikt Peetz | 2025-02-14 |
| | | | | | | 1. Prefer free formats 2. The annotations setting was causing a constant warning, and served very little purpose. | ||
* | fix(package/blake3): Migrate to the new `fetchCargoVendor` fetcher | Benedikt Peetz | 2025-02-14 |
| | | | | | This is necessary, because the old `fetchCargoTarball` fetcher, has become not reproducible because of `cargo` changes. | ||
* | feat(yt): Make colorization of the output configurable | Benedikt Peetz | 2025-02-14 |
| | |||
* | fix(yt/cli): Make most of the arguments to `yt select <cmd> <hash>` optional | Benedikt Peetz | 2025-02-14 |
| | | | | | | | In most cases `yt select watch <id>` is enough, but the previous cli specification required you to insert: `[TITLE] [DATE] [PUBLISHER] [DURATION] [URL]`. These are not used (except the `url` command), and thus the cli usage can be greatly improved by allowing the to be empty. | ||
* | feat(yt/select/cmds/add): Support `start` `stop` args | Benedikt Peetz | 2025-02-14 |
| | | | | These allow you to only add playlist entries from `start` to `stop`. | ||
* | feat(version): Include `yt-dlp` and `python` version in `--version` | Benedikt Peetz | 2025-02-14 |
| | | | | | Both are run-time dependencies and need to be up-to-date (especially, `yt-dlp`) | ||
* | build(scripts/cprh): Remove | Benedikt Peetz | 2025-02-14 |
| | | | | This has been superseded by my `stamp` script. | ||
* | chore(old): Remove | Benedikt Peetz | 2025-02-14 |
| | | | | There is no need to include this old code any longer. | ||
* | chore(crates/yt_dlp/wrappers/info_json): Add further fields | Benedikt Peetz | 2025-02-14 |
| | |||
* | test(crates/yt_dlp): Ignore tests that hang forever | Benedikt Peetz | 2025-02-14 |
| | |||
* | fix(crates/yt_dlp): Actually return errors instead of panicing | Benedikt Peetz | 2025-02-14 |
| | |||
* | fix(crates/yt_dlp): Avoid printing the file extension in the progress display | Benedikt Peetz | 2025-02-14 |
| | | | | The file extension should not be relevant for a user. | ||
* | fix(crates/libmpv2): Improve the error message for the `RawError` | Benedikt Peetz | 2025-02-14 |
| | | | | | Additionally, this commits migrates the error away from `thiserror`, simply because the crate is not needed at this scale. | ||
* | build(treewide): Update | Benedikt Peetz | 2025-02-14 |
| | |||
* | build(.envrc): Always save the `output.info.json` if in devshell | Benedikt Peetz | 2025-02-14 |
| | |||
* | chore(version): v1.4.1 v1.4.1 | Benedikt Peetz | 2024-12-14 |
| | |||
* | fix(yt_dlp/wrappers/info_json): Add further fields to `RequestedDownloads` | Benedikt Peetz | 2024-12-14 |
| | |||
* | chore(version): v1.4.0 v1.4.0 | Benedikt Peetz | 2024-12-14 |
| | |||
* | build(treewide): Update | Benedikt Peetz | 2024-12-14 |
| | |||
* | feat(yt/watch/events): Wire up the `yt-description-*` client commands | Benedikt Peetz | 2024-12-14 |
| | |||
* | refactor(yt/description): Provide `get` function, returning a string | Benedikt Peetz | 2024-12-14 |
| | | | | This allows code to get the description without shelling out. | ||
* | refactor(yt/config): Rename `local_comments_length` to `local_display_length` | Benedikt Peetz | 2024-12-14 |
| | | | | This allows to use this value both for comments and description display. | ||
* | feat(yt/description): Init | Benedikt Peetz | 2024-12-14 |
| | |||
* | refactor(yt/comments): Move the display code to a separate function | Benedikt Peetz | 2024-12-14 |
| | |||
* | fix(yt/cli): Ensure that all `[No <xyz>]` value can be parsed | Benedikt Peetz | 2024-12-14 |
| | |||
* | feat(tree-sitter-yts): Update to new tree-sitter version & improve parsing | Benedikt Peetz | 2024-12-14 |
| | |||
* | fix(yt_dlp/wrappers/info_json): Add missing fields to `Subtitle` | Benedikt Peetz | 2024-12-14 |
| | |||
* | fix(yt_dlp/wrappers/info_json): Treat `Extractor` and `ExtractorKey` as Strings | Benedikt Peetz | 2024-12-14 |
| | | | | | There are too many possible extractors to mandate hard-coding them in a enumeration. | ||
* | chore(version): v1.3.3 v1.3.3 | Benedikt Peetz | 2024-11-16 |
| | |||
* | build(treewide): Update dependencies | Benedikt Peetz | 2024-11-16 |
| | |||
* | fix(yt/select/add): Avoid crash on adding a video | Benedikt Peetz | 2024-11-08 |
| | | | | | | Currently, it expects the video to be already added to the database, as it requires looking up it's hash from it. Re-ordering the statements is not the cleanest solution, but it works. | ||
* | chore(version): v1.3.2 v1.3.2 | Benedikt Peetz | 2024-11-04 |
| | |||
* | chore(tree-sitter-yts): Add copyright headers | Benedikt Peetz | 2024-11-04 |
| |