Add 7 new .NET 11 skills to dotnet11 plugin#610
Conversation
Skill Coverage Report
Uncovered:
|
There was a problem hiding this comment.
Pull request overview
This PR expands the dotnet11 plugin by adding seven new SKILL.md documents that describe newly introduced/updated .NET 11 APIs across ASP.NET Core, runtime/interop, networking, numerics/memory, cryptography, and compression.
Changes:
- Added seven new .NET 11 skill documents under
plugins/dotnet11/skills/. - Documented new API surfaces (e.g., Zstandard compression, Happy Eyeballs connect, BFloat16 pipelines, cross-platform PKCS, Blazor component APIs) with tables and usage examples.
- Included code snippets intended to demonstrate practical usage patterns for the new APIs.
Show a summary per file
| File | Description |
|---|---|
| plugins/dotnet11/skills/aspnetcore-blazor-components-net11/SKILL.md | Documents new Blazor component/navigation/media/TempData APIs with examples. |
| plugins/dotnet11/skills/aspnetcore-middleware-services-net11/SKILL.md | Documents new ASP.NET Core middleware/services APIs (data protection spans, zstd response compression, passkey AAGUID). |
| plugins/dotnet11/skills/dotnet-networking-net11/SKILL.md | Documents new socket connect algorithm + IPEndPoint UTF-8 + zstd HTTP decompression. |
| plugins/dotnet11/skills/dotnet-numerics-memory-net11/SKILL.md | Documents BinaryPrimitives BFloat16 APIs and new BigInteger/Complex features. |
| plugins/dotnet11/skills/dotnet-runtime-core-net11/SKILL.md | Documents new runtime/interop APIs (Rune support, Base64, BFloat16 helpers, interop layout, signals). |
| plugins/dotnet11/skills/dotnet-security-cryptography-net11/SKILL.md | Documents new cryptography APIs (verify methods, PKCS/CMS features) with tables and snippets. |
| plugins/dotnet11/skills/system-io-compression-net11/SKILL.md | Documents Zstandard compression APIs and ZipArchiveEntry improvements with examples. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comments suppressed due to low confidence (3)
plugins/dotnet11/skills/system-io-compression-net11/SKILL.md:184
- This example uses
File.OpenRead/File.Createbut doesn’t includeusing System.IO;(or fully qualifiedFile). Add the missing import/qualification so the snippet is self-contained and compilable.
using System.IO.Compression;
// Configure advanced compression options
var options = new ZstandardCompressionOptions
{
Quality = 6,
WindowLog = 22,
EnableLongDistanceMatching = true,
AppendChecksum = true
};
await using var src = File.OpenRead("large-dataset.bin");
await using var dst = File.Create("large-dataset.zst");
await using var zst = new ZstandardStream(dst, options, leaveOpen: false);
plugins/dotnet11/skills/system-io-compression-net11/SKILL.md:203
- This ZipArchiveEntry example uses
ZipFile,FileAccess,StreamReader, andCancellationTokenbut only importsSystem.IO.Compression. Add the requiredusingdirectives (e.g.,System,System.IO,System.Threading) or fully qualify the types so the sample compiles as shown.
using System.IO.Compression;
// Inspect and read zip entries with new APIs
using var archive = ZipFile.OpenRead("archive.zip");
foreach (var entry in archive.Entries)
{
// Query the compression method
Console.WriteLine($"{entry.FullName}: {entry.CompressionMethod}");
// Open with explicit access mode
using var stream = entry.Open(FileAccess.Read);
using var reader = new StreamReader(stream);
string content = await reader.ReadToEndAsync();
plugins/dotnet11/skills/dotnet-security-cryptography-net11/SKILL.md:67
- In the HMAC Verify/VerifyAsync table, the
VerifyAsync(byte[] key, Stream, byte[], CancellationToken)row omits theStreamparameter name, unlike the earlier tables. Consider using a consistent signature style (e.g.,Stream source) to improve readability.
| `Verify(byte[] key, byte[] source, byte[] hash)` | Byte array verify |
| `Verify(ReadOnlySpan<byte>, ReadOnlySpan<byte>, ReadOnlySpan<byte>)` | Span verify |
| `VerifyAsync(byte[] key, Stream, byte[], CancellationToken)` | Async stream |
| `VerifyAsync(ReadOnlyMemory<byte>, Stream, ReadOnlyMemory<byte>, CancellationToken)` | Async memory |
- Files reviewed: 7/7 changed files
- Comments generated: 7
| byte[] sourceData = File.ReadAllBytes("data.bin"); | ||
|
|
||
| // Compress with the low-level encoder | ||
| var encoder = new ZstandardEncoder(quality: 3); |
| using System.IO.Compression; | ||
|
|
||
| byte[] sourceData = File.ReadAllBytes("data.bin"); | ||
|
|
| Socket.ConnectAsync(SocketType.Stream, ProtocolType.Tcp, | ||
| args, ConnectAlgorithm.Parallel); | ||
| ``` |
| @page "/checkout" | ||
| @inject ITempData TempData | ||
|
|
||
| @code { | ||
| private void SaveAndNavigate() | ||
| { | ||
| TempData["OrderId"] = "ORD-12345"; | ||
| TempData["Message"] = "Order placed successfully!"; | ||
| Nav.NavigateTo("/confirmation"); | ||
| } |
| | `PosixSignal.SIGKILL` | `-11` | Force-terminate a process | | ||
|
|
||
| > SIGKILL cannot be caught or ignored. This value is for sending signals | ||
| > to other processes. | ||
|
|
||
| ```csharp | ||
| PosixSignal signal = PosixSignal.SIGKILL; | ||
| Console.WriteLine($"Signal value: {(int)signal}"); // -11 |
| using System.Buffers.Binary; | ||
| using System.Numerics; | ||
|
|
||
| byte[] fileData = File.ReadAllBytes("weights.bin"); | ||
| int count = fileData.Length / 2; |
| | `VerifyHmac(HashAlgorithmName, byte[] key, byte[] source, byte[] hash)` | Byte array overload | | ||
| | `VerifyHmac(HashAlgorithmName, ReadOnlySpan<byte>, ReadOnlySpan<byte>, ReadOnlySpan<byte>)` | Span overload | | ||
| | `VerifyHmac(HashAlgorithmName, byte[] key, Stream source, byte[] hash)` | Stream overload | | ||
| | `VerifyHmacAsync(HashAlgorithmName, byte[] key, Stream, byte[], CancellationToken)` | Async stream | |
|
✅ Automated diff scan completed for This is an automated static analysis of the PR diff.
|
|
✅ Automated diff scan completed for This is an automated static analysis of the PR diff.
|
|
✅ Automated diff scan completed for This is an automated static analysis of the PR diff.
|
|
This PR has been automatically marked as stale because it has no activity for 30 days. It will be closed if no further activity occurs within another 7 days of this comment. If it is closed, you may reopen it anytime when you're ready again. Note 🔒 Integrity filter blocked 26 itemsThe following items were blocked because they don't meet the GitHub integrity level.
To allow these resources, lower tools:
github:
min-integrity: approved # merged | approved | unapproved | none
|
Summary
Building on top of #535 (which introduced the
dotnet11plugin and the initialsystem-text-json-net11skill), this PR adds 7 additional .NET 11 skills covering new/updated APIs across the framework:Attribution
These skills were contributed by @ManishJayaswal.