Adam Hathcock
6cf2e054bf
fmt
2025-12-19 14:33:24 +00:00
Adam Hathcock
95749234f5
Use proper polyfill for net48
2025-12-19 14:33:06 +00:00
Adam Hathcock
b976961434
Merge fixes
2025-12-19 14:22:09 +00:00
Adam Hathcock
e1aa727513
Merge remote-tracking branch 'origin/master' into adam/extract-all-test
...
# Conflicts:
# src/SharpCompress/Archives/IArchiveExtensions.cs
2025-12-19 14:16:29 +00:00
Adam Hathcock
1f71ce1be2
Merge pull request #1080 from adamhathcock/copilot/refactor-write-to-directory-consistency
...
Standardize extraction API to WriteToDirectory with IProgress support
2025-12-19 14:15:43 +00:00
Adam Hathcock
cf13de6ac1
Merge pull request #1081 from adamhathcock/copilot/sub-pr-1076-again
...
Fix async LZMA extraction bug for 7Zip archives
2025-12-19 14:14:16 +00:00
Adam Hathcock
c2e01798f8
refactor archive extensions
2025-12-19 14:09:01 +00:00
copilot-swe-agent[bot]
8fc8295a89
Add TODO and explanation for SyncOnlyStream workaround
...
The SyncOnlyStream wrapper is necessary because the LZMA decoder has bugs in its async implementation that cause state corruption (IndexOutOfRangeException, DataErrorException) even with fresh, non-shared streams.
Without this wrapper, async operations on LZMA streams fail. The proper fix would be to repair the async bugs in LzmaStream.ReadAsync, Decoder.CodeAsync, and OutWindow async operations, but that requires deep changes to the decoder state machine.
Added detailed comments explaining this is a workaround and where the real fix should go.
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 13:47:49 +00:00
copilot-swe-agent[bot]
d392991764
Remove CancellationToken from synchronous WriteToDirectory overload
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 13:40:22 +00:00
copilot-swe-agent[bot]
e57e87090f
Implement option 2: Avoid async LZMA state corruption for 7Zip extraction
...
- Each 7Zip file now gets a fresh decompression stream instead of reusing shared streams
- Added SyncOnlyStream wrapper to force async operations to use synchronous equivalents
- This avoids LZMA decoder state corruption bugs in async operations
- Performance trade-off: slower async extraction for 7Zip but correctness guaranteed
- Documented behavior and performance implications in FORMATS.md
All 14 ExtractAll tests now pass (both async and sync)
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 13:33:04 +00:00
copilot-swe-agent[bot]
c701bbbee3
Run CSharpier formatting and document check-format process
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 13:31:35 +00:00
copilot-swe-agent[bot]
2f0eb0bd4b
Replace Action<double> with IProgress<ProgressReport> for progress reporting
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 13:25:36 +00:00
copilot-swe-agent[bot]
17bde8da8a
Merge branch 'master' of https://github.com/adamhathcock/sharpcompress into copilot/refactor-write-to-directory-consistency
2025-12-19 13:10:33 +00:00
Adam Hathcock
99d355e6ca
Merge remote-tracking branch 'origin/master' into copilot/sub-pr-1076-again
2025-12-19 13:05:33 +00:00
Adam Hathcock
c790fd21a4
reading a single byte shouldn't be async
2025-12-19 13:05:04 +00:00
Adam Hathcock
bee51af48b
Merge pull request #1044 from adamhathcock/copilot/add-progress-reporting
...
Unified progress reporting for compression and extraction operations
2025-12-19 12:54:55 +00:00
Adam Hathcock
ca743eae22
fix for running net 10 tests
2025-12-19 12:17:08 +00:00
copilot-swe-agent[bot]
93504cf82f
Add sync test and attempt to fix async LZMA extraction bug
...
- Restored original async ExtractAllEntries test with using statement
- Added new ExtractAllEntriesSync test (all tests pass)
- Fixed potential partial read bug in LzmaStream.DecodeChunkHeaderAsync
- Added ReadFullyAsync helper to ensure complete reads
- ReadAsync is not guaranteed to return all requested bytes
- Async tests for 7Zip still failing with Data Error
- Issue appears related to LZMA2 stream state management
- _needDictReset flag not being cleared correctly in async flow
- Further investigation needed
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 12:15:54 +00:00
Adam Hathcock
6d3e4e842b
Merge remote-tracking branch 'origin/master' into copilot/add-progress-reporting
2025-12-19 12:13:34 +00:00
copilot-swe-agent[bot]
54b64a8c3b
Fix misleading variable name: emptyDirectory -> parentDirectory
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 12:06:36 +00:00
copilot-swe-agent[bot]
0e59bf39f4
Add test for IArchive.WriteToDirectoryAsync
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 12:04:47 +00:00
copilot-swe-agent[bot]
8b95e0a76d
Standardize on WriteToDirectory naming and add async support
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 11:57:01 +00:00
copilot-swe-agent[bot]
48a2ad7b57
Fix ExtractAll test to use synchronous extraction methods for 7Zip archives
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 11:55:00 +00:00
copilot-swe-agent[bot]
b23827a8db
Initial plan
2025-12-19 11:48:49 +00:00
copilot-swe-agent[bot]
3f9986c13c
Initial plan
2025-12-19 11:47:53 +00:00
Adam Hathcock
c7010b75c1
fix the test targets
2025-12-19 11:41:08 +00:00
Adam Hathcock
00cfeee56e
Fix logic to match ExtractAllEntries
2025-12-19 11:37:04 +00:00
copilot-swe-agent[bot]
aaa97e2ce2
Merge master branch - add ZStandard compression support and TarHeaderWriteFormat
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-19 11:36:44 +00:00
Adam Hathcock
34309f17f4
fmt
2025-12-18 15:33:26 +00:00
Adam Hathcock
220ba67faa
add extract all test
2025-12-18 15:26:35 +00:00
Adam Hathcock
230f96e8e8
Merge pull request #1052 from adamhathcock/copilot/move-zstdsharp-into-sharpcompress
...
Move ZstdSharp into SharpCompress - Complete Integration
2025-12-18 14:48:03 +00:00
Adam Hathcock
930c8899d2
Merge remote-tracking branch 'origin/master' into copilot/move-zstdsharp-into-sharpcompress
...
# Conflicts:
# src/SharpCompress/packages.lock.json
# tests/SharpCompress.Test/packages.lock.json
2025-12-18 12:43:19 +00:00
copilot-swe-agent[bot]
7c0cef7dd8
Clean up unused using statements in ZstandardConstants.cs
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-18 12:32:48 +00:00
copilot-swe-agent[bot]
951ebb3fa2
Complete ZstdSharp integration: Add all Unsafe implementation files and remove ZstdSharp.Port dependency
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-18 12:30:38 +00:00
copilot-swe-agent[bot]
2a4d098b41
Initial plan
2025-12-18 12:30:38 +00:00
dependabot[bot]
5839b87f98
Bump csharpier from 1.2.1 to 1.2.3
...
---
updated-dependencies:
- dependency-name: csharpier
dependency-version: 1.2.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-12-18 12:30:38 +00:00
dependabot[bot]
425a2bd680
Bump actions/upload-artifact from 5 to 6
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 5 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-12-18 12:30:38 +00:00
drone1400
939c2497c8
Reformatted modified files with csharpier
2025-12-18 12:30:38 +00:00
drone1400
8995ba56b8
Add alternative option for writing TAR archives with USTAR header format
...
- TarWriterOptions now has a property that allows the user to select writing the TAR using the USTAR header format
- if unspecified, will default to the original modern GNU TAR header format
- default behavior is unchanged
2025-12-18 12:30:38 +00:00
HeroponRikIBestest
e941ab60ca
Csharpier
2025-12-18 12:30:38 +00:00
HeroponRikIBestest
48860f1349
Improve logic
2025-12-18 12:30:38 +00:00
HeroponRikIBestest
94b2c5c593
Add tests
2025-12-18 12:30:38 +00:00
HeroponRikIBestest
f1d8ae5a22
Add archive-level IsEncrypted flag
2025-12-18 12:30:38 +00:00
copilot-swe-agent[bot]
e44d2093e5
Consolidate agent instructions into AGENTS.md
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-18 12:30:38 +00:00
copilot-swe-agent[bot]
9fa1201a4c
Initial plan
2025-12-18 12:30:38 +00:00
Adam Hathcock
7800808648
first pass of instructions...consolidate?
2025-12-18 12:30:38 +00:00
copilot-swe-agent[bot]
2789e86d21
Update launch.json to use net10.0 instead of net8.0
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-18 12:30:38 +00:00
copilot-swe-agent[bot]
afd1e39b88
Initial plan
2025-12-18 12:30:38 +00:00
Adam Hathcock
aec4c738ef
add vscode config
2025-12-18 12:30:38 +00:00
copilot-swe-agent[bot]
63ecc8c842
Apply code review feedback: improve documentation structure and add explicit DirectoryEntry case
...
Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com >
2025-12-18 12:30:38 +00:00