From 7700dce7eb7922fa7cf2323ef01fd629cbc5d597 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Tue, 14 Apr 2026 20:27:44 +0000
Subject: [PATCH 1/3] Add README with badges, description, terms of use,
install, and features
Agent-Logs-Url: https://github.com/Tyrrrz/PowerKit/sessions/33ee8a3b-3007-433d-8118-e203fb6e7050
Co-authored-by: Tyrrrz <1935960+Tyrrrz@users.noreply.github.com>
---
README.md | 77 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 76 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index e4a0729..2d187e3 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,77 @@
# PowerKit
-Collection of utilities and extensions for rapid .NET development
+
+[](https://github.com/Tyrrrz/.github/blob/prime/docs/project-status.md)
+[](https://tyrrrz.me/ukraine)
+[](https://github.com/Tyrrrz/PowerKit/actions)
+[](https://codecov.io/gh/Tyrrrz/PowerKit)
+[](https://nuget.org/packages/PowerKit)
+[](https://nuget.org/packages/PowerKit)
+[](https://discord.gg/2SUWKFnHSm)
+[](https://twitter.com/tyrrrz/status/1495972128977571848)
+
+
+
+**PowerKit** is a collection of utilities and extensions for rapid .NET development.
+It's distributed as a source-only package that can be referenced without imposing any run-time dependencies.
+
+## Terms of use[[?]](https://github.com/Tyrrrz/.github/blob/prime/docs/why-so-political.md)
+
+By using this project or its source code, for any purpose and in any shape or form, you grant your **implicit agreement** to all the following statements:
+
+- You **condemn Russia and its military aggression against Ukraine**
+- You **recognize that Russia is an occupant that unlawfully invaded a sovereign state**
+- You **support Ukraine's territorial integrity, including its claims over temporarily occupied territories of Crimea and Donbas**
+- You **reject false narratives perpetuated by Russian state propaganda**
+
+To learn more about the war and how you can help, [click here](https://tyrrrz.me/ukraine). Glory to Ukraine! πΊπ¦
+
+## Install
+
+- π¦ [NuGet](https://nuget.org/packages/PowerKit): `dotnet add package PowerKit`
+
+> [!IMPORTANT]
+> To reference this package, you must have the latest major version of the .NET SDK installed.
+> This is only required for the build process, and does not affect which version of the runtime you can target.
+
+## Features
+
+- Provides utility types:
+ - `Cell` β a container for a value that may or may not be set (nullable-agnostic alternative to `Nullable`)
+ - `Disposable` β helpers for creating and composing `IDisposable` instances
+ - `LockFile` β a file-based lock that prevents concurrent access to a shared resource
+ - `TempFile` β a temporary file that is automatically deleted when disposed
+ - `TempDirectory` β a temporary directory that is automatically deleted when disposed
+- Provides extension methods for:
+ - `AggregateException`, `Exception`
+ - `ArrayPool`
+ - `Assembly`
+ - `IAsyncEnumerable`
+ - `BinaryReader`, `BinaryWriter`
+ - `bool`
+ - `ICollection`
+ - `IComparable`
+ - `Console`
+ - `CultureInfo`
+ - `DateTime`, `DateTimeOffset`
+ - `decimal`, `double`, `int`, `long`
+ - `DirectoryInfo`
+ - `Encoding`
+ - `IEnumerable`
+ - `Environment`
+ - `FileInfo`
+ - `Guid`
+ - `Path`
+ - `Process`
+ - `RegistryKey`
+ - `Stream`
+ - `StringBuilder`
+ - `string`
+ - `TextReader`
+ - `TimeSpan`
+ - `ZipArchiveEntry`
+- Targets .NET Standard 2.0+, .NET Framework 3.5+, .NET 10+
+- Imposes no run-time dependencies
From 2662bbc94ab73745d5af5d2e672cb272a0670831 Mon Sep 17 00:00:00 2001
From: Oleksii Holub <1935960+Tyrrrz@users.noreply.github.com>
Date: Tue, 14 Apr 2026 23:34:10 +0300
Subject: [PATCH 2/3] Update README.md
---
README.md | 46 +++++-----------------------------------------
1 file changed, 5 insertions(+), 41 deletions(-)
diff --git a/README.md b/README.md
index 2d187e3..b623533 100644
--- a/README.md
+++ b/README.md
@@ -33,45 +33,9 @@ To learn more about the war and how you can help, [click here](https://tyrrrz.me
- π¦ [NuGet](https://nuget.org/packages/PowerKit): `dotnet add package PowerKit`
-> [!IMPORTANT]
-> To reference this package, you must have the latest major version of the .NET SDK installed.
-> This is only required for the build process, and does not affect which version of the runtime you can target.
-
-## Features
+> [!WARNING]
+> To use this package, your project needs to target C# 14 or later.
+> You can ensure this by using the latest .NET SDK and setting `latest` in the project file.
-- Provides utility types:
- - `Cell` β a container for a value that may or may not be set (nullable-agnostic alternative to `Nullable`)
- - `Disposable` β helpers for creating and composing `IDisposable` instances
- - `LockFile` β a file-based lock that prevents concurrent access to a shared resource
- - `TempFile` β a temporary file that is automatically deleted when disposed
- - `TempDirectory` β a temporary directory that is automatically deleted when disposed
-- Provides extension methods for:
- - `AggregateException`, `Exception`
- - `ArrayPool`
- - `Assembly`
- - `IAsyncEnumerable`
- - `BinaryReader`, `BinaryWriter`
- - `bool`
- - `ICollection`
- - `IComparable`
- - `Console`
- - `CultureInfo`
- - `DateTime`, `DateTimeOffset`
- - `decimal`, `double`, `int`, `long`
- - `DirectoryInfo`
- - `Encoding`
- - `IEnumerable`
- - `Environment`
- - `FileInfo`
- - `Guid`
- - `Path`
- - `Process`
- - `RegistryKey`
- - `Stream`
- - `StringBuilder`
- - `string`
- - `TextReader`
- - `TimeSpan`
- - `ZipArchiveEntry`
-- Targets .NET Standard 2.0+, .NET Framework 3.5+, .NET 10+
-- Imposes no run-time dependencies
+> [!IMPORTANT]
+> The library is statically tested for compatibility with .NET Standard 1.0+ and .NET Framework 3.5+, however some of the older targets may require additionally installing [**PolyShim**](https://github.com/Tyrrrz/PolyShim).
From bde9f3f549121ef8ae352e3f9843b75e36dfb723 Mon Sep 17 00:00:00 2001
From: Oleksii Holub <1935960+Tyrrrz@users.noreply.github.com>
Date: Tue, 14 Apr 2026 23:42:13 +0300
Subject: [PATCH 3/3] Update README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index b623533..d042a0a 100644
--- a/README.md
+++ b/README.md
@@ -38,4 +38,4 @@ To learn more about the war and how you can help, [click here](https://tyrrrz.me
> You can ensure this by using the latest .NET SDK and setting `latest` in the project file.
> [!IMPORTANT]
-> The library is statically tested for compatibility with .NET Standard 1.0+ and .NET Framework 3.5+, however some of the older targets may require additionally installing [**PolyShim**](https://github.com/Tyrrrz/PolyShim).
+> The library is statically tested for compatibility with .NET Standard 2.0+ and .NET Framework 3.5+, however some of the older targets may require additionally installing [**PolyShim**](https://github.com/Tyrrrz/PolyShim).