Minicon.FileCleanUp
1.3.2
dotnet add package Minicon.FileCleanUp --version 1.3.2
NuGet\Install-Package Minicon.FileCleanUp -Version 1.3.2
<PackageReference Include="Minicon.FileCleanUp" Version="1.3.2" />
<PackageVersion Include="Minicon.FileCleanUp" Version="1.3.2" />
<PackageReference Include="Minicon.FileCleanUp" />
paket add Minicon.FileCleanUp --version 1.3.2
#r "nuget: Minicon.FileCleanUp, 1.3.2"
#:package Minicon.FileCleanUp@1.3.2
#addin nuget:?package=Minicon.FileCleanUp&version=1.3.2
#tool nuget:?package=Minicon.FileCleanUp&version=1.3.2
Minicon.FileCleanUp
.NET 10 library for age-based file cleanup, designed for customer-owned console applications.
Version 1.3.2 for Windows and UNC network shares. Customer-specific deployment and acceptance remain the host operator’s responsibility. The HTML handbook describes the broader target specification. See implementation status for the exact tested scope and remaining work. File deletion is permanent.
builder.Services.AddFileCleanUp(builder.Configuration.GetSection("FileCleanUp"));
using var host = builder.Build();
var cleanup = host.Services.GetRequiredService<IFileCleanUpService>();
var result = await cleanup.RunAsync(cancellationToken);
The library consumes configuration supplied by the host. Logging uses ILogger<FileCleanUpService>; the sample host integrates Serilog/Seq. IFileSystem (TestableIO) and TimeProvider are injectable. Dry run is enabled by default.
- Offline handbook:
docs/index.html; the NuGet package copies it todocs/Minicon.FileCleanUp/index.htmlin build/publish output. - Disable copying:
<MiniconFileCleanUpCopyDocumentation>false</MiniconFileCleanUpCopyDocumentation>. - Sample:
samples/Minicon.FileCleanUp.Console. - Test:
dotnet test. - Host/process acceptance:
python3 scripts/host-smoke.py. - Windows storage acceptance on a disposable administrative test machine:
./scripts/windows-storage-smoke.ps1. - Package boundary test:
python3 scripts/package-smoke.py. - Build package:
dotnet pack src/Minicon.FileCleanUp -c Release -o artifacts/packages.
Public behavior tests were developed in individual red/green cycles, starting with safe dry run. They use in-memory IO, controlled time and targeted boundary faults. Real-process tests verify crash/restart behavior. Windows CI exercises a disposable SMB share, outage/restart, sharing locks and junctions. See the Windows production runbook for deployment, audit storage and remaining customer acceptance.
MIT license.
Source architecture
Domain, Core, Infrastructure and the customer entry point are separate projects, bundled into one NuGet package. See architecture for dependencies, interfaces and compatibility details.
Version 1.3.2 supports legacy global setting names and combined CheckDates flags. Version 1.3.2 includes an adapter for legacy JSON rule providers; see legacy provider integration. MaxAgeDateTime is supported as a fixed cutoff, combined with age limits using the earliest cutoff.
| 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. |
-
net10.0
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.12)
- TestableIO.System.IO.Abstractions.Wrappers (>= 22.2.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Log effective global cleanup configuration and each rule with its computed cutoff at startup. See CHANGELOG.md.