about summary refs log tree commit diff stats
path: root/crates/yt_dlp (follow)
Commit message (Collapse)AuthorAge
* build(yt_dlp/Cargo.toml): Pin git dependenciesBenedikt Peetz4 days
|
* fix(yt_dlp/post_processors/dearrow): Don't try to access the drained vecBenedikt Peetz4 days
| | | | | | If all titles were declared “bad” the pp previously tried to access the first title in the array, which was already drained. We now simply clone the array to facilitate this usage.
* feat(yt/version): Add the (rust)python version againBenedikt Peetz4 days
|
* chore(treewide): Assure that `nix fmt` and `reuse lint` are happyBenedikt Peetz11 days
|
* refactor(yt_dlp): Split the big `lib.rs` file upBenedikt Peetz11 days
|
* refactor(yt_dlp/progress_hook): Use public api via `__priv` moduleBenedikt Peetz11 days
| | | | | That makes it clear that these parts are only exposed to facilitate macro use and not as part of the public API.
* fix(yt_dlp/post_processing/dearrow): Correctly type the `CasualVote` fieldBenedikt Peetz11 days
|
* refactor(yt_dlp/logging): Avoid adding to the `__all__` listBenedikt Peetz11 days
| | | | | This seems to have no apparent effect on anything. As such I went ahead and removed this dead code.
* fix(yt_dlp): Typos in stringsBenedikt Peetz11 days
|
* fix(yt_dlp/post_processors): Register in pythonBenedikt Peetz11 days
| | | | | | | | | | | We need to tell yt_dlp about our post processors, as they would otherwise not take full effect. For example, changing the title would previously only have changed the title in the *in-memory* info json, the actual file on disk (video and .info.json) would still have the old title, as yt_dlp did not know about our post processor. Registering it via their api also has the upside of being able to determine when to run.
* fix(yt_dlp/post_processors/dearrow): Migrate to curl for api requestsBenedikt Peetz11 days
| | | | | | The reqwest crate will panic if it is blockingly run inside another executor. But we cannot make this function async, as the whole api is forced to be sync by python ffi.
* fix(yt_dlp/): Include the frozen python stdlibBenedikt Peetz12 days
| | | | | This avoids the dependency on a real std-library (i.e., python3) at runtime.
* style(treewide): ReformatBenedikt Peetz12 days
|
* chore(treewide): Add missing copyright headersBenedikt Peetz12 days
|
* feat(yt_dlp): Support a DeArrow post processorBenedikt Peetz12 days
|
* refactor(yt_dlp/lib): De-duplicate the info json sanitize codeBenedikt Peetz12 days
|
* refactor(yt_dlp/lib): Explicitly convert python exceptions into an errorBenedikt Peetz12 days
| | | | This avoids having to wrap all blocks into a `match` statement.
* fix(yt_dlp/json_{cast,get}): Improve error reportingBenedikt Peetz12 days
|
* docs(yt_dlp): Fix typo in `Cargo.toml`'s descriptionBenedikt Peetz13 days
|
* fix(yt_dlp): Avoid writing the json output to diskBenedikt Peetz13 days
| | | | | There is no point in doing this anymore, as we no longer need to deserialize it.
* feat({yt/update,yt_dlp}): Use yt_dlp errors againBenedikt Peetz14 days
| | | | | This code was temporarily commented out, as I had not migrated it in the pyo3 -> rustpython migration.
* feat({yt_dlp,yt}): Migrate from pyo3 to rustpythonBenedikt Peetz2025-06-13
| | | | | | | | That allows us to avoid cpython's GIL and gives us full ability to leverage async/concurrent code to speed up python operations. I have also taken the opportunity to change the `InfoJson` struct to an untyped json value, as that is what it actually is.
* chore(yt_dlp/wrappers/info_json): Add additional missing fieldBenedikt Peetz2025-03-21
|
* refactor(yt_dlp): Remove the unneeded `async` from the public functionsBenedikt Peetz2025-03-21
|
* build(treewide): UpdateBenedikt Peetz2025-03-21
|
* chore(treewide): Add/Update the license headersBenedikt Peetz2025-02-22
|
* chore(crates/yt_dlp/wrappers/info_json): Add further fieldsBenedikt Peetz2025-02-21
|
* style(treewide): Re-formatBenedikt Peetz2025-02-16
|
* fix(crates/yt_dlp/wrappers/info_json): Serialize the `InfoType`s with their ↵Benedikt Peetz2025-02-16
| | | | correct name
* fix(crates/yt_dlp/wrappers/info_json): Don't serialize `None` valuesBenedikt Peetz2025-02-16
| | | | This keeps the jsons, which we internally parse, shorter.
* feat(crates/yt_dlp/lib): Wrap `process_ie_result` functionBenedikt Peetz2025-02-16
|
* fix(crates/yt_dlp/lib): Actually resolve the `entries` generator objectBenedikt Peetz2025-02-16
| | | | Previously, we just ignored it.
* fix(crates/yt_dlp/lib): Swallow all error logs from yt_dlpBenedikt Peetz2025-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 stderrBenedikt Peetz2025-02-16
|
* fix(crates/yt_dlp/error::PythonError): Add the python type as `kind`Benedikt Peetz2025-02-16
|
* chore(crates/yt_dlp/wrappers/info_json): Add further fieldsBenedikt Peetz2025-02-14
|
* test(crates/yt_dlp): Ignore tests that hang foreverBenedikt Peetz2025-02-14
|
* fix(crates/yt_dlp): Actually return errors instead of panicingBenedikt Peetz2025-02-14
|
* fix(crates/yt_dlp): Avoid printing the file extension in the progress displayBenedikt Peetz2025-02-14
| | | | The file extension should not be relevant for a user.
* build(treewide): UpdateBenedikt Peetz2025-02-14
|
* fix(yt_dlp/wrappers/info_json): Add further fields to `RequestedDownloads`Benedikt Peetz2024-12-14
|
* build(treewide): UpdateBenedikt Peetz2024-12-14
|
* fix(yt_dlp/wrappers/info_json): Add missing fields to `Subtitle`Benedikt Peetz2024-12-14
|
* fix(yt_dlp/wrappers/info_json): Treat `Extractor` and `ExtractorKey` as StringsBenedikt Peetz2024-12-14
| | | | | There are too many possible extractors to mandate hard-coding them in a enumeration.
* build(treewide): Update dependenciesBenedikt Peetz2024-11-16
|
* build(treewide): UpdateBenedikt Peetz2024-11-04
|
* fix(yt_dlp/progress_hook): Mark estimates as suchBenedikt Peetz2024-11-04
| | | | | Currently, the wildly changing estimate numbers are not differentiated from the valid numbers.
* style(treewide): FormatBenedikt Peetz2024-10-29
|
* chore(yt_dlp/wrapper/info_json): Add further structure fieldsBenedikt Peetz2024-10-29
|
* fix(yt_dlp/lib/progress_hook): Avoid overriding previous messagesBenedikt Peetz2024-10-29
| | | | Otherwise, the hook would simply cancel the already printed line.