diff --git a/src/lib-csharp/UpdateManager.cs b/src/lib-csharp/UpdateManager.cs index 4f57a07b..7e1e7f76 100644 --- a/src/lib-csharp/UpdateManager.cs +++ b/src/lib-csharp/UpdateManager.cs @@ -1,11 +1,12 @@ using System; +using System.Collections.Generic; using System.ComponentModel; +using System.Diagnostics; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; using NuGet.Versioning; -using Velopack.Compression; using Velopack.Exceptions; using Velopack.Locators; using Velopack.Logging; @@ -231,8 +232,6 @@ namespace Velopack EnsureInstalled(); using var _mut = await AcquireUpdateLock().ConfigureAwait(false); - var appTempDir = Locator.AppTempDir!; - var completeFile = Locator.GetLocalPackagePath(targetRelease); var incompleteFile = completeFile + ".partial"; @@ -262,33 +261,9 @@ namespace Velopack $"There are too many delta's ({deltasCount} > 10) or the sum of their size ({deltasSize} > {targetRelease.Size}) is too large. " + $"Only full update will be available."); } else { - using var _1 = TempUtil.GetTempDirectory(out var deltaStagingDir, appTempDir); - string basePackagePath = Locator.GetLocalPackagePath(updates.BaseRelease); - if (!File.Exists(basePackagePath)) - throw new Exception($"Unable to find base package {basePackagePath} for delta update."); - EasyZip.ExtractZipToDirectory(Log, basePackagePath, deltaStagingDir); - - reportProgress(10); - await DownloadAndApplyDeltaUpdates( - deltaStagingDir, - updates, - x => reportProgress(CoreUtil.CalculateProgress(x, 10, 80)), - cancelToken) - .ConfigureAwait(false); - reportProgress(80); - - Log.Info("Delta updates completed, creating final update package."); - File.Delete(incompleteFile); - await EasyZip.CreateZipFromDirectoryAsync( - Log, - incompleteFile, - deltaStagingDir, - x => reportProgress(CoreUtil.CalculateProgress(x, 80, 100)), - cancelToken: cancelToken).ConfigureAwait(false); - File.Delete(completeFile); - File.Move(incompleteFile, completeFile); - Log.Info("Delta release preparations complete. Package moved to: " + completeFile); - reportProgress(100); + await DownloadAndApplyDeltaUpdates(updates, incompleteFile, progress, cancelToken).ConfigureAwait(false); + IoUtil.MoveFile(incompleteFile, completeFile, true); + Log.Info("Delta update download complete. Package moved to: " + completeFile); return; // success! } } @@ -336,19 +311,17 @@ namespace Velopack /// Given a folder containing the extracted base package, and a list of delta updates, downloads and applies the /// delta updates to the base package. /// - /// A folder containing the application files to apply the delta's to. /// An update object containing one or more delta's + /// The reconstructed full update after all delta's are applied /// A callback reporting process of delta application progress (from 0-100). /// A token to use to cancel the request. - protected virtual async Task DownloadAndApplyDeltaUpdates(string extractedBasePackage, UpdateInfo updates, Action progress, + protected virtual async Task DownloadAndApplyDeltaUpdates(UpdateInfo updates, string targetFile, Action progress, CancellationToken cancelToken) { var releasesToDownload = updates.DeltasToTarget.OrderBy(d => d.Version).ToArray(); - - var appTempDir = Locator.AppTempDir!; var updateExe = Locator.UpdateExePath!; - // downloading accounts for 0%-50% of progress + // downloading accounts for 0%-70% of progress double current = 0; double toIncrement = 100.0 / releasesToDownload.Count(); await releasesToDownload.ForEachAsync( @@ -365,7 +338,7 @@ namespace Velopack current -= component; component = toIncrement / 100.0 * p; var progressOfStep = (int) Math.Round(current += component); - progress(CoreUtil.CalculateProgress(progressOfStep, 0, 50)); + progress(CoreUtil.CalculateProgress(progressOfStep, 0, 70)); } }, cancelToken).ConfigureAwait(false); @@ -374,23 +347,34 @@ namespace Velopack Log.Debug($"Download complete for delta version {x.Version}"); }).ConfigureAwait(false); - Log.Info("All delta packages downloaded and verified, applying them to the base now. The delta staging dir is: " + extractedBasePackage); + Log.Info("All delta packages downloaded and verified, applying them to the base now."); - // applying deltas accounts for 50%-100% of progress - double progressStepSize = 100d / releasesToDownload.Length; - var builder = new DeltaUpdateExe(Log, appTempDir, updateExe); - for (var i = 0; i < releasesToDownload.Length; i++) { - cancelToken.ThrowIfCancellationRequested(); - var rel = releasesToDownload[i]; - double baseProgress = i * progressStepSize; - var packageFile = Locator.GetLocalPackagePath(rel); - builder.ApplyDeltaPackageFast( - extractedBasePackage, - packageFile, - x => { - var progressOfStep = (int) (baseProgress + (progressStepSize * (x / 100d))); - progress(CoreUtil.CalculateProgress(progressOfStep, 50, 100)); - }); + // applying deltas accounts for 70%-100% of progress + var baseFile = Locator.GetLocalPackagePath(updates.BaseRelease!); + var args = new List { + "patch", + "--old", + baseFile, + "--output", + targetFile, + }; + + foreach (var x in releasesToDownload) { + args.Add("--delta"); + args.Add(Locator.GetLocalPackagePath(x)); + } + + var psi = new ProcessStartInfo(updateExe); + psi.AppendArgumentListSafe(args, out var _); + psi.CreateNoWindow = true; + var p = psi.StartRedirectOutputToILogger(Log, VelopackLogLevel.Debug); + if (!p.WaitForExit((int)TimeSpan.FromMinutes(5).TotalMilliseconds)) { + p.Kill(); + throw new TimeoutException("patch process timed out (5min)."); + } + + if (p.ExitCode != 0) { + throw new Exception($"patch process failed with exit code {p.ExitCode}."); } progress(100); diff --git a/src/lib-csharp/Util/EasyZip.cs b/src/lib-csharp/Util/EasyZip.cs index 26ffc5f7..c95c54ff 100644 --- a/src/lib-csharp/Util/EasyZip.cs +++ b/src/lib-csharp/Util/EasyZip.cs @@ -9,7 +9,7 @@ using System.Threading.Tasks; using Velopack.Logging; using Velopack.Util; -namespace Velopack.Compression +namespace Velopack.Util { internal static class EasyZip { diff --git a/src/vpk/Velopack.Build/TaskOptionsMapper.cs b/src/vpk/Velopack.Build/TaskOptionsMapper.cs index e3164e5a..07e12971 100644 --- a/src/vpk/Velopack.Build/TaskOptionsMapper.cs +++ b/src/vpk/Velopack.Build/TaskOptionsMapper.cs @@ -2,6 +2,7 @@ using System.IO; using Riok.Mapperly.Abstractions; using Velopack.Packaging; +using Velopack.Packaging.Compression; using Velopack.Packaging.Unix.Commands; using Velopack.Packaging.Windows.Commands; diff --git a/src/vpk/Velopack.Flow/VelopackFlowServiceClient.cs b/src/vpk/Velopack.Flow/VelopackFlowServiceClient.cs index 483d7a41..a8338602 100644 --- a/src/vpk/Velopack.Flow/VelopackFlowServiceClient.cs +++ b/src/vpk/Velopack.Flow/VelopackFlowServiceClient.cs @@ -13,6 +13,7 @@ using Velopack.NuGet; using Velopack.Packaging; using Velopack.Util; using System.Net; +using Velopack.Packaging.Compression; #if !NET6_0_OR_GREATER using System.Net.Http; diff --git a/src/vpk/Velopack.Packaging.Unix/AppImageTool.cs b/src/vpk/Velopack.Packaging.Unix/AppImageTool.cs index f0efdf24..e4a97f69 100644 --- a/src/vpk/Velopack.Packaging.Unix/AppImageTool.cs +++ b/src/vpk/Velopack.Packaging.Unix/AppImageTool.cs @@ -1,6 +1,5 @@ using ICSharpCode.SharpZipLib.Tar; using Microsoft.Extensions.Logging; -using Velopack.Compression; using Velopack.Core; using Velopack.Util; diff --git a/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackCommandRunner.cs b/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackCommandRunner.cs index d0cb3bba..934ded32 100644 --- a/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackCommandRunner.cs +++ b/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackCommandRunner.cs @@ -2,6 +2,7 @@ using Microsoft.Extensions.Logging; using Velopack.Core; using Velopack.Core.Abstractions; +using Velopack.Packaging.Compression; using Velopack.Util; namespace Velopack.Packaging.Unix.Commands; diff --git a/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackOptions.cs b/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackOptions.cs index 19c0fa45..ec0779c4 100644 --- a/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackOptions.cs +++ b/src/vpk/Velopack.Packaging.Unix/Commands/LinuxPackOptions.cs @@ -1,4 +1,5 @@ using Velopack.Packaging.Abstractions; +using Velopack.Packaging.Compression; namespace Velopack.Packaging.Unix.Commands; diff --git a/src/vpk/Velopack.Packaging.Unix/Commands/OsxPackOptions.cs b/src/vpk/Velopack.Packaging.Unix/Commands/OsxPackOptions.cs index 9e9c41db..51010184 100644 --- a/src/vpk/Velopack.Packaging.Unix/Commands/OsxPackOptions.cs +++ b/src/vpk/Velopack.Packaging.Unix/Commands/OsxPackOptions.cs @@ -1,4 +1,5 @@ using Velopack.Packaging.Abstractions; +using Velopack.Packaging.Compression; namespace Velopack.Packaging.Unix.Commands; diff --git a/src/vpk/Velopack.Packaging.Windows/Commands/WindowsPackCommandRunner.cs b/src/vpk/Velopack.Packaging.Windows/Commands/WindowsPackCommandRunner.cs index 1893370c..997e441e 100644 --- a/src/vpk/Velopack.Packaging.Windows/Commands/WindowsPackCommandRunner.cs +++ b/src/vpk/Velopack.Packaging.Windows/Commands/WindowsPackCommandRunner.cs @@ -5,7 +5,6 @@ using System.Text.RegularExpressions; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using NuGet.Versioning; -using Velopack.Compression; using Velopack.Core; using Velopack.Core.Abstractions; using Velopack.NuGet; diff --git a/src/vpk/Velopack.Packaging.Windows/Commands/WindowsReleasifyOptions.cs b/src/vpk/Velopack.Packaging.Windows/Commands/WindowsReleasifyOptions.cs index 747953a1..97f537b8 100644 --- a/src/vpk/Velopack.Packaging.Windows/Commands/WindowsReleasifyOptions.cs +++ b/src/vpk/Velopack.Packaging.Windows/Commands/WindowsReleasifyOptions.cs @@ -1,4 +1,6 @@ -namespace Velopack.Packaging.Windows.Commands; +using Velopack.Packaging.Compression; + +namespace Velopack.Packaging.Windows.Commands; public class WindowsReleasifyOptions : WindowsSigningOptions { diff --git a/src/vpk/Velopack.Packaging/Abstractions/IPackOptions.cs b/src/vpk/Velopack.Packaging/Abstractions/IPackOptions.cs index 9b2fb687..9656b261 100644 --- a/src/vpk/Velopack.Packaging/Abstractions/IPackOptions.cs +++ b/src/vpk/Velopack.Packaging/Abstractions/IPackOptions.cs @@ -1,4 +1,6 @@ -namespace Velopack.Packaging.Abstractions; +using Velopack.Packaging.Compression; + +namespace Velopack.Packaging.Abstractions; public interface IPackOptions : INugetPackCommand, IPlatformOptions { diff --git a/src/vpk/Velopack.Packaging/Commands/DeltaGenCommandRunner.cs b/src/vpk/Velopack.Packaging/Commands/DeltaGenCommandRunner.cs index cf7b93b6..1f45eff4 100644 --- a/src/vpk/Velopack.Packaging/Commands/DeltaGenCommandRunner.cs +++ b/src/vpk/Velopack.Packaging/Commands/DeltaGenCommandRunner.cs @@ -1,5 +1,6 @@ using Microsoft.Extensions.Logging; using Velopack.Core.Abstractions; +using Velopack.Packaging.Compression; namespace Velopack.Packaging.Commands; diff --git a/src/vpk/Velopack.Packaging/Commands/DeltaGenOptions.cs b/src/vpk/Velopack.Packaging/Commands/DeltaGenOptions.cs index 92f00a2d..869aebf1 100644 --- a/src/vpk/Velopack.Packaging/Commands/DeltaGenOptions.cs +++ b/src/vpk/Velopack.Packaging/Commands/DeltaGenOptions.cs @@ -1,4 +1,5 @@ using Velopack.Core; +using Velopack.Packaging.Compression; namespace Velopack.Packaging.Commands; diff --git a/src/vpk/Velopack.Packaging/Commands/DeltaPatchCommandRunner.cs b/src/vpk/Velopack.Packaging/Commands/DeltaPatchCommandRunner.cs index 11bc3fad..02c1b835 100644 --- a/src/vpk/Velopack.Packaging/Commands/DeltaPatchCommandRunner.cs +++ b/src/vpk/Velopack.Packaging/Commands/DeltaPatchCommandRunner.cs @@ -1,7 +1,7 @@ using Microsoft.Extensions.Logging; -using Velopack.Compression; using Velopack.Core; using Velopack.Core.Abstractions; +using Velopack.Packaging.Compression; using Velopack.Util; namespace Velopack.Packaging.Commands; diff --git a/src/vpk/Velopack.Packaging/Compression/BZip2Stream.cs b/src/vpk/Velopack.Packaging/Compression/BZip2Stream.cs index e00bdebc..b0489be7 100644 --- a/src/vpk/Velopack.Packaging/Compression/BZip2Stream.cs +++ b/src/vpk/Velopack.Packaging/Compression/BZip2Stream.cs @@ -1,10 +1,8 @@ #nullable disable -using System; using System.Diagnostics.CodeAnalysis; -using System.IO; using System.IO.Compression; -namespace Velopack.Compression +namespace Velopack.Packaging.Compression { [ExcludeFromCodeCoverage] internal sealed class BZip2Stream : Stream diff --git a/src/vpk/Velopack.Packaging/Compression/BinaryPatchUtility.cs b/src/vpk/Velopack.Packaging/Compression/BinaryPatchUtility.cs index 0df5d978..84999bef 100644 --- a/src/vpk/Velopack.Packaging/Compression/BinaryPatchUtility.cs +++ b/src/vpk/Velopack.Packaging/Compression/BinaryPatchUtility.cs @@ -1,13 +1,10 @@ #nullable disable -using System; using System.Diagnostics.CodeAnalysis; -using System.IO; using System.IO.Compression; -using System.Threading; // Adapted from https://github.com/LogosBible/bsdiff.net/blob/master/src/bsdiff/BinaryPatchUtility.cs -namespace Velopack.Compression +namespace Velopack.Packaging.Compression { /* The original bsdiff.c source code (http://www.daemonology.net/bsdiff/) is diff --git a/src/vpk/Velopack.Packaging/Compression/DeltaEmbedded.cs b/src/vpk/Velopack.Packaging/Compression/DeltaEmbedded.cs index 86d871b0..83821e4b 100644 --- a/src/vpk/Velopack.Packaging/Compression/DeltaEmbedded.cs +++ b/src/vpk/Velopack.Packaging/Compression/DeltaEmbedded.cs @@ -1,8 +1,7 @@ using Microsoft.Extensions.Logging; -using Velopack.Compression; using Velopack.Core; -namespace Velopack.Packaging; +namespace Velopack.Packaging.Compression; public class DeltaEmbedded { diff --git a/src/vpk/Velopack.Packaging/Compression/DeltaMode.cs b/src/vpk/Velopack.Packaging/Compression/DeltaMode.cs index 78d4877b..7d0e0bb9 100644 --- a/src/vpk/Velopack.Packaging/Compression/DeltaMode.cs +++ b/src/vpk/Velopack.Packaging/Compression/DeltaMode.cs @@ -1,4 +1,4 @@ -namespace Velopack.Packaging; +namespace Velopack.Packaging.Compression; public enum DeltaMode { diff --git a/src/vpk/Velopack.Packaging/Compression/DeltaPackage.cs b/src/vpk/Velopack.Packaging/Compression/DeltaPackage.cs index 8083127c..733e0b5a 100644 --- a/src/vpk/Velopack.Packaging/Compression/DeltaPackage.cs +++ b/src/vpk/Velopack.Packaging/Compression/DeltaPackage.cs @@ -1,14 +1,11 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; +#nullable enable using System.Text; using System.Text.RegularExpressions; using Velopack.Exceptions; using Velopack.Logging; using Velopack.Util; -namespace Velopack.Compression +namespace Velopack.Packaging.Compression { internal abstract class DeltaPackage { diff --git a/src/vpk/Velopack.Packaging/Compression/DeltaPackageBuilder.cs b/src/vpk/Velopack.Packaging/Compression/DeltaPackageBuilder.cs index 8a8fb877..28ab8f80 100644 --- a/src/vpk/Velopack.Packaging/Compression/DeltaPackageBuilder.cs +++ b/src/vpk/Velopack.Packaging/Compression/DeltaPackageBuilder.cs @@ -1,12 +1,11 @@ using System.IO.MemoryMappedFiles; using System.Text; using Microsoft.Extensions.Logging; -using Velopack.Compression; using Velopack.Core; using Velopack.Packaging.Exceptions; using Velopack.Util; -namespace Velopack.Packaging; +namespace Velopack.Packaging.Compression; public class DeltaPackageBuilder { diff --git a/src/vpk/Velopack.Packaging/Compression/DeltaUpdateExe.cs b/src/vpk/Velopack.Packaging/Compression/DeltaUpdateExe.cs index 1d198367..d8597afd 100644 --- a/src/vpk/Velopack.Packaging/Compression/DeltaUpdateExe.cs +++ b/src/vpk/Velopack.Packaging/Compression/DeltaUpdateExe.cs @@ -1,9 +1,8 @@ -using System; -using System.Diagnostics; +using System.Diagnostics; using Velopack.Logging; using Velopack.Util; -namespace Velopack.Compression +namespace Velopack.Packaging.Compression { internal class DeltaUpdateExe : DeltaPackage { diff --git a/src/vpk/Velopack.Packaging/Compression/MsDeltaCompression.cs b/src/vpk/Velopack.Packaging/Compression/MsDeltaCompression.cs index 29a3fdc0..4aee72ae 100644 --- a/src/vpk/Velopack.Packaging/Compression/MsDeltaCompression.cs +++ b/src/vpk/Velopack.Packaging/Compression/MsDeltaCompression.cs @@ -1,10 +1,10 @@ -using System; +#nullable enable using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Runtime.InteropServices; using System.Runtime.Versioning; -namespace Velopack.Compression +namespace Velopack.Packaging.Compression { [ExcludeFromCodeCoverage] [SupportedOSPlatform("windows")] diff --git a/src/vpk/Velopack.Packaging/PackageBuilder.cs b/src/vpk/Velopack.Packaging/PackageBuilder.cs index c5120f64..42607ef2 100644 --- a/src/vpk/Velopack.Packaging/PackageBuilder.cs +++ b/src/vpk/Velopack.Packaging/PackageBuilder.cs @@ -3,11 +3,11 @@ using System.Text.RegularExpressions; using Markdig; using Microsoft.Extensions.Logging; using NuGet.Versioning; -using Velopack.Compression; using Velopack.Core; using Velopack.Core.Abstractions; using Velopack.NuGet; using Velopack.Packaging.Abstractions; +using Velopack.Packaging.Compression; using Velopack.Util; namespace Velopack.Packaging; diff --git a/src/vpk/Velopack.Packaging/Zstd.cs b/src/vpk/Velopack.Packaging/Zstd.cs index aadc82fe..7222193e 100644 --- a/src/vpk/Velopack.Packaging/Zstd.cs +++ b/src/vpk/Velopack.Packaging/Zstd.cs @@ -1,4 +1,5 @@ using Velopack.Core; +using Velopack.Packaging.Compression; using Velopack.Packaging.Exceptions; namespace Velopack.Packaging; diff --git a/src/vpk/Velopack.Vpk/Commands/Packaging/DeltaGenCommand.cs b/src/vpk/Velopack.Vpk/Commands/Packaging/DeltaGenCommand.cs index 50e590df..4d3a71ff 100644 --- a/src/vpk/Velopack.Vpk/Commands/Packaging/DeltaGenCommand.cs +++ b/src/vpk/Velopack.Vpk/Commands/Packaging/DeltaGenCommand.cs @@ -1,5 +1,6 @@ using Velopack.Core; using Velopack.Packaging; +using Velopack.Packaging.Compression; namespace Velopack.Vpk.Commands.Packaging; diff --git a/src/vpk/Velopack.Vpk/Commands/Packaging/PackCommand.cs b/src/vpk/Velopack.Vpk/Commands/Packaging/PackCommand.cs index 93f17dd5..a942abab 100644 --- a/src/vpk/Velopack.Vpk/Commands/Packaging/PackCommand.cs +++ b/src/vpk/Velopack.Vpk/Commands/Packaging/PackCommand.cs @@ -1,5 +1,6 @@  using Velopack.Packaging; +using Velopack.Packaging.Compression; namespace Velopack.Vpk.Commands.Packaging; diff --git a/test/Velopack.CommandLine.Tests/Commands/WindowsCommandTests.cs b/test/Velopack.CommandLine.Tests/Commands/WindowsCommandTests.cs index 7792a126..c9bdbb70 100644 --- a/test/Velopack.CommandLine.Tests/Commands/WindowsCommandTests.cs +++ b/test/Velopack.CommandLine.Tests/Commands/WindowsCommandTests.cs @@ -41,7 +41,7 @@ public abstract class ReleaseCommandTests : BaseCommandTests string cli = GetRequiredDefaultOptions() + "--delta none"; ParseResult parseResult = command.ParseAndApply(cli); - Assert.True(command.DeltaMode == Packaging.DeltaMode.None); + Assert.True(command.DeltaMode == Packaging.Compression.DeltaMode.None); } [Fact] diff --git a/test/Velopack.Packaging.Tests/OsxPackTests.cs b/test/Velopack.Packaging.Tests/OsxPackTests.cs index e84818d8..e69b8fbf 100644 --- a/test/Velopack.Packaging.Tests/OsxPackTests.cs +++ b/test/Velopack.Packaging.Tests/OsxPackTests.cs @@ -1,5 +1,4 @@ using System.Runtime.Versioning; -using Velopack.Compression; using Velopack.Core; using Velopack.Util; diff --git a/test/Velopack.Packaging.Tests/WindowsPackTests.cs b/test/Velopack.Packaging.Tests/WindowsPackTests.cs index b7cb2818..af1e39f3 100644 --- a/test/Velopack.Packaging.Tests/WindowsPackTests.cs +++ b/test/Velopack.Packaging.Tests/WindowsPackTests.cs @@ -5,9 +5,9 @@ using System.Xml.Linq; using Microsoft.Deployment.WindowsInstaller; using Microsoft.Win32; using NuGet.Packaging; -using Velopack.Compression; using Velopack.Core; using Velopack.Packaging.Commands; +using Velopack.Packaging.Compression; using Velopack.Packaging.Windows.Commands; using Velopack.Util; using Velopack.Vpk; diff --git a/test/Velopack.Tests/SymbolicLinkTests.cs b/test/Velopack.Tests/SymbolicLinkTests.cs index cc2fc866..75288892 100644 --- a/test/Velopack.Tests/SymbolicLinkTests.cs +++ b/test/Velopack.Tests/SymbolicLinkTests.cs @@ -1,7 +1,6 @@ using System.ComponentModel; using System.IO.Compression; using NCode.ReparsePoints; -using Velopack.Compression; using Velopack.Logging; using Velopack.Util; diff --git a/test/Velopack.Tests/UpdateManagerTests.cs b/test/Velopack.Tests/UpdateManagerTests.cs index 75ca34ef..8816c322 100644 --- a/test/Velopack.Tests/UpdateManagerTests.cs +++ b/test/Velopack.Tests/UpdateManagerTests.cs @@ -1,6 +1,5 @@ using System.Text; using NuGet.Versioning; -using Velopack.Compression; using Velopack.Core; using Velopack.Exceptions; using Velopack.Locators; diff --git a/test/Velopack.Tests/ZipPackageTests.cs b/test/Velopack.Tests/ZipPackageTests.cs index a16bc3da..9950b386 100644 --- a/test/Velopack.Tests/ZipPackageTests.cs +++ b/test/Velopack.Tests/ZipPackageTests.cs @@ -39,8 +39,8 @@ public class ZipPackageTests SymbolicLink.Create(symlink, actual); SymbolicLink.Create(symfile, actualFile); - Compression.EasyZip.CreateZipFromDirectoryAsync(logger.ToVelopackLogger(), zipFile, tempDir).GetAwaiterResult(); - Compression.EasyZip.ExtractZipToDirectory(logger.ToVelopackLogger(), zipFile, extractedDir, expandSymlinks: true); + EasyZip.CreateZipFromDirectoryAsync(logger.ToVelopackLogger(), zipFile, tempDir).GetAwaiterResult(); + EasyZip.ExtractZipToDirectory(logger.ToVelopackLogger(), zipFile, extractedDir, expandSymlinks: true); Assert.True(File.Exists(Path.Combine(extractedDir, "actual", "file.txt"))); Assert.Equal("hello", File.ReadAllText(Path.Combine(extractedDir, "actual", "file.txt")));