Skip to content

Releases: Thealexbarney/LibHac

v0.9.1

04 Mar 04:49
396c3ef
Compare
Choose a tag to compare

hactoolnet

  • No changes

LibHac

  • #119 Don't return duplicate entries when doing Directory.Read or Directory.GetEntryCount on a LayeredFileSystem

v0.9.0

29 Feb 09:06
Compare
Choose a tag to compare

hactoolnet

  • #111 Update displayed text for newer master key revisions

LibHac

  • #116 Add support for cache storage savedata management
  • #111 Refactor the Result struct
  • #117 Generate C# Result definitions from an external .csv file
  • #117 Add a default IResultNameResolver to get names from Results
  • #114 Implement the path normalization functions from FS
  • #114 Make sure AesXtsFile is flushed properly when closing
  • #114 Rewrite SubdirectoryFileSystem
  • #110 Add an InMemoryFileSystem class for testing
  • #113 Add some common tests for all classes implementing IFileSystem

v0.8.2

14 Jan 04:52
Compare
Choose a tag to compare

hactoolnet

  • No changes

LibHac

  • #108 Implement SaveDataIndexerLite, enabling creation and mounting of temporary savedata.

v0.8.1

04 Jan 21:42
Compare
Choose a tag to compare

hactoolnet

  • No changes

LibHac

  • #107 Filter savedata info rank correctly. Fix CreateSaveData logging.

v0.8.0

01 Jan 22:23
e8bef8a
Compare
Choose a tag to compare

hactoolnet

  • #105 Add support for extracting nax0 files.
  • #104 Display the key used to sign and verify savedata files. Fix issues with signing and verifying savedata sometimes.
  • #103 Make sure some error messages are displayed properly.

LibHac

  • #101 Add some FS content shims. Add PartitionFileSystemCore class.
  • #104 Fix regression in keyblob key derivation.
  • #103 Make sure Result.Log() is called when returning non-success results.

v0.7.0

28 Nov 05:04
Compare
Choose a tag to compare

All projects targeting .NET Core 2.1 have been updated to target .NET Core 3.0

hactoolnet

  • Display the title name when reading an NCA containing an NPDM (#88)
  • Display result names when exiting because of an error (#90)
  • Fix a bug that would occur when repacking a non-empty savedata (#87)

LibHac

  • Implement the savedata indexer along with savedata management FileSystemProxy functions (#89, #93)
  • Add a new LibHac.Crypto namespace with optimized AES implementations 2-3x faster than before. (#92, #94, #95, #97)
  • Add the option to specify a callback function that will be called when a non-successful result is returned in a debug build (#90)
  • Slightly reduce the memory retained after reading a key file (#91)

v0.6.0

14 Oct 18:10
Compare
Choose a tag to compare

hactoolnet

  • No significant changes

LibHac

Various breaking changes throughout. APIs are being adjusted to more closely match the APIs in Horizon OS. For example, the IStorage and IFileSystem-related interfaces now all return Result indicating the outcome of the function call rather than throw exceptions.

Added base functionality for a FS service and client. Functionality will continue to be expanded in future releases.

Downloads:

Most users should download hactoolnet.exe

hactoolnet.exe: hactoolnet. Most users should download this file.
hactoolnet_netcore.zip: hactoolnet for .NET Core. Runs on Windows, Linux and macOS.
hactoolnet_native.exe: A self-contained hactoolnet natively built for Windows. Has faster startup time.
LibHac.0.6.0.nupkg: The LibHac library for inclusion in other projects. The same version that's on NuGet.

v0.5.1

11 Aug 21:58
Compare
Choose a tag to compare

hactoolnet

  • Only sign save files if needed
  • Don't add unnecessary ".cnmt" to NCA filenames when exporting via switchfs

LibHac

  • Add a .NET Standard 2.0 target
  • Make HierarchicalRomFileTable generic
  • Derive keys used for "custom storage" and savedata signing on the SD card
  • Fix the EnsureDirectoryExists functions
  • Use the reference assemblies hosted on NuGet when building for .NET Framework

Downloads:

Most users should download hactoolnet.exe

hactoolnet.exe: hactoolnet and libraries merged into a single file. Most users should download this file.
hactoolnet_netcore.zip: hactoolnet for .NET Core. Runs on Windows, Linux and macOS.
hactoolnet.zip: hactoolnet and libraries as separate files.
hactoolnet_native.exe: A self-contained hactoolnet natively built for Windows. Has faster startup time.
LibHac.0.5.1.nupkg: The LibHac library for inclusion in other projects. The same version that's on NuGet.

v0.5.0

10 Jul 04:33
Compare
Choose a tag to compare

hactoolnet

  • Partial fix for switchfs functionality on Linux and macOS
  • Add an access log option
  • Support XTS NCA2 encryption

LibHac

  • Add a HorizonResultException class for throwing errors using Horizon result codes
  • Add a FileSystemManager that allows mounting multiple filesystems
  • Add an access log for FS operations
  • Support XTS NCA2 encryption
  • Use result codes more throughout the codebase
  • Add a workaround in ConcatenationFileSystem for .NET on Linux and macOS not being able to read/write the archive file attribute
  • IFileSystem.GetEntryType now returns DirectoryEntryType.NotFound instead of throwing an exception if a path is not found
  • The FileExists and DirectoryExists methods have been removed from IFileSystem and replaced with extension methods that use IFileSystem.GetEntryType
  • Tweak the behavior of IFileSystem to more closely match the behavior in Horizon
    Main changes include:
    • An entry's parent directory must exist before creating it. It is no longer automatically created if it does not exist
    • CreateFile and CreateDirectory will throw a ResultFs.PathAlreadyExists if the entry already exists
    • DeleteFile and DeleteDirectory will throw a ResultFs.PathNotFound if the entry does not exist

Downloads:

Most users should download hactoolnet.exe

hactoolnet.exe: Most users should download this file. hactoolnet and libraries merged into a single file.
hactoolnet_netcore.zip: hactoolnet for .NET Core. Runs on Windows, Linux and macOS.
hactoolnet.zip: hactoolnet and libraries as separate files.
hactoolnet_native.exe: A self-contained hactoolnet natively built for Windows. Has faster startup time.
LibHac.0.5.0.nupkg: The LibHac library for inclusion in other projects. The same version that's on NuGet.

v0.4.1

05 Jun 05:36
Compare
Choose a tag to compare

Add an IMKV database reader and writer
Add read and write options to IFile read and write methods
Make Nca.SectionExists return false for invalid type instead of throwing an exception