mirror of
https://github.com/quamotion/dotnet-packaging.git
synced 2026-02-15 05:35:56 +00:00
[PR #264] [CLOSED] Fix intermittent XZ errors #328
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/quamotion/dotnet-packaging/pull/264
Author: @oscarh
Created: 9/4/2025
Status: ❌ Closed
Base:
master← Head:bugfix/intermittent_xz_errors📝 Commits (1)
b000f5eFix intermittent XZ errors📊 Changes
14 files changed (+478 additions, -1692 deletions)
View changed files
➕
Packaging.Targets.Tests/DebTaskIntegrationTests.cs(+295 -0)📝
Packaging.Targets.Tests/IO/XZOutputStreamTests.cs(+0 -8)➖
Packaging.Targets/IO/LzmaAction.cs(+0 -136)➖
Packaging.Targets/IO/LzmaCheck.cs(+0 -34)➖
Packaging.Targets/IO/LzmaDecodeFlags.cs(+0 -47)➖
Packaging.Targets/IO/LzmaMT.cs(+0 -154)➖
Packaging.Targets/IO/LzmaResult.cs(+0 -230)➖
Packaging.Targets/IO/LzmaStream.cs(+0 -121)➖
Packaging.Targets/IO/LzmaStreamFlags.cs(+0 -98)➖
Packaging.Targets/IO/NativeMethods.cs(+0 -407)➕
Packaging.Targets/IO/XZHelper.cs(+24 -0)📝
Packaging.Targets/IO/XZInputStream.cs(+109 -216)📝
Packaging.Targets/IO/XZOutputStream.cs(+48 -240)📝
Packaging.Targets/Packaging.Targets.csproj(+2 -1)📄 Description
Replacing the custom NativeMethods P/Invoke code with Joveler.Compression.XZ. This seem to have gotten rid of my intermittent failures with large files. The Joveler.Compression.XZ doesn't expose lzma_stream_footer_decode (and the other functions used to read the uncompressed size). Instead this code is implemented in C#. It would of course be possible to add this to Joveler.Compression.XZ...
This approach also makes this library have less code to maintain.
Fixes #99
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.