129 Commits

Author SHA1 Message Date
dependabot[bot]
28a027e5d1
Bump SharpCompress from 0.42.0 to 0.42.1 (#2039)
---
updated-dependencies:
- dependency-name: SharpCompress
  dependency-version: 0.42.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: SharpCompress
  dependency-version: 0.42.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: SharpCompress
  dependency-version: 0.42.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-08 10:47:34 -08:00
ds5678
b7240d0988 Fix zip reading regression
Resolves #2004
2025-11-29 21:33:44 -08:00
ds5678
46261d2259 Handle highly compressed games better
Resolves #1953
2025-11-04 21:17:54 -08:00
ds5678
03393d0c22 Fix failure to load multi-file resource
Resolves #1971
2025-10-26 22:03:53 -07:00
dependabot[bot]
17e3f3a482 Bump SharpCompress from 0.40.0 to 0.41.0
---
updated-dependencies:
- dependency-name: SharpCompress
  dependency-version: 0.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: SharpCompress
  dependency-version: 0.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: SharpCompress
  dependency-version: 0.41.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-26 16:47:52 -07:00
ds5678
2f43a7abe5 Use FileSystem for zip extraction
Resolves #1943
2025-10-25 15:33:06 -07:00
ds5678
a29aa565a9 Reenable RandomAccessStream
Related: #1954
2025-10-12 21:29:58 -07:00
ds5678
19653bcb80 Update common string for new Unity versions
Resolves #1961
2025-10-10 10:59:22 -07:00
ds5678
5cf6fbad22 Disable changes from #1954 2025-10-09 18:06:10 -07:00
ds5678
ff19979be9 Assume Unity version is stripped if it can't be parsed instead of throwing an exception
Resolves #1947
2025-10-05 13:10:16 -07:00
Jason McNew
cf22d78101
Avoid copying uncompressed file data to large byte[] arrays (#1954)
* Avoid copying uncompressed bundle files to large byte[].

* Move dependency check logic to SmartStream, and copy if not compatible.

Style cleanups per feedback.

* Tie the original FileStream lifecycle to any surviving partials.

* Ensure FileStream isn't finalized while we're calling Dispose() on it.

* Hold a ref to FIleStream and let the finalizer close it.

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>

* Cache FileStream.SafeFileHandle getter to avoid unnecessary Seek().

See OSFileStreamStrategy.cs.

---------

Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>
2025-10-05 03:49:57 -07:00
ds5678
d8a5557478 Convert FileSystem::GetUniqueName into an instance method
Related: #1581
2025-09-21 00:19:04 -07:00
ds5678
9793a943a6 Redirect references from TemporaryFileStorage to LocalFileSystem
Related: #1581
2025-09-21 00:06:50 -07:00
ds5678
c7fb822f71 Move AssemblyDumper to this repository 2025-09-17 16:40:02 -07:00
ds5678
5971480fa2 Use collection expressions 2025-09-17 09:57:47 -07:00
ds5678
2346035026 Remove unnecessary csproj properties
* IsTrimmable
* ImplicitUsings
* AppendTargetFrameworkToOutputPath
2025-09-17 09:44:05 -07:00
Jeremy Pritts
85172b7393
File system improvements (#1936)
* WIP file system improvements

* Switch to a hierarchial virtual file system

* EnumerateFiles and EnumerateDirectories

* Change import code to use FileSystem

* Use FileSystem when loading assemblies

* Use FileSystem in MonoManager initialization

* Remove set method for PlatformGameStructure::RootPath

* Renaming cleanup
2025-09-13 15:17:41 -07:00
Jeremy Pritts
01787539de Revert "Use NuGet central package management"
This reverts commit d26e81f74e83ca1294bee8c263c3419ad4aa2f38.
2025-09-07 16:40:25 -07:00
YoshiRulz
d26e81f74e Use NuGet central package management 2025-09-06 19:04:44 -07:00
ds5678
02eb6cf7f5 Update package versions across multiple projects
- Bump `System.Text.Json` to version `9.0.7` in `AssetRipper.GUI.Localizations.SourceGenerator.csproj`.
- Bump `Microsoft.AspNetCore.OpenApi` to version `9.0.7` in `AssetRipper.GUI.Web.csproj`.
- Bump `Swashbuckle.AspNetCore` to version `9.0.3` in `AssetRipper.GUI.Web.csproj`.
- Bump `ZstdSharp.Port` to version `0.8.6` in `AssetRipper.IO.Files.csproj`.
2025-07-24 18:54:10 -07:00
ds5678
88f6700ccd Export meta references on Unity 3 as type 1
* Reverts most of 70f21a0b7a3760b9ff41fcb3670e24d8a09ba7d9
* Resolves #1329
* Resolves #1827
2025-07-15 18:59:00 -07:00
ds5678
7b1c20c1f3 File scoped namespaces 2025-06-23 11:42:47 -07:00
dependabot[bot]
3ec12fad63
Bump NuGet references and support newer Unity versions (#1818)
* Bump AssetRipper.ICSharpCode.Decompiler and 9 others

Bumps AssetRipper.ICSharpCode.Decompiler to 9.1.0.8017
Bumps AssetRipper.SourceGenerated from 1.2.4 to 1.2.5
Bumps Microsoft.AspNetCore.OpenApi from 9.0.5 to 9.0.6
Bumps Microsoft.NET.Test.Sdk to 17.14.1
Bumps NUnit.Analyzers to 4.9.2
Bumps Samboy063.Cpp2IL.Core from 2022.1.0-development.1262 to 2022.1.0-pre-release.19
Bumps SharpCompress from 0.39.0 to 0.40.0
Bumps Swashbuckle.AspNetCore from 8.1.2 to 9.0.1
Bumps System.CommandLine to 2.0.0-beta5.25306.1
Bumps System.Text.Json from 9.0.5 to 9.0.6

---
updated-dependencies:
- dependency-name: AssetRipper.ICSharpCode.Decompiler
  dependency-version: 9.1.0.8017
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: AssetRipper.ICSharpCode.Decompiler
  dependency-version: 9.1.0.8017
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: AssetRipper.SourceGenerated
  dependency-version: 1.2.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.AspNetCore.OpenApi
  dependency-version: 9.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.NET.Test.Sdk
  dependency-version: 17.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: NUnit.Analyzers
  dependency-version: 4.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: Samboy063.Cpp2IL.Core
  dependency-version: 2022.1.0-pre-release.19
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: SharpCompress
  dependency-version: 0.40.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: Swashbuckle.AspNetCore
  dependency-version: 9.0.1
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: System.CommandLine
  dependency-version: 2.0.0-beta5.25306.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.CommandLine
  dependency-version: 2.0.0-beta5.25306.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.CommandLine
  dependency-version: 2.0.0-beta5.25306.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: System.Text.Json
  dependency-version: 9.0.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update Source/AssetRipper.Import/AssetRipper.Import.csproj

* Apply suggestions from code review

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jeremy Pritts <49847914+ds5678@users.noreply.github.com>
2025-06-20 00:07:13 -07:00
ds5678
477933b9ad Formatting 2025-06-18 12:42:22 -07:00
ds5678
70abe03a42 Ensure there are never too many characters in a file name
* Resolves #1535
* Closes #1797
2025-05-31 17:22:01 -07:00
ds5678
f85b6de5a5 Replace SmartEnums with new extensions feature 2025-05-18 12:01:53 -07:00
ds5678
980484e374 Support new versions of Unity and update NuGet references 2025-05-07 14:34:42 -07:00
ds5678
4c6c28e88b Refactoring
* Use preview language version
* Apply various code fixers
* Remove TypeTreeHelper
* Remove unused properties from IExportContainer
2025-04-29 11:31:02 -07:00
ds5678
5ffc04cfa5 Update AssetRipper.Primitives to 3.2.0 2025-04-28 21:05:36 -07:00
ds5678
cfd2d822c7 Smart enum generator 2025-03-30 22:42:03 -07:00
ds5678
8435c391bd Implement virtual file system
* Resolves #1579
2025-03-09 03:11:45 -07:00
ds5678
0125475c0a Be more strict about alignment 2025-03-01 18:31:47 -08:00
ds5678
f9ba652b09 Align if necessary when reading bundle metadata
* Resolves #1470
2025-03-01 18:16:12 -08:00
ds5678
32aaebbd2f Fix lighting data crash
* Resolves #1454
* Resolves #811
* Related: #1628
* Related: #1012
* Related: #592
* Related: #1496
2025-02-27 23:56:01 -08:00
dependabot[bot]
e2425d73ad Bump ZstdSharp.Port from 0.8.4 to 0.8.5
Bumps [ZstdSharp.Port](https://github.com/oleg-st/ZstdSharp) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/oleg-st/ZstdSharp/releases)
- [Commits](https://github.com/oleg-st/ZstdSharp/compare/0.8.4...0.8.5)

---
updated-dependencies:
- dependency-name: ZstdSharp.Port
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-27 04:46:09 -05:00
ds5678
d6d1852d0f Update AssetRipper.IO.Endian package version
Updated the `AssetRipper.IO.Endian` package from version
`2.0.1` to `2.0.2` in both the
`AssetRipper.IO.Files.SourceGenerator.csproj` and
`AssetRipper.IO.Files.csproj` files.
2025-02-26 11:33:43 -08:00
ds5678
3fe9f4724d Update package references
- Removed `AssetRipper.Text.SourceGeneration` reference from `AssetRipper.GUI.Localizations.csproj`.
- Updated `AssetRipper.IO.Endian` package version from `2.0.0` to `2.0.1` in both `AssetRipper.IO.Files.SourceGenerator.csproj` and `AssetRipper.IO.Files.csproj`.
2025-02-26 09:58:55 -08:00
ds5678
b489c3d805 Improve recovery of Il2Cpp explicit interface overrides
* Resolves #1682
2025-02-24 16:12:22 -08:00
dependabot[bot]
1fdf7c65aa Bump AssetRipper.Primitives from 3.1.4 to 3.1.5
Bumps [AssetRipper.Primitives](https://github.com/AssetRipper/AssetRipper.Primitives) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/AssetRipper/AssetRipper.Primitives/releases)
- [Commits](https://github.com/AssetRipper/AssetRipper.Primitives/compare/3.1.4...3.1.5)

---
updated-dependencies:
- dependency-name: AssetRipper.Primitives
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-15 02:26:33 -05:00
ds5678
26804af466 Update AssetRipper.IO.Endian package version
Updated the `AssetRipper.IO.Endian` package from version
`1.1.0` to `2.0.0` in both the
`AssetRipper.IO.Files.SourceGenerator.csproj` and
`AssetRipper.IO.Files.csproj` files.
2025-02-11 18:34:26 -08:00
dependabot[bot]
f78ede0fb3 Bump SharpCompress and ZstdSharp.Port
Bumps [SharpCompress](https://github.com/adamhathcock/sharpcompress) and [ZstdSharp.Port](https://github.com/oleg-st/ZstdSharp). These dependencies needed to be updated together.

Updates `SharpCompress` from 0.38.0 to 0.39.0
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.38.0...0.39.0)

Updates `ZstdSharp.Port` from 0.8.4 to 0.8.4
- [Release notes](https://github.com/oleg-st/ZstdSharp/releases)
- [Commits](https://github.com/oleg-st/ZstdSharp/compare/0.8.4...0.8.4)

---
updated-dependencies:
- dependency-name: SharpCompress
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: ZstdSharp.Port
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-16 20:28:50 -05:00
dependabot[bot]
24ffe1bee4 Bump AssetRipper.Primitives from 3.1.3 to 3.1.4
Bumps [AssetRipper.Primitives](https://github.com/AssetRipper/AssetRipper.Primitives) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/AssetRipper/AssetRipper.Primitives/releases)
- [Commits](https://github.com/AssetRipper/AssetRipper.Primitives/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: AssetRipper.Primitives
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-21 23:01:48 -08:00
dependabot[bot]
95024da309 Bump ZstdSharp.Port from 0.8.3 to 0.8.4
Bumps [ZstdSharp.Port](https://github.com/oleg-st/ZstdSharp) from 0.8.3 to 0.8.4.
- [Release notes](https://github.com/oleg-st/ZstdSharp/releases)
- [Commits](https://github.com/oleg-st/ZstdSharp/compare/0.8.3...0.8.4)

---
updated-dependencies:
- dependency-name: ZstdSharp.Port
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-15 22:15:15 -08:00
ds5678
6dce1c375c Abstract File System Access During Export
* Resolves #665
2024-12-05 21:39:52 -08:00
ds5678
7d197aa446 Move Hash128 2024-12-04 11:07:42 -08:00
ds5678
9cdc240858 Replace Path.Combine with Path.Join 2024-12-04 09:47:56 -08:00
dependabot[bot]
b899b6e3a3 Bump ZstdSharp.Port from 0.8.2 to 0.8.3
Bumps [ZstdSharp.Port](https://github.com/oleg-st/ZstdSharp) from 0.8.2 to 0.8.3.
- [Release notes](https://github.com/oleg-st/ZstdSharp/releases)
- [Commits](https://github.com/oleg-st/ZstdSharp/compare/0.8.2...0.8.3)

---
updated-dependencies:
- dependency-name: ZstdSharp.Port
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-24 18:32:21 -08:00
dependabot[bot]
4c1f890a4f Bump ZstdSharp.Port from 0.8.1 to 0.8.2
Bumps [ZstdSharp.Port](https://github.com/oleg-st/ZstdSharp) from 0.8.1 to 0.8.2.
- [Release notes](https://github.com/oleg-st/ZstdSharp/releases)
- [Commits](https://github.com/oleg-st/ZstdSharp/compare/0.8.1...0.8.2)

---
updated-dependencies:
- dependency-name: ZstdSharp.Port
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-13 17:58:12 -08:00
dependabot[bot]
1541a68da7 Bump SharpCompress from 0.37.2 to 0.38.0
Bumps [SharpCompress](https://github.com/adamhathcock/sharpcompress) from 0.37.2 to 0.38.0.
- [Release notes](https://github.com/adamhathcock/sharpcompress/releases)
- [Commits](https://github.com/adamhathcock/sharpcompress/compare/0.37.2...0.38.0)

---
updated-dependencies:
- dependency-name: SharpCompress
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-02 18:56:08 -07:00
ds5678
8429911c25 Handle failed file loading
* Closes #1208
* Related: #1403
2024-08-11 11:17:30 -07:00