mirror of
https://github.com/wabbajack-tools/wabbajack.git
synced 2024-08-30 18:42:17 +00:00
IPS4 reworks
This commit is contained in:
parent
2a1517ca0a
commit
1f002b5f77
@ -1,5 +1,10 @@
|
|||||||
### Changelog
|
### Changelog
|
||||||
|
|
||||||
|
#### Version - 2.3.0.0 - ???
|
||||||
|
* Rewrote the file extraction routines. New code uses less memory, less disk space, and performs less thrashing on HDDs
|
||||||
|
* Reworked IPS4 integration to reduce download failures
|
||||||
|
|
||||||
|
|
||||||
#### Version - 2.2.2.0 - 8/31/2020
|
#### Version - 2.2.2.0 - 8/31/2020
|
||||||
* Route CDN requests through a reverse proxy to improve reliability
|
* Route CDN requests through a reverse proxy to improve reliability
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="Genbox.AlphaFS" Version="2.2.2.1" />
|
<PackageReference Include="Genbox.AlphaFS" Version="2.2.2.1" />
|
||||||
<PackageReference Include="K4os.Compression.LZ4.Streams" Version="1.2.4-alpha" />
|
<PackageReference Include="K4os.Compression.LZ4.Streams" Version="1.2.5" />
|
||||||
<PackageReference Include="SharpZipLib" Version="1.2.0" />
|
<PackageReference Include="SharpZipLib" Version="1.2.0" />
|
||||||
<PackageReference Include="System.Text.Encoding.CodePages" Version="5.0.0-preview.8.20407.11" />
|
<PackageReference Include="System.Text.Encoding.CodePages" Version="5.0.0-preview.8.20407.11" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
@ -131,6 +131,8 @@ namespace Wabbajack.Common
|
|||||||
public static AbsolutePath SettingsFile => LocalAppDataPath.Combine("settings.json");
|
public static AbsolutePath SettingsFile => LocalAppDataPath.Combine("settings.json");
|
||||||
public static RelativePath SettingsIni = (RelativePath)"settings.ini";
|
public static RelativePath SettingsIni = (RelativePath)"settings.ini";
|
||||||
public static byte SettingsVersion => 2;
|
public static byte SettingsVersion => 2;
|
||||||
|
public static bool IsServer = false;
|
||||||
|
|
||||||
public static string CompressedBodyHeader = "x-compressed-body";
|
public static string CompressedBodyHeader = "x-compressed-body";
|
||||||
|
|
||||||
public static AbsolutePath CefCacheLocation = @"CEF".RelativeTo(LocalAppDataPath);
|
public static AbsolutePath CefCacheLocation = @"CEF".RelativeTo(LocalAppDataPath);
|
||||||
|
@ -13,8 +13,9 @@ using System.Threading.Tasks;
|
|||||||
using Wabbajack.Common.Exceptions;
|
using Wabbajack.Common.Exceptions;
|
||||||
using Wabbajack.Common.Serialization.Json;
|
using Wabbajack.Common.Serialization.Json;
|
||||||
using Wabbajack.Lib.Downloaders;
|
using Wabbajack.Lib.Downloaders;
|
||||||
|
using Wabbajack.Lib.LibCefHelpers;
|
||||||
|
|
||||||
namespace Wabbajack.Lib
|
namespace Wabbajack.Lib
|
||||||
{
|
{
|
||||||
public static class BuildServerStatus
|
public static class BuildServerStatus
|
||||||
{
|
{
|
||||||
@ -254,5 +255,12 @@ namespace Wabbajack.Lib
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static async Task<Helpers.Cookie[]> GetAuthInfo<T>(string key)
|
||||||
|
{
|
||||||
|
var client = await GetClient();
|
||||||
|
return await client.GetJsonAsync<Helpers.Cookie[]>(
|
||||||
|
$"{Consts.WabbajackBuildServerUri}site-integration/auth-info/{key}");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -86,9 +86,11 @@ namespace Wabbajack.Lib.Downloaders
|
|||||||
return cookies;
|
return cookies;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<Wabbajack.Lib.Http.Client> GetAuthedClient()
|
public async Task<Http.Client> GetAuthedClient()
|
||||||
{
|
{
|
||||||
Helpers.Cookie[] cookies;
|
Helpers.Cookie[] cookies;
|
||||||
|
if (Consts.IsServer)
|
||||||
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
cookies = await Utils.FromEncryptedJson<Helpers.Cookie[]>(_encryptedKeyName);
|
cookies = await Utils.FromEncryptedJson<Helpers.Cookie[]>(_encryptedKeyName);
|
||||||
@ -101,6 +103,10 @@ namespace Wabbajack.Lib.Downloaders
|
|||||||
return Helpers.GetClient(cookies, SiteURL.ToString());
|
return Helpers.GetClient(cookies, SiteURL.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cookies = await ClientAPI.GetAuthInfo<Helpers.Cookie[]>(_encryptedKeyName);
|
||||||
|
return Helpers.GetClient(cookies, SiteURL.ToString());
|
||||||
|
}
|
||||||
|
|
||||||
public async Task Prepare()
|
public async Task Prepare()
|
||||||
{
|
{
|
||||||
if (_isPrepared) return;
|
if (_isPrepared) return;
|
||||||
|
@ -56,8 +56,13 @@ namespace Wabbajack.Lib.Downloaders
|
|||||||
if (state != null)
|
if (state != null)
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
return null;
|
|
||||||
|
|
||||||
|
var meta = string.Join("\n", new string[]
|
||||||
|
{
|
||||||
|
"[General]",
|
||||||
|
$"directURL={uri}"
|
||||||
|
});
|
||||||
|
return (AbstractDownloadState)(await ResolveArchive(meta.LoadIniString()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static T GetInstance<T>() where T : IDownloader
|
public static T GetInstance<T>() where T : IDownloader
|
||||||
|
@ -17,7 +17,9 @@
|
|||||||
<Version>3.1.0</Version>
|
<Version>3.1.0</Version>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Fody">
|
<PackageReference Include="Fody">
|
||||||
<Version>6.2.4</Version>
|
<Version>6.2.5</Version>
|
||||||
|
<PrivateAssets>all</PrivateAssets>
|
||||||
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
<PackageReference Include="Genbox.AlphaFS">
|
<PackageReference Include="Genbox.AlphaFS">
|
||||||
<Version>2.2.2.1</Version>
|
<Version>2.2.2.1</Version>
|
||||||
|
@ -4,6 +4,7 @@ using System.Net;
|
|||||||
using System.Security.Cryptography.X509Certificates;
|
using System.Security.Cryptography.X509Certificates;
|
||||||
using Microsoft.AspNetCore.Hosting;
|
using Microsoft.AspNetCore.Hosting;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
|
using Wabbajack.Common;
|
||||||
|
|
||||||
namespace Wabbajack.Server
|
namespace Wabbajack.Server
|
||||||
{
|
{
|
||||||
@ -11,6 +12,7 @@ namespace Wabbajack.Server
|
|||||||
{
|
{
|
||||||
public static void Main(string[] args)
|
public static void Main(string[] args)
|
||||||
{
|
{
|
||||||
|
Consts.IsServer = true;
|
||||||
bool testMode = args.Contains("TESTMODE");
|
bool testMode = args.Contains("TESTMODE");
|
||||||
CreateHostBuilder(args, testMode).Build().Run();
|
CreateHostBuilder(args, testMode).Build().Run();
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<PackageReference Include="Dapper" Version="2.0.35" />
|
<PackageReference Include="Dapper" Version="2.0.35" />
|
||||||
<PackageReference Include="FluentFTP" Version="32.4.4" />
|
<PackageReference Include="FluentFTP" Version="32.4.4" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.Core" Version="2.2.0" />
|
<PackageReference Include="Microsoft.AspNetCore.Authentication.Core" Version="2.2.0" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.7" />
|
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.8" />
|
||||||
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.2.0" />
|
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.2.0" />
|
||||||
<PackageReference Include="Nettle" Version="1.3.0" />
|
<PackageReference Include="Nettle" Version="1.3.0" />
|
||||||
<PackageReference Include="Swashbuckle.AspNetCore" Version="5.5.1" />
|
<PackageReference Include="Swashbuckle.AspNetCore" Version="5.5.1" />
|
||||||
|
@ -56,9 +56,9 @@
|
|||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<PackageReference Include="CefSharp.Wpf" Version="84.4.10" />
|
<PackageReference Include="CefSharp.Wpf" Version="84.4.10" />
|
||||||
<PackageReference Include="DynamicData" Version="6.16.8" />
|
<PackageReference Include="DynamicData" Version="6.16.9" />
|
||||||
<PackageReference Include="Extended.Wpf.Toolkit" Version="4.0.1" />
|
<PackageReference Include="Extended.Wpf.Toolkit" Version="4.0.1" />
|
||||||
<PackageReference Include="Fody" Version="6.2.4">
|
<PackageReference Include="Fody" Version="6.2.5">
|
||||||
<PrivateAssets>all</PrivateAssets>
|
<PrivateAssets>all</PrivateAssets>
|
||||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||||
</PackageReference>
|
</PackageReference>
|
||||||
|
Loading…
Reference in New Issue
Block a user