Code Monkey home page Code Monkey logo

wasari's Introduction

⚠️ Crunchyroll has apparently gone DRM only, this project is not working at the moment.

Anime Downloader

Build Status Latest version

Introduction

Wasari is a tool for downloading anime from various sources, and transcoding them to a format that is supported by most media players.

Features

  • 📺 Crunchyroll Support
  • ⭐ Anime4K Support
  • 📝 Soft subs encoding
  • ⬇️ Download queue
  • 🚄 HEVC Transcoding (With NVIDIA and AMD AMF Hardware Acceleration support)

ℹ️ Getting Started

⚠️ Prerequisite

Wasari can be used as a CLI tool, or as a Docker container (as an API).

To use the CLI tool, you can download the latest release from the releases page and run it using the following command:

.\Wasari.Cli <Series-URL> -o <Output-Directory>

You can check the full supported arguments list using the --help argument.

To utilize the Docker container, you can retrieve the most recent image from Docker Hub. By exposing port 80, you can access the API through the /media/download endpoint. To test the API, you can utilize Swagger UI, which is accessible at the /swagger endpoint.

👍 Credits

  • FFmpeg - For video decoding/transcoding
  • YT-DLP - For video downloading
  • CliFx - For arguments parsing

wasari's People

Contributors

dependabot[bot] avatar redbaty avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

wasari's Issues

I run the command and it gives me this error

El sistema no puede encontrar el texto del mensaje para el mensaje número 0x2350 en el archivo de mensajes para Application.

(c) Microsoft Corporation. Todos los derechos reservados.

D:\bin>wasari.cli -h


\ \ / /_ _ ___ __ _ _ (_)
\ \ /\ / / _ / __|/ _ | '
| |
\ V V / (| _ \ (| | | | |
_/_/ _
,|/_,|| ||

Current version: 1.0.17.0
Available environment features: "YtDlp", "Ffmpeg", "FfmpegLibPlacebo", "NvidiaGpu"
Unhandled exception. System.InvalidOperationException: Failed to infer the default application executable name. Please specify it explicitly using SetExecutableName().
at CliFx.CliApplicationBuilder.GetDefaultExecutableName() in //CliFx/CliApplicationBuilder.cs:line 246
at CliFx.CliApplicationBuilder.Build() in /
/CliFx/CliApplicationBuilder.cs:line 201
at Wasari.Cli.Program.Main()
at Wasari.Cli.Program.

()

D:\bin>

Download fails with: Response status code does not indicate success: 400 (Bad Request).

Attempting to download episode 1 of https://beta.crunchyroll.com/series/G4PH0WXVJ fails with the following output.

PS C:\Users\tgord\crunchyroll> D:\Users\tgord\Apps\Wasari.exe crunchy https://beta.crunchyroll.com/series/G4PH0WXVJ -e 1
[21:39:55 INF] Logging to file at path C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
[21:39:58 INF] Available environment features: ["YtDlp", "Ffmpeg", "NvidiaGpu"]
[21:39:58 INF] Current version is: 1.0.62.0
[21:39:58 INF] BETA Series detected
[21:39:58 INF] Start processing HTTP request POST https://beta-api.crunchyroll.com/auth/v1/token
[21:39:58 INF] Sending HTTP request POST https://beta-api.crunchyroll.com/auth/v1/token
[21:39:58 INF] Received HTTP response headers after 237.5106ms - 200
[21:39:58 INF] End processing HTTP request after 247.9265ms - 200
[21:39:58 INF] Created unauthenticated API service
[21:39:58 INF] NVIDIA hardware acceleration is available
ERROR
System.Net.Http.HttpRequestException: Response status code does not indicate success: 400 (Bad Request).
  at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
  at JsonExtensions.Http.HttpExtensions.GetJsonAsync(HttpClient httpClient, Uri requestUri, CancellationToken cancellationToken) in \_\JsonExtensions\Http\HttpExtensions.cs:41
  at JsonExtensions.Http.HttpExtensions.GetJsonAsync(HttpClient httpClient, String requestUri, CancellationToken
 cancellationToken) in \_\JsonExtensions\Http\HttpExtensions.cs:53
  at Wasari.Crunchyroll.API.CrunchyrollApiService.GetSeasons(String seriesId)+MoveNext()
  at Wasari.Crunchyroll.API.CrunchyrollApiService.GetSeasons(String seriesId)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at Wasari.Crunchyroll.BetaCrunchyrollService.GetEpisodes(String url)+MoveNext()
  at Wasari.Crunchyroll.BetaCrunchyrollService.GetEpisodes(String url)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Linq.AsyncEnumerable.WhereEnumerableAsyncIterator`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Where.cs:233
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Linq.OrderedAsyncEnumerable`1.ToArrayAsync(CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:84
  at System.Linq.OrderedAsyncEnumerable`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:47
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`kup.cs:105
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.AsyncEnumerable.GroupedAsyncEnumerable`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\GroupBy.cs:1094
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+MoveNext()
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+MoveNext()
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Linq.AsyncEnumerable.<ToListAsync>g__Core|424_0[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\ToList.cs:36
  at System.Linq.AsyncEnumerable.<ToListAsync>g__Core|424_0[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\ToList.cs:36
  at Wasari.App.DownloadSeriesService.DownloadEpisodes(Uri url, DownloadParameters downloadParameters)
  at Wasari.Commands.CrunchyrollDownloadSeriesCommand.ExecuteAsync(IConsole console)
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:191

Trying episode 1 of https://beta.crunchyroll.com/series/GRJ0J828Y/kaguya-sama-love-is-war also fails, but with a different error, " The method or operation is not implemented":

PS C:\Users\tgord\crunchyroll> D:\Users\tgord\Apps\Wasari.exe crunchy https://beta.crunchyroll.com/series/GRJ0J828Y/kaguya-sama-love-is-war -e 1
[21:50:16 INF] Logging to file at path C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
[21:50:18 INF] Available environment features: ["YtDlp", "Ffmpeg", "NvidiaGpu"]
[21:50:18 INF] Current version is: 1.0.62.0
[21:50:18 INF] BETA Series detected
[21:50:18 INF] Start processing HTTP request POST https://beta-api.crunchyroll.com/auth/v1/token
[21:50:18 INF] Sending HTTP request POST https://beta-api.crunchyroll.com/auth/v1/token
[21:50:18 INF] Received HTTP response headers after 244.5916ms - 200
[21:50:18 INF] End processing HTTP request after 255.2684ms - 200
[21:50:18 INF] Created unauthenticated API service
[21:50:18 INF] NVIDIA hardware acceleration is available
ERROR
System.NotImplementedException: The method or operation is not implemented.
  at Wasari.Crunchyroll.API.Converters.ThumbnailsConverter.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options)
  at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
  at System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1.ReadJsonAndSetMember(Object obj, ReadStack& state, Utf8JsonReader& reader)
  at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
  at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
  at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state)
  at System.Text.Json.JsonSerializer.ReadFromSpan[TValue](ReadOnlySpan`1 utf8Json, JsonTypeInfo jsonTypeInfo, Nullable`1 actualByteCount)
  at System.Text.Json.JsonSerializer.ReadUsingMetadata[TValue](JsonElement element, JsonTypeInfo jsonTypeInfo)
  at System.Text.Json.JsonSerializer.Deserialize[TValue](JsonElement element, JsonSerializerOptions options)
  at Wasari.Crunchyroll.API.CrunchyrollApiService.GetEpisodes(String seasonId)+MoveNext()
  at Wasari.Crunchyroll.API.CrunchyrollApiService.GetEpisodes(String seasonId)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at TomLonghurst.EnumerableAsyncProcessor.RunnableProcessors.ResultProcessors.Abstract.ResultAbstractAsyncProcessor`2.ProcessItem(Tuple`2 itemTaskCompletionSourceTuple)
  at Wasari.Crunchyroll.BetaCrunchyrollService.GetEpisodes(String url)+MoveNext()
  at Wasari.Crunchyroll.BetaCrunchyrollService.GetEpisodes(String url)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Linq.AsyncEnumerable.WhereEnumerableAsyncIterator`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Where.cs:233
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Linq.OrderedAsyncEnumerable`1.ToArrayAsync(CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:84
  at System.Linq.OrderedAsyncEnumerable`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:47
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.AsyncEnumerable.GroupedAsyncEnumerable`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\GroupBy.cs:1094
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+MoveNext()
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+MoveNext()
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Linq.AsyncEnumerable.<ToListAsync>g__Core|424_0[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\ToList.cs:36
  at System.Linq.AsyncEnumerable.<ToListAsync>g__Core|424_0[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\ToList.cs:36
  at Wasari.App.DownloadSeriesService.DownloadEpisodes(Uri url, DownloadParameters downloadParameters)
  at Wasari.Commands.CrunchyrollDownloadSeriesCommand.ExecuteAsync(IConsole console)
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:191

I also tried passing the username and password as command line options rather than using the environment variables, but got the same result.

Environment

Wasari 1.0.62.0
Windows 10

PS C:\Users\tgord\crunchyroll> $PSVersionTable. PSVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      19041  1682

My account is a "Fan" level premium account.

Only the first episode in a range is downloaded

When specifying a range of episodes to download like -e 7-12, only the first episode in the range is downloaded.

PS D:\Users\tgord\crunchyroll> Wasari.Cli.exe https://beta.crunchyroll.com/series/G4PH0WXVJ -e 7-12 -u user -p password
 __        __                   _
 \ \      / /_ _ ___  __ _ _ __(_)
  \ \ /\ / / _` / __|/ _` | '__| |
   \ V  V / (_| \__ \ (_| | |  | |
    \_/\_/ \__,_|___/\__,_|_|  |_|


Available environment features: "YtDlp", "Ffmpeg", "FfmpegLibPlacebo", "NvidiaGpu"
Latest version: 2022.09.01, Current version: 2022.09.01
yt-dlp is up to date (2022.09.01)
[17:38:46 INF] YT-DLP is up-to-date
[17:38:46 INF] Output directory is D:\Users\tgord\crunchyroll
[17:38:48 INF] Getting information for https://beta.crunchyroll.com/series/G4PH0WXVJ
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GEVUZ4ZDG/secure-a-wife
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GMKUX838J/operation-strix
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4X410/prepare-for-the-interview
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE1EM1/the-prestigious-schools-interview
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQPQWG/will-they-pass-or-fail
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/G4VUQEQV9/the-friendship-scheme
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/G14U4W41N/the-targets-second-son
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GJWU2520V/the-counter-secret-police-cover-operation
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDPD1V/show-off-how-in-love-you-are
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GK9U353KM/the-great-dodgeball-plan
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GMKUX8XPP/stella
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GVWU0Q07M/penguin-park
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE19E9/operation-strix
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/G31UX08G5/secure-a-wife
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GVWU0QGW1/prepare-for-the-interview
[17:38:53 INF] Getting information for https://beta.crunchyroll.com/watch/GD9UVP4VZ/the-prestigious-schools-interview
[17:38:58 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDPZWN/will-they-pass-or-fail
[17:38:58 INF] Getting information for https://beta.crunchyroll.com/watch/GWDU85PQE/the-friendship-scheme
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/G0DUN557Z/the-targets-second-son
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDPE0Q/the-counter-secret-police-cover-operation
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/G14U4WM7K/show-off-how-in-love-you-are
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/G0DUN52E0/the-great-dodgeball-plan
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4ZP9Q/stella
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/G2XU0WVW8/penguin-park
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/GMKUX8EN3/operation-strix
[17:38:59 INF] Getting information for https://beta.crunchyroll.com/watch/GJWU25KZ1/secure-a-wife
[17:39:02 INF] Getting information for https://beta.crunchyroll.com/watch/G2XU08P4Z/prepare-for-the-interview
[17:39:02 INF] Getting information for https://beta.crunchyroll.com/watch/GQJUGP4GZ/the-prestigious-schools-interview
[17:39:02 INF] Getting information for https://beta.crunchyroll.com/watch/GK9U35Z8W/will-they-pass-or-fail
[17:39:02 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE118W/the-friendship-scheme
[17:39:02 INF] Getting information for https://beta.crunchyroll.com/watch/GVWU0QE1W/the-targets-second-son
[17:39:03 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDP4MZ/the-counter-secret-police-cover-operation
[17:39:03 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4XM9W/show-off-how-in-love-you-are
[17:39:03 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE10VQ/the-great-dodgeball-plan
[17:39:03 INF] Getting information for https://beta.crunchyroll.com/watch/G4VUQJK21/stella
[17:39:03 INF] Getting information for https://beta.crunchyroll.com/watch/GPWUK4X4E/penguin-park
[17:39:03 INF] Getting information for https://beta.crunchyroll.com/watch/GVWU0Q830/operation-strix
[17:39:05 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDP0QD/secure-a-wife
[17:39:05 INF] Getting information for https://beta.crunchyroll.com/watch/G8WUN4QGD/prepare-for-the-interview
[17:39:06 INF] Getting information for https://beta.crunchyroll.com/watch/G50UZ7JZZ/the-prestigious-schools-interview
[17:39:06 INF] Getting information for https://beta.crunchyroll.com/watch/G50UZ72E3/will-they-pass-or-fail
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G50UZ7E11/the-friendship-scheme
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4XXQG/the-targets-second-son
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/GMKUX820G/the-counter-secret-police-cover-operation
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/GK9U35XE8/show-off-how-in-love-you-are
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4X7NX/the-great-dodgeball-plan
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQG10Z/stella
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4XK3K/prepare-for-the-interview
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQP2ZE/operation-strix
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G4VUQEG0Z/secure-a-wife
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G31UXD2D3/penguin-park
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/GWDU859G4/the-prestigious-schools-interview
[17:39:07 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4XW12/will-they-pass-or-fail
[17:39:08 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDP9J4/the-friendship-scheme
[17:39:08 INF] Getting information for https://beta.crunchyroll.com/watch/GG1U239KN/the-targets-second-son
[17:39:08 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQPZK1/the-counter-secret-police-cover-operation
[17:39:09 INF] Getting information for https://beta.crunchyroll.com/watch/GEVUZ4XXP/show-off-how-in-love-you-are
[17:39:10 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE10W4/the-great-dodgeball-plan
[17:39:11 INF] Getting information for https://beta.crunchyroll.com/watch/GD9UVJ939/stella
[17:39:11 INF] Getting information for https://beta.crunchyroll.com/watch/G7PU4ZD9Z/penguin-park
[17:39:11 INF] Getting information for https://beta.crunchyroll.com/watch/G14U4W59J/operation-strix
[17:39:11 INF] Getting information for https://beta.crunchyroll.com/watch/GN7UDP8KE/secure-a-wife
[17:39:12 INF] Getting information for https://beta.crunchyroll.com/watch/G0DUN5QME/prepare-for-the-interview
[17:39:12 INF] Getting information for https://beta.crunchyroll.com/watch/GEVUZ4PK8/the-prestigious-schools-interview
[17:39:13 INF] Getting information for https://beta.crunchyroll.com/watch/GJWU25J0D/will-they-pass-or-fail
[17:39:13 INF] Getting information for https://beta.crunchyroll.com/watch/GMKUX873Q/the-friendship-scheme
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE1JW2/the-targets-second-son
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G14U4WGXP/the-counter-secret-police-cover-operation
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQPJJ9/show-off-how-in-love-you-are
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G50UZ9KVD/stella
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G14U4W788/the-great-dodgeball-plan
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQG405/penguin-park
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G4VUQED1K/operation-strix
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GJWU25P7G/secure-a-wife
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GEVUZ45W1/prepare-for-the-interview
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GG1U23M07/the-prestigious-schools-interview
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQPKWQ/will-they-pass-or-fail
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GK9U350ND/the-friendship-scheme
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GEVUZ4M5J/the-targets-second-son
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G4VUQE8M0/the-counter-secret-police-cover-operation
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUE155P/show-off-how-in-love-you-are
[17:39:16 INF] Getting information for https://beta.crunchyroll.com/watch/GX9UQPEN8/the-great-dodgeball-plan
[17:39:20 INF] Getting information for https://beta.crunchyroll.com/watch/GQJUG1N30/stella
[17:39:22 INF] Getting information for https://beta.crunchyroll.com/watch/G9DUEQ23J/penguin-park
[17:39:24 INF] 1 episodes gathered to download
[17:39:27 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 0.04 %
[17:39:30 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 1.39 %
[17:39:32 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 2.68 %
[17:39:34 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 4.22 %
[17:39:36 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 10.83 %
[17:39:52 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 12.23 %
[17:39:56 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 13.87 %
[17:39:58 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 15.06 %
[17:40:01 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 16.22 %
[17:40:03 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 17.34 %
[17:40:06 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 18.49 %
[17:40:09 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 19.75 %
[17:40:11 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 20.78 %
[17:40:14 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 21.81 %
[17:40:16 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 22.97 %
[17:40:19 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 24.56 %
[17:40:22 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 25.67 %
[17:40:25 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 27.09 %
[17:40:27 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 28.16 %
[17:40:30 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 29.34 %
[17:40:33 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 30.92 %
[17:40:36 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 32.03 %
[17:40:39 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 33.55 %
[17:40:41 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 34.68 %
[17:40:44 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 35.93 %
[17:40:46 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 37.09 %
[17:40:49 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 38.19 %
[17:40:51 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 39.30 %
[17:40:53 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 40.36 %
[17:40:57 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 41.83 %
[17:41:00 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 43.10 %
[17:41:02 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 44.69 %
[17:41:05 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 46.15 %
[17:41:09 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 47.21 %
[17:41:11 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 48.32 %
[17:41:14 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 49.42 %
[17:41:16 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 50.96 %
[17:41:20 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 52.18 %
[17:41:22 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 53.29 %
[17:41:24 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 54.62 %
[17:41:27 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 56.03 %
[17:41:30 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 57.26 %
[17:41:33 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 58.36 %
[17:41:35 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 59.36 %
[17:41:37 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 60.60 %
[17:41:40 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 62.05 %
[17:41:43 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 63.23 %
[17:41:46 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 64.34 %
[17:41:48 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 65.47 %
[17:41:51 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 66.82 %
[17:41:54 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 67.94 %
[17:41:56 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 69.14 %
[17:41:58 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 70.32 %
[17:42:01 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 71.52 %
[17:42:03 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 72.64 %
[17:42:06 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 73.74 %
[17:42:08 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 75.08 %
[17:42:11 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 76.14 %
[17:42:13 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 77.15 %
[17:42:17 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 78.62 %
[17:42:19 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 79.94 %
[17:42:22 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 81.17 %
[17:42:25 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 82.35 %
[17:42:27 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 83.54 %
[17:42:29 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 84.79 %
[17:42:32 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 85.88 %
[17:42:34 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 86.98 %
[17:42:37 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 88.11 %
[17:42:39 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 89.36 %
[17:42:41 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 96.94 %
[17:42:58 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 98.21 %
[17:43:01 INF] Encoding update S01E07 D:\Users\tgord\crunchyroll\SPY x FAMILY\Season 01\S01E07 - THE TARGET'S SECOND SON.mkv 99.78 %
PS D:\Users\tgord\crunchyroll>

Environment

Wasari 1.0.65.0
Windows 10

PS D:\Users\tgord\crunchyroll> $PSVersionTable. PSVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      19041  1682

Log file is not created at the indicated location

The log file indicated in the output is not created.

PS C:\Users\tgord\crunchyroll> D:\Users\tgord\Apps\Wasari.exe crunchy https://beta.crunchyroll.com/series/GRJ0J828Y/kaguya-sama-love-is-war -e 1
[21:50:16 INF] Logging to file at path C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
PS C:\Users\tgord\crunchyroll> ls  C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
ls : Cannot find path 'C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt' because it does not exist.
At line:1 char:1
+ ls  C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Users\tgord\...ri\logs\log.txt:String) [Get-ChildItem], Item
   NotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

Environment

Wasari 1.0.62.0
Windows 10

PS C:\Users\tgord\crunchyroll> $PSVersionTable. PSVersion

Major  Minor  Build  Revision
-----  -----  -----  --------
5      1      19041  1682

My account is a "Fan" level premium account.

Download file mask support

Can I download the series with the file name "attack on titan S04E01" instead of Attack on Titan (OmU) Folge 60 - Auf der anderen Seite des Meeres [799901]

Download failed with "Failed to download m3u8 information: The read operation timed out"

Description

Shortly after successfully downloading an episode with Wasari.Cli.exe https://beta.crunchyroll.com/series/G4PH0WXVJ -e 1, I tried to download more episodes, but encountered this error:

PS D:\Users\tgord\crunchyroll> Wasari.Cli.exe https://beta.crunchyroll.com/series/G4PH0WXVJ -e 9-12 -u email -p password
 __        __                   _
 \ \      / /_ _ ___  __ _ _ __(_)
  \ \ /\ / / _` / __|/ _` | '__| |
   \ V  V / (_| \__ \ (_| | |  | |
    \_/\_/ \__,_|___/\__,_|_|  |_|


Available environment features: "YtDlp", "Ffmpeg", "FfmpegLibPlacebo", "NvidiaGpu"
Latest version: 2022.09.01, Current version: 2022.09.01
yt-dlp is up to date (2022.09.01)
[09:04:38 INF] YT-DLP is up-to-date
[09:04:38 INF] Output directory is D:\Users\tgord\crunchyroll
[09:04:40 INF] Getting information for https://beta.crunchyroll.com/series/G4PH0WXVJ
[09:05:21 INF] YT-DLP output: WARNING: [crunchyroll:beta] Failed to download m3u8 information: The read operation timed out
[09:05:21 INF] YT-DLP output: ERROR: [crunchyroll:beta] GN7UDP4MZ: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
ERROR
CliWrap.Exceptions.CommandExecutionException: Underlying process reported a non-zero exit code (1).

Command:
  yt-dlp -J -u "email" -p "password" "https://beta.crunchyroll.com/series/G4PH0WXVJ"

Standard error:
  WARNING: [crunchyroll:beta] Failed to download m3u8 information: The read operation timed out
ERROR: [crunchyroll:beta] GN7UDP4MZ: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

You can suppress this validation by calling `WithValidation(CommandResultValidation.None)` on the command.
  at CliWrap.Buffered.BufferedCommandExtensions.<>c__DisplayClass0_0.<ExecuteBufferedAsync>b__0(CommandResult r) in D:\a\CliWrap\CliWrap\CliWrap\Buffered\BufferedCommandExtensions.cs:62
  at CliWrap.Utils.Extensions.AsyncExtensions.Select[TSource,TDestination](Task`1 task, Func`2 transform) in D:\a\CliWrap\CliWrap\CliWrap\Utils\Extensions\AsyncExtensions.cs:14
  at Wasari.YoutubeDlp.CommandExtensions.ExecuteAndGetStdOut(Command command)
  at Wasari.YoutubeDlp.YoutubeDlpService.ExecuteYtdlp[T](String[] urls, String[] additionalArguments)+MoveNext()
  at Wasari.YoutubeDlp.YoutubeDlpService.ExecuteYtdlp[T](String[] urls, String[] additionalArguments)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at System.Linq.OrderedAsyncEnumerable`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:47
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, Cancellat  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.AsyncEnumerable.GroupedAsyncEnumerable`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\GroupBy.cs:1094
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.AsyncEnumerable.SelectManyAsyncIterator`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\SelectMany.cs:505
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.AsyncEnumerable.WhereEnumerableAsyncIterator`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Where.cs:233
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at Wasari.App.DownloadService.DownloadEpisodes(IAsyncEnumerable`1 episodes, Int32 levelOfParallelism)
  at Wasari.Cli.Commands.DownloadCommand.ExecuteAsync(IConsole console)
  at Wasari.Cli.Commands.DownloadCommand.ExecuteAsync(IConsole console)
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:191

So far all subsequent attempts, including attempts to download single episodes, fail with a slightly different error message:

PS D:\Users\tgord\crunchyroll> Wasari.Cli.exe https://beta.crunchyroll.com/series/G4PH0WXVJ -e 9-12 -u email -p password
 __        __                   _
 \ \      / /_ _ ___  __ _ _ __(_)
  \ \ /\ / / _` / __|/ _` | '__| |
   \ V  V / (_| \__ \ (_| | |  | |
    \_/\_/ \__,_|___/\__,_|_|  |_|


Available environment features: "YtDlp", "Ffmpeg", "FfmpegLibPlacebo", "NvidiaGpu"
Latest version: 2022.09.01, Current version: 2022.09.01
yt-dlp is up to date (2022.09.01)
[09:06:24 INF] YT-DLP is up-to-date
[09:06:24 INF] Output directory is D:\Users\tgord\crunchyroll
[09:06:26 INF] Getting information for https://beta.crunchyroll.com/series/G4PH0WXVJ
[09:06:27 INF] YT-DLP output: ERROR: [crunchyroll:playlist:beta] G4PH0WXVJ: Login failed. Server message: A system error occurred. Please contact us for help.
ERROR
CliWrap.Exceptions.CommandExecutionException: Underlying process reported a non-zero exit code (1).

Command:
  yt-dlp -J -u "email" -p "password" "https://beta.crunchyroll.com/series/G4PH0WXVJ"

Standard error:
  ERROR: [crunchyroll:playlist:beta] G4PH0WXVJ: Login failed. Server message: A system error occurred. Please contact us for help.

You can suppress this validation by calling `WithValidation(CommandResultValidation.None)` on the command.
  at CliWrap.Buffered.BufferedCommandExtensions.<>c__DisplayClass0_0.<ExecuteBufferedAsync>b__0(CommandResult r) in D:\a\CliWrap\CliWrap\CliWrap\Buffered\BufferedCommandExtensions.cs:62
  at CliWrap.Utils.Extensions.AsyncExtensions.Select[TSource,TDestination](Task`1 task, Func`2 transform) in D:\a\CliWrap\CliWrap\CliWrap\Utils\Extensions\AsyncExtensions.cs:14
  at Wasari.YoutubeDlp.CommandExtensions.ExecuteAndGetStdOut(Command command)
  at Wasari.YoutubeDlp.YoutubeDlpService.ExecuteYtdlp[T](String[] urls, String[] additionalArguments)+MoveNext()
  at Wasari.YoutubeDlp.YoutubeDlpService.ExecuteYtdlp[T](String[] urls, String[] additionalArguments)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at System.Linq.OrderedAsyncEnumerable`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:47
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, Cancellat  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.AsyncEnumerable.GroupedAsyncEnumerable`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\GroupBy.cs:1094
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.AsyncEnumerable.SelectManyAsyncIterator`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\SelectMany.cs:505
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.AsyncEnumerable.WhereEnumerableAsyncIterator`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Where.cs:233
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:49
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:91
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at Wasari.App.DownloadService.DownloadEpisodes(IAsyncEnumerable`1 episodes, Int32 levelOfParallelism)
  at Wasari.Cli.Commands.DownloadCommand.ExecuteAsync(IConsole console)
  at Wasari.Cli.Commands.DownloadCommand.ExecuteAsync(IConsole console)
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:191

The result seemed to be the same with 1.0.63.0:

PS D:\Users\tgord\crunchyroll> Wasari.exe crunchy https://beta.crunchyroll.com/series/GRJ0J828Y -e 1 -u email -p password
[09:17:22 INF] Logging to file at path C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
[09:17:26 INF] Available environment features: ["YtDlp", "Ffmpeg", "FfmpegLibPlacebo", "NvidiaGpu"]
[09:17:26 INF] Current version is: 1.0.63.0
[09:17:26 INF] BETA Series detected
[09:17:26 INF] Start processing HTTP request POST https://beta-api.crunchyroll.com/auth/v1/token
[09:17:26 INF] Sending HTTP request POST https://beta-api.crunchyroll.com/auth/v1/token
[09:17:27 INF] Received HTTP response headers after 799.9435ms - 200
[09:17:27 INF] End processing HTTP request after 813.0505ms - 200
[09:17:27 INF] Created authenticated API service
[09:17:27 INF] NVIDIA hardware acceleration is available
ERROR
System.NotImplementedException: The method or operation is not implemented.
  at Wasari.Crunchyroll.API.Converters.ThumbnailsConverter.Read(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options)
  at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
  at System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1.ReadJsonAndSetMember(Object obj, ReadStack& state, Utf8JsonReader& reader)
  at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
  at System.Text.Json.Serialization.JsonConverter`1.TryRead(Utf8JsonReader& reader, Type typeToConvert, JsonSerializerOptions options, ReadStack& state, T& value)
  at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state)
  at System.Text.Json.JsonSerializer.ReadFromSpan[TValue](ReadOnlySpan`1 utf8Json, JsonTypeInfo jsonTypeInfo, Nullable`1 actualByteCount)
  at Wasari.Crunchyroll.API.CrunchyrollApiService.GetEpisodes(String seasonId)+MoveNext()
  at Wasari.Crunchyroll.API.CrunchyrollApiService.GetEpisodes(String seasonId)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:102
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:102
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArray[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:16
  at TomLonghurst.EnumerableAsyncProcessor.RunnableProcessors.ResultProcessors.Abstract.ResultAbstractAsyncProcessor`2.ProcessItem(Tuple`2 itemTaskCompletionSourceTuple)
  at Wasari.Crunchyroll.BetaCrunchyrollService.GetEpisodes(String url)+MoveNext()
  at Wasari.Crunchyroll.BetaCrunchyrollService.GetEpisodes(String url)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Linq.AsyncEnumerable.WhereEnumerableAsyncIterator`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Where.cs:233
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:102
  at System.Collections.Generic.AsyncEnumerableHelpers.ToArrayWithLength[T](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncEnumerableHelpers.cs:102
  at System.Linq.OrderedAsyncEnumerable`1.ToArrayAsync(CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:84
  at System.Linq.OrderedAsyncEnumerable`1.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\OrderedAsyncEnumerable.cs:47
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.Internal.Lookup`2.CreateAsync(IAsyncEnumerable`1 source, Func`2 keySelector, IEqualityComparer`1 comparer, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\Lookup.cs:105
  at System.Linq.AsyncEnumerable.GroupedAsyncEnumerable`2.MoveNextCore() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\GroupBy.cs:1094
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:70
  at System.Linq.AsyncIteratorBase`1.MoveNextAsync() in \_\Ix.NET\Source\System.Linq.Async\System\Linq\AsyncIterator.cs:75
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+MoveNext()
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+MoveNext()
  at Wasari.App.EpisodeExtensions.GetEpisodesGrouped(IAsyncEnumerable`1 episodes)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult()
  at System.Linq.AsyncEnumerable.<ToListAsync>g__Core|424_0[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\ToList.cs:36
  at System.Linq.AsyncEnumerable.<ToListAsync>g__Core|424_0[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in \_\Ix.NET\Source\System.Linq.Async\System\Linq\Operators\ToList.cs:36
  at Wasari.App.DownloadSeriesService.DownloadEpisodes(Uri url, DownloadParameters downloadParameters)
  at Wasari.Commands.CrunchyrollDownloadSeriesCommand.ExecuteAsync(IConsole console)
  at CliFx.CliApplication.RunAsync(ApplicationSchema applicationSchema, CommandInput commandInput) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:147
  at CliFx.CliApplication.RunAsync(IReadOnlyList`1 commandLineArguments, IReadOnlyDictionary`2 environmentVariables) in D:\a\CliFx\CliFx\CliFx\CliApplication.cs:191

Log (It seems to cut out before the error):

2022-09-17 09:17:22.873 -07:00 [INF] Logging to file at path C:\Users\tgord\AppData\Roaming\Wasari\logs\log.txt
2022-09-17 09:17:26.858 -07:00 [INF] Available environment features: ["YtDlp","Ffmpeg","FfmpegLibPlacebo","NvidiaGpu"]
2022-09-17 09:17:26.861 -07:00 [INF] Current version is: 1.0.63.0
2022-09-17 09:17:26.904 -07:00 [INF] BETA Series detected
2022-09-17 09:17:26.916 -07:00 [INF] Start processing HTTP request POST "https://beta-api.crunchyroll.com/auth/v1/token"
2022-09-17 09:17:26.919 -07:00 [INF] Sending HTTP request POST "https://beta-api.crunchyroll.com/auth/v1/token"
2022-09-17 09:17:27.723 -07:00 [INF] Received HTTP response headers after 799.9435ms - 200
2022-09-17 09:17:27.725 -07:00 [INF] End processing HTTP request after 813.0505ms - 200
2022-09-17 09:17:27.732 -07:00 [INF] Created authenticated API service
2022-09-17 09:17:27.847 -07:00 [INF] NVIDIA hardware acceleration is available

Environment

PS D:\Users\tgord\crunchyroll> Wasari.Cli.exe --version
 __        __                   _
 \ \      / /_ _ ___  __ _ _ __(_)
  \ \ /\ / / _` / __|/ _` | '__| |
   \ V  V / (_| \__ \ (_| | |  | |
    \_/\_/ \__,_|___/\__,_|_|  |_|


Available environment features: "YtDlp", "Ffmpeg", "FfmpegLibPlacebo", "NvidiaGpu"
v1.0.69

Also tested: 1.0.66 and 1.0.63.0

Windows 10

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

dockerfile
Wasari.Cli/Dockerfile
  • alpine 3.19
  • mcr.microsoft.com/dotnet/runtime 8.0
  • mcr.microsoft.com/dotnet/sdk 8.0
Wasari.Daemon/Dockerfile
  • mcr.microsoft.com/dotnet/sdk 8.0-alpine
Wasari.Tvdb.Api/Dockerfile
  • mcr.microsoft.com/dotnet/sdk 8.0-alpine
github-actions
.github/workflows/docker-wasari-cli.yml
  • docker/setup-qemu-action v3
  • docker/setup-buildx-action v3
  • docker/login-action v3
  • docker/build-push-action v5
.github/workflows/docker-wasari-daemon.yml
  • docker/setup-qemu-action v3
  • docker/setup-buildx-action v3
  • docker/login-action v3
  • docker/build-push-action v5
.github/workflows/docker-wasari-tvdb.yml
  • actions/checkout v4
  • docker/login-action v3
  • docker/build-push-action v5
.github/workflows/github-release.yml
  • actions/checkout v4
  • actions/setup-dotnet v4
.github/workflows/tests.yml
  • actions/checkout v4
  • actions/upload-artifact v4
  • mcr.microsoft.com/dotnet/sdk 8.0

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.