Commit Graph

2681 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
0e4cfef248 Fix sync methods called in async RAR unpacker paths (Unpack29Async, Unpack5Async)
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/7f2fcb59-4a41-4b27-ab32-17afec510b5e

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-28 06:45:49 +00:00
copilot-swe-agent[bot]
b8a075c368 Initial plan 2026-04-28 06:33:33 +00:00
Adam Hathcock
d961301907 Merge pull request #1299 from adamhathcock/copilot/add-archive-detection-utility 2026-04-27 18:03:00 +01:00
Adam Hathcock
472765b5e3 fix up overloads and usages 2026-04-27 17:17:31 +01:00
Adam Hathcock
aae3502a8b intermediate commit 2026-04-27 16:43:06 +01:00
Adam Hathcock
ac8203e957 add sync tests 2026-04-26 11:30:56 +01:00
Adam Hathcock
4fc08534c2 add detection test 2026-04-26 11:18:27 +01:00
Adam Hathcock
d2c06e95d6 Clean up and move detection to new file 2026-04-26 11:07:11 +01:00
copilot-swe-agent[bot]
f118935bb8 Consolidate archive detection into shared TryFindFactory helpers
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/9c5bf06d-3e2f-4bb5-9130-f5b7cdd1d0a0

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-25 11:13:00 +00:00
copilot-swe-agent[bot]
6c59326628 Add ArchiveInformation record and GetArchiveInformation API for consolidated archive detection
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/324eaee6-e733-4193-b619-6eb75b435ec2

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-25 08:47:12 +00:00
copilot-swe-agent[bot]
a176ffee20 initial plan
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/324eaee6-e733-4193-b619-6eb75b435ec2

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-25 08:42:21 +00:00
copilot-swe-agent[bot]
76300b9c97 Initial plan 2026-04-25 08:38:36 +00:00
Adam Hathcock
50179007f4 Merge pull request #1297 from adamhathcock/adam/enforce-seekable
Enforce seekable, readable and writable on streams
2026-04-23 11:50:24 +01:00
Adam Hathcock
41432ab062 human fix 2026-04-23 11:43:10 +01:00
Adam Hathcock
c9a68593ea add writable checks 2026-04-23 11:19:09 +01:00
Adam Hathcock
5d14c96fb0 clean up seekable checks 2026-04-23 10:19:37 +01:00
Adam Hathcock
2bae46e28a add extension methods for checks 2026-04-23 10:11:54 +01:00
Adam Hathcock
be4b6cdd7f ignore opencode stuff 2026-04-23 09:56:53 +01:00
Adam Hathcock
3ed94dd462 add seekable checks 2026-04-23 09:56:26 +01:00
Adam Hathcock
d3ff2ebe0a Merge pull request #1295 from adamhathcock/adam/fix-opening
Fix usage of ReaderOptions and pre-defined values
2026-04-21 15:15:04 +01:00
copilot-swe-agent[bot]
f4935b042f Fix ReaderOptions preset usage for file-path overloads and stale SymbolicLinkHandler docs
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/41bf7d12-f140-47cf-96f9-3620eeb0eb32

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-21 13:15:28 +00:00
copilot-swe-agent[bot]
5d75f8c36d Fix ForExternalStream→ForFilePath for file-path overloads and update SymbolicLinkHandler remarks
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/41bf7d12-f140-47cf-96f9-3620eeb0eb32

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-21 13:11:31 +00:00
Adam Hathcock
d10b93242c clean up for other options 2026-04-21 11:10:53 +01:00
Adam Hathcock
6a402a3b50 use with methods 2026-04-21 11:04:14 +01:00
Adam Hathcock
1f699f3552 manual clean up 2026-04-21 10:59:01 +01:00
Adam Hathcock
4f1f32b508 Fix usages of ReaderOptions 2026-04-21 10:55:59 +01:00
Adam Hathcock
3af023a4a8 Use explicit helpers for leaving streams open or not. 2026-04-21 10:43:43 +01:00
Adam Hathcock
72b81b8609 Merge pull request #1293 from puk06/fix/leave-stream-open-default
fix: Change LeaveStreamOpen default from true to false
2026-04-21 10:37:59 +01:00
Puk06
d99b406e09 fix: change default reader options in OpenArchive method for FileInfo 2026-04-21 17:02:30 +09:00
ぷこるふ
a351b56737 Apply suggestions from code review
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-04-21 10:26:31 +09:00
ぷこるふ
6a7e0b2f10 Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-04-21 10:09:10 +09:00
ぷこるふ
f5e27faefc Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-04-21 09:48:34 +09:00
ぷこるふ
1bd7bf2169 Apply suggestions from code review
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-04-21 09:40:13 +09:00
ぷこるふ
8d193db721 Potential fix for pull request finding
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-04-21 09:32:27 +09:00
Puk06
ea950457f5 fix(docs): clarify stream handling rules and ownership in AGENTS.md 2026-04-21 09:16:16 +09:00
Puk06
23840b7a0f fix(zip): stop overriding LeaveStreamOpen in OpenArchive 2026-04-21 09:15:56 +09:00
Puk06
37c0f5aec5 fix: Change LeaveStreamOpen default from true to false
As of v0.21, the library is documented to close wrapped streams by default.
However, the ReaderOptions.LeaveStreamOpen property defaulted to true, which
contradicted the documented behavior and caused file locks when deleting
archives after extraction.

Changes:
- Set LeaveStreamOpen = false as the default (consistent with v0.21 design)
- Updated ReaderOptions.cs with comprehensive documentation explaining:
  * File-based vs caller-provided stream handling
  * When to use LeaveStreamOpen = true
  * Usage examples for both scenarios
- Updated AGENTS.md Stream Handling Rules section with:
  * Clear explanation of default disposal behavior
  * Overload differences (file-based vs stream-based)
  * Guidance on using ForExternalStream preset

This ensures the implementation matches the documented behavior and prevents
unexpected file locking issues during archive deletion.

Fixes: File deletion failures after archive extraction
2026-04-20 22:32:36 +09:00
Adam Hathcock
8bd386cde2 Merge pull request #1275 from adamhathcock/adam/pooledmemorystream
Add a PooledMemoryStream to avoid allocating
2026-04-19 15:02:27 +01:00
copilot-swe-agent[bot]
f8485b0e8c Compute CRC without GetBuffer() in SevenZipWriter to avoid allocation
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/77f37cc4-3538-4df1-a816-aa7391065878

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-19 11:33:40 +00:00
Adam Hathcock
a286d104e9 Merge pull request #1288 from adamhathcock/adam/tar-pax
update docs for tar gap analysis and XZ usage
2026-04-19 12:23:42 +01:00
copilot-swe-agent[bot]
49a7e15a8b Add EnsureNotClosed() to Flush and FlushAsync in PooledMemoryStream
Agent-Logs-Url: https://github.com/adamhathcock/sharpcompress/sessions/0ce9533f-f529-4c07-b641-6bf0883a0643

Co-authored-by: adamhathcock <527620+adamhathcock@users.noreply.github.com>
2026-04-19 11:20:34 +00:00
Adam Hathcock
e0ccbbb7c7 Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-19 12:19:06 +01:00
Adam Hathcock
891d1268fb Update src/SharpCompress/IO/PooledMemoryStream.cs
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-19 12:18:47 +01:00
Adam Hathcock
a59f4f330d update docs for tar gap analysis 2026-04-19 12:17:39 +01:00
Adam Hathcock
ad3c5dafd7 update tests 2026-04-19 12:11:50 +01:00
Adam Hathcock
b36689af20 format 2026-04-19 11:48:54 +01:00
Adam Hathcock
e29670e55f Merge branch 'master' into adam/pooledmemorystream 2026-04-19 11:43:24 +01:00
Adam Hathcock
14b0fd012c Merge pull request #1274 from adamhathcock/adam/master-release
Release to Master
2026-04-19 11:32:16 +01:00
Adam Hathcock
51acd43b16 Merge branch 'release' into adam/master-release 2026-04-19 11:25:39 +01:00
Adam Hathcock
bf075d291b Merge pull request #1286 from puk06/docs/appnote-reference-link
Replace APPNOTE.TXT contents with reference link note
2026-04-15 15:59:29 +01:00