Soenneker.Managers.HashSaving
4.0.1303
Prefix Reserved
dotnet add package Soenneker.Managers.HashSaving --version 4.0.1303
NuGet\Install-Package Soenneker.Managers.HashSaving -Version 4.0.1303
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Soenneker.Managers.HashSaving" Version="4.0.1303" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Soenneker.Managers.HashSaving" Version="4.0.1303" />
<PackageReference Include="Soenneker.Managers.HashSaving" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Soenneker.Managers.HashSaving --version 4.0.1303
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Soenneker.Managers.HashSaving, 4.0.1303"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Soenneker.Managers.HashSaving@4.0.1303
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Soenneker.Managers.HashSaving&version=4.0.1303
#tool nuget:?package=Soenneker.Managers.HashSaving&version=4.0.1303
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Soenneker.Managers.HashSaving
Writes a precomputed hash into a repository checkout, optionally removes packaged resources, then commits and pushes the change.
Install
dotnet add package Soenneker.Managers.HashSaving
Usage
using Microsoft.Extensions.DependencyInjection;
using Soenneker.Managers.HashSaving.Abstract;
using Soenneker.Managers.HashSaving.Registrars;
services.AddHashSavingManagerAsSingleton();
IHashSavingManager hashes =
serviceProvider.GetRequiredService<IHashSavingManager>();
await hashes.SaveHashToGitRepoWithoutClearingResources(
gitDirectory: repositoryPath,
newHash: verifiedHash,
hashFileName: "hash.txt",
name: "Automation",
email: "automation@example.com",
token: githubToken,
cancellationToken);
Each method writes the hash and immediately commits and pushes all working-tree changes using the message Updates hash for new version. Use it only with a disposable, dedicated checkout whose complete contents are intended for that commit.
What you get
IHashSavingManager— Handles hashing and saving.HashSavingManagerRegistrar— Handles hashing and saving.
API at a glance
| API | What it does | Result / important behavior |
|---|---|---|
IHashSavingManager.SaveHashToGitRepoWithoutClearingResources(gitDirectory, newHash, hashFileName, name, email, token, cancellationToken) |
Saves hash To Git Repo Without Clearing Resources. | A task that completes when the hash to git repo without clearing resources has been saved. |
IHashSavingManager.SaveHashToGitRepoAsFile(gitDirectory, libraryName, newHash, fileName, hashFileName, name, email, username, token, cancellationToken) |
Saves hash To Git Repo As File. | A task that completes when the hash to git repo as file has been saved. |
IHashSavingManager.SaveHashToGitRepoAsDirectory(gitDirectory, newHash, targetDir, hashFileName, name, email, username, token, cancellationToken) |
Saves hash To Git Repo As Directory. | A task that completes when the hash to git repo as directory has been saved. |
HashSavingManagerRegistrar.AddHashSavingManagerAsSingleton(services) |
Adds IHashSavingManager as a singleton service. |
The same service collection, so additional registrations can be chained. |
HashSavingManagerRegistrar.AddHashSavingManagerAsScoped(services) |
Adds IHashSavingManager as a scoped service. |
The same service collection, so additional registrations can be chained. |
Practical notes
SaveHashToGitRepoWithoutClearingResources()leaves packaged resources in place.SaveHashToGitRepoAsFile()deletessrc/<libraryName>/Resources/<fileName>before committing.SaveHashToGitRepoAsDirectory()deletes the supplied resource directory before committing.- Hash and resource paths are required to remain inside
gitDirectory; traversal and outside paths are rejected before deletion. usernameis retained for API compatibility but is not used.nameandemailset commit attribution;tokenauthenticates the push.- Cancellation can stop the operation between local mutation, commit, and push. Run recovery or discard the dedicated checkout rather than assuming rollback.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Soenneker.Git.Util (>= 4.0.3768)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Soenneker.Managers.HashSaving:
| Package | Downloads |
|---|---|
|
Soenneker.Managers.Runners
Handles Runner operations and coordination |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.0.1303 | 572 | 9/10/2026 |
| 4.0.1301 | 260 | 9/9/2026 |
| 4.0.1300 | 1,346 | 9/9/2026 |
| 4.0.1299 | 727 | 9/9/2026 |
| 4.0.1298 | 222 | 9/9/2026 |
| 4.0.1297 | 1,611 | 9/8/2026 |
| 4.0.1296 | 394 | 9/8/2026 |
| 4.0.1295 | 1,415 | 9/8/2026 |
| 4.0.1294 | 51 | 9/8/2026 |
| 4.0.1293 | 51 | 9/8/2026 |
| 4.0.1292 | 744 | 9/8/2026 |
| 4.0.1291 | 1,317 | 9/8/2026 |
| 4.0.1290 | 416 | 9/7/2026 |
| 4.0.1289 | 55 | 9/7/2026 |
| 4.0.1288 | 519 | 9/7/2026 |
| 4.0.1287 | 3,928 | 9/5/2026 |
| 4.0.1286 | 887 | 9/5/2026 |
| 4.0.1285 | 1,820 | 9/5/2026 |
| 4.0.1284 | 87 | 9/4/2026 |
| 4.0.1283 | 91 | 9/4/2026 |
Loading failed
Updated Multiple NuGet packages