kwld.CoreUtil
1.4.0
dotnet add package kwld.CoreUtil --version 1.4.0
NuGet\Install-Package kwld.CoreUtil -Version 1.4.0
<PackageReference Include="kwld.CoreUtil" Version="1.4.0" />
paket add kwld.CoreUtil --version 1.4.0
#r "nuget: kwld.CoreUtil, 1.4.0"
// Install kwld.CoreUtil as a Cake Addin #addin nuget:?package=kwld.CoreUtil&version=1.4.0 // Install kwld.CoreUtil as a Cake Tool #tool nuget:?package=kwld.CoreUtil&version=1.4.0
Overview
Core library holding various extensions to improve code development and readability.
See Docs for details
Whats New
- Removing .net7.0 target (only maintaining supported versions)
- Better implementation for IDirectoryInfo.IsCaseSensitive()
- Renamed TreeCUD to TreeDiff
- IsCaseSensitive now available on Directory; Files and IFileSystem
- EnsureEmpty now usable if selected folder is current directory.
- EnsureEmpty and EnsureDelete both include option to delete readonly files.
- Disposable wrapper now support using System.IO objects.
- New PushD extension.
- New Dictionary.WithDefaults() extension.
- New IDirectoryInfo.All extenions making it easy to find and perfrom an action recursivly
- Dictionary.DefaultTo() replaced by WithDefaults()
Features
Global Usings
For easy use; all extensions are included as global usings (.net 6 +)
By default the standard ImplicitUsings property determines if they are
included or not.
The can also be manually controlled via the ImplicitUsings_CoreUtil build property.
Framework support
To leverage new language features, this now targets multiple frameworks.
Some features are only available for newer frameworks.
Helpers for file system.
Mapping from static file system methods, such as Path.ChangeExtension() to corresponding FileInfo (and DirectoryInfo) extensions, such as FileInfo.ChangeExtension()
Includes set of extensions for System.IO.Abstractions such as IFileInfo.ChangeExtension()
A number of other file-system goodies like Touch(); EnsureExists()
Stream helpers
Simpler Read/Write lines to text stream.
A stream Tee.
String helpers
String split and join helpers.
Split on whitespace (find words)
Compare case-ignorant, and white-space ignorant (Same).
Collections.
Dictionary extensions to:
- Add a range, or merge.
- Ensure an item exists (DefaultTo)
A RecordArray for value-equality of a set of records. (with array-like serialization)
Build tooling.
A number of msbuild helpers, including:
Download file as part of the build.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- TestableIO.System.IO.Abstractions.Wrappers (>= 21.0.29)
-
net6.0
- TestableIO.System.IO.Abstractions.Wrappers (>= 21.0.29)
-
net8.0
- TestableIO.System.IO.Abstractions.Wrappers (>= 21.0.29)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on kwld.CoreUtil:
Package | Downloads |
---|---|
kwd.CoreDomain
A library to help creating rich domain entites for .NET Core |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.4.0 | 105 | 11/1/2024 |
1.4.0-rc1 | 70 | 10/31/2024 |
1.3.2 | 309 | 12/8/2023 |
1.3.2-preview2 | 131 | 11/22/2023 |
1.3.2-preview1 | 105 | 11/20/2023 |
Tree Extensions rename TreeCUD to TreeDiff.
Use transitive build assets
EnsureEmpty now usable if selected directory is curent directory.
EnsureEmpty / EnsureDelete can now delete read-only files.
Dictionary.WithDefaults() can now merge default values for dictionaries.
Directory recursive All, AllFile and AllFolders for simpler usage.