Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
05ebf22
Start using the interface to draw distinction between async and sync
adamhathcock Jan 12, 2026
c5a6f90
Merge branch 'adam/async' into adam/async-interface
adamhathcock Jan 12, 2026
c1f8580
Remove unnecessary ValueTask wrappers from async factory methods
adamhathcock Jan 12, 2026
0615d17
fix async interfacing for open
adamhathcock Jan 12, 2026
38203fb
Fix async reader variable types - Remove double await on ReaderFactor…
adamhathcock Jan 12, 2026
fce4a96
make Writable interfaces for archive
adamhathcock Jan 12, 2026
0502ff5
test fixes and fmt
adamhathcock Jan 12, 2026
d727d76
Merge remote-tracking branch 'origin/master' into adam/async-interface
adamhathcock Jan 12, 2026
6d6103a
update docs
adamhathcock Jan 12, 2026
1b4cedf
misc fixes
adamhathcock Jan 12, 2026
4df952d
split out factories for archive
adamhathcock Jan 12, 2026
9a4e864
fix usage of ArchiveFactory
adamhathcock Jan 13, 2026
9cf2b31
fixed up async writer
adamhathcock Jan 13, 2026
1c0183e
force async tests
adamhathcock Jan 13, 2026
ec7d2e3
fix lock?
adamhathcock Jan 13, 2026
cdca909
fmt
adamhathcock Jan 13, 2026
0b5371d
more async fixing
adamhathcock Jan 13, 2026
0b8081f
gzip fixes
adamhathcock Jan 13, 2026
fc85f1f
more tar async fixes
adamhathcock Jan 13, 2026
a1a86cd
fmt
adamhathcock Jan 13, 2026
ddc08e0
fix async error
adamhathcock Jan 13, 2026
767f3a4
fix up extensions to more like polyfills
adamhathcock Jan 13, 2026
4fa976b
remove unused ref
adamhathcock Jan 13, 2026
ca4cf25
clean up lazy readonly collections and add tests
adamhathcock Jan 13, 2026
8d34f88
fix up gitignore
adamhathcock Jan 13, 2026
c32f4b4
fix test reference
adamhathcock Jan 14, 2026
3677b4b
add default interfaces to enforce consistency
adamhathcock Jan 14, 2026
775efa1
Reader open factories
adamhathcock Jan 14, 2026
e63ee57
same for writers
adamhathcock Jan 14, 2026
95d2278
fmt
adamhathcock Jan 14, 2026
5c4719f
missing extensions
adamhathcock Jan 14, 2026
7b76858
refactoring naming again
adamhathcock Jan 15, 2026
2756b1f
more refactor
adamhathcock Jan 15, 2026
779fba5
finish the open refactor?
adamhathcock Jan 15, 2026
85b28df
more refactoring
adamhathcock Jan 15, 2026
7fbd751
change tests to work
adamhathcock Jan 15, 2026
bf74167
update docs
adamhathcock Jan 15, 2026
b412961
more updates to docs
adamhathcock Jan 15, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,6 @@ dotnet_diagnostic.CS8602.severity = error
dotnet_diagnostic.CS8604.severity = error
dotnet_diagnostic.CS8618.severity = error
dotnet_diagnostic.CS0618.severity = suggestion
dotnet_diagnostic.CS1998.severity = error
dotnet_diagnostic.CS4014.severity = error
dotnet_diagnostic.CS8600.severity = error
dotnet_diagnostic.CS8603.severity = error
Expand Down
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ _ReSharper.SharpCompress/
bin/
*.suo
*.user
TestArchives/Scratch/
TestArchives/Scratch2/
tests/TestArchives/Scratch/
tests/TestArchives/Scratch2/
TestResults/
*.nupkg
packages/*/
Expand Down
1 change: 0 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,5 +178,4 @@ SharpCompress supports multiple archive and compression formats:
2. **Solid archives (Rar, 7Zip)** - Use `ExtractAllEntries()` for best performance, not individual entry extraction
3. **Stream disposal** - Always set `LeaveStreamOpen` explicitly when needed (default is to close)
4. **Tar + non-seekable stream** - Must provide file size or it will throw
5. **Multi-framework differences** - Some features differ between .NET Framework and modern .NET (e.g., Mono.Posix)
6. **Format detection** - Use `ReaderFactory.Open()` for auto-detection, test with actual archive files
1 change: 1 addition & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,6 @@
<RunAnalyzersDuringBuild>False</RunAnalyzersDuringBuild>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<RestorePackagesWithLockFile>true</RestorePackagesWithLockFile>
<CentralPackageTransitivePinningEnabled>true</CentralPackageTransitivePinningEnabled>
</PropertyGroup>
</Project>
1 change: 1 addition & 0 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
<PackageVersion Include="Glob" Version="1.1.9" />
<PackageVersion Include="JetBrains.Profiler.SelfApi" Version="2.5.15" />
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="10.0.0" />
<PackageVersion Include="Microsoft.NET.ILLink.Task" Version="10.0.0" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
<PackageVersion Include="Mono.Posix.NETStandard" Version="1.0.0" />
<PackageVersion Include="SimpleExec" Version="13.0.0" />
Expand Down
3 changes: 1 addition & 2 deletions SharpCompress.sln
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Config", "Config", "{CDB425
Directory.Build.props = Directory.Build.props
global.json = global.json
.editorconfig = .editorconfig
.gitignore = .gitignore
Directory.Packages.props = Directory.Packages.props
NuGet.config = NuGet.config
.github\workflows\nuget-release.yml = .github\workflows\nuget-release.yml
USAGE.md = USAGE.md
README.md = README.md
FORMATS.md = FORMATS.md
AGENTS.md = AGENTS.md
EndProjectSection
EndProject
Expand Down
Loading