Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add package readmes (continued) #92228

Merged
merged 25 commits into from
Jan 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
f4d8115
Initialize package readmes
ViktorHofer Sep 18, 2023
b608c28
Microsoft.Extensions.Logging.TraceSource package readme update (#92962)
illialarka Oct 3, 2023
5ab4d08
Fix PACKAGE.md typo (#92989)
illialarka Oct 4, 2023
8a165a5
Update Microsoft.Bcl.Cryptography/src/PACKAGE.md
vcsjones Oct 4, 2023
37120cd
System.Formats.Cbor package's readme (#93021)
illialarka Oct 9, 2023
80426d8
Microsoft.Extensions.FileSystemGlobbing PACKAGE.md (#93123)
EnsignPayton Oct 9, 2023
0db2545
Fix typo in package readmes
ViktorHofer Oct 9, 2023
3b1d2dc
Provide Microsoft.Extentions.FileProviders.Abstractions package readm…
eNeRGy164 Oct 17, 2023
9d0b206
Provide Microsoft.Extentions.FileProviders.Physical package readme (#…
eNeRGy164 Oct 17, 2023
fc48802
Provide DirectoryServices.Protocols package readme (#93518)
eNeRGy164 Oct 17, 2023
2610c53
Provide System.IO.Hashing package readme (#93567)
eNeRGy164 Oct 18, 2023
fc02f61
Provide Microsoft.Extensions.Options.DataAnnotations package readme (…
eNeRGy164 Oct 18, 2023
6959db9
Provide Microsoft.Extensions.Caching.Abstractions package readme (#93…
eNeRGy164 Oct 19, 2023
2987707
Provide System.Memory.Data package readme (#93516)
eNeRGy164 Oct 19, 2023
3f41ed3
Provide System.Security.Cryptography.ProtectedData package readme (#9…
eNeRGy164 Oct 19, 2023
a1caacf
Remove en-us culture code from URIs
ViktorHofer Oct 20, 2023
bd7cb94
Provide Extensions.Hosting.Systemd package readme (#94055)
eNeRGy164 Nov 2, 2023
2219dd2
Merge branch 'main' into PackageReadmesContinued
ViktorHofer Nov 2, 2023
3c2f2a9
Provide M.W.Registry.AccessControl package readme (#94321)
eNeRGy164 Nov 3, 2023
aacb637
Provide Microsoft.Win32.SystemEvents package readme (#94371)
eNeRGy164 Nov 6, 2023
d711400
Provide System.Text.Encodings.Web package readme (#94637)
eNeRGy164 Nov 11, 2023
bfa72d3
Provide ServiceModel.Syndication package readme (#94638)
eNeRGy164 Dec 6, 2023
ae03b55
Provide Threading.AccessControl package readme (#94586)
eNeRGy164 Dec 6, 2023
0845dbd
Provide System.Threading.RateLimiting package readme (#94583)
eNeRGy164 Dec 8, 2023
2db6a95
Merge branch 'main' into PackageReadmesContinued
ViktorHofer Jan 22, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions src/libraries/Microsoft.Bcl.Cryptography/src/PACKAGE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
## About

This library provides some cryptographic types and functionality for .NET Standard and .NET Framework. This library is not necessary nor recommended when targeting versions of .NET that include the relevant support.

## Key Features

* Enables the use of some cryptographic functionality on older .NET platforms.

## How to Use

This package should only be used by platforms where the desired functionality is not built-in.

```C#
using System.Security.Cryptography;

internal static class Program
{
private static void Main()
{
byte[] key = LoadKey();
SP800108HmacCounterKdf kbkdf = new(key, HashAlgorithmName.SHA256);
byte[] derivedKey = kbkdf.DeriveKey("label"u8, "context"u8, derivedKeyLengthInBytes: 32);
}
}
```

## Main Types

The main types provided by this library are:

* `System.Security.Cryptography.SP800108HmacCounterKdf`

## Additional Documentation

* [API documentation](https://learn.microsoft.com/dotnet/api/System.Security.Cryptography)

## Feedback & Contributing

Microsoft.Bcl.Cryptography is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
## About

<!-- A description of the package and where one can find more documentation -->

Provides the abstractions to create and use in-memory and distributed caching in your applications.

This library defines how in-memory and distributed caches should be implemented; it doesn’t contain any cache implementation.
With the abstractions provided in this library, various types of caches can be built and used interchangeably, whether the data is kept in memory, in files, or even across a network.

## Key Features

<!-- The key features of this package -->

* Interfaces for building and using in-memory and distributed caches.

## How to Use

<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->

This package is typically used with an implementation of the caching abstractions, such as `Microsoft.Extensions.Caching.Memory` or `Microsoft.Extensions.Caching.SqlServer`.

## Main Types

<!-- The main types provided in this library -->

The main types provided by this library are:

* `Microsoft.Extensions.Caching.Abstractions.ICacheEntry`
* `Microsoft.Extensions.Caching.Abstractions.IMemoryCache`
* `Microsoft.Extensions.Caching.Abstractions.IDistributedCache`

## Additional Documentation

<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->

* [Conceptual documentation](https://learn.microsoft.com/dotnet/core/extensions/caching)
* API documentation
* [Microsoft.Extensions.Caching.Memory](https://learn.microsoft.com/dotnet/api/microsoft.extensions.caching.memory)
* [Microsoft.Extensions.Caching.Distributed](https://learn.microsoft.com/dotnet/api/microsoft.extensions.caching.distributed)

## Related Packages

<!-- The related packages associated with this package -->

* In-memory caching: [Microsoft.Extensions.Caching.Memory](https://www.nuget.org/packages/Microsoft.Extensions.Caching.Memory/)
* SQL Server caching: [Microsoft.Extensions.Caching.SqlServer](https://www.nuget.org/packages/Microsoft.Extensions.Caching.SqlServer/)
* Redis caching: [Microsoft.Extensions.Caching.StackExchangeRedis](https://www.nuget.org/packages/Microsoft.Extensions.Caching.StackExchangeRedis/)

## Feedback & Contributing

<!-- How to provide feedback on this package and contribute to it -->

Microsoft.Extensions.Caching.Abstractions is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
## About

<!-- A description of the package and where one can find more documentation -->



## Key Features

<!-- The key features of this package -->

*
*
*

## How to Use

<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->

## Main Types

<!-- The main types provided in this library -->

The main types provided by this library are:

* ``
* ``
* ``

## Additional Documentation

<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->

* [Conceptual documentation](https://learn.microsoft.com/dotnet/standard/serialization/**LIBRARYNAME**/overview)
* [API documentation](https://learn.microsoft.com/dotnet/api/**LIBRARYNAME**)

## Related Packages

<!-- The related packages associated with this package -->

## Feedback & Contributing

<!-- How to provide feedback on this package and contribute to it -->

Microsoft.Extensions.DependencyInjection.Specification.Tests is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
## About

<!-- A description of the package and where one can find more documentation -->

Serves as the foundation for creating file providers in .NET, offering core abstractions to develop custom file providers capable of fetching files from various sources.

## Key Features

<!-- The key features of this package -->

* Core abstractions for creating and managing file providers.
* Flexibility to develop custom file providers for fetching files from distinct sources.

## How to Use

<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->

This package is typically used with an implementation of the file provider abstractions, such as `Microsoft.Extensions.FileProviders.Composite` or `Microsoft.Extensions.FileProviders.Physical`.

## Main Types

<!-- The main types provided in this library -->

The main types provided by this library are:

* `Microsoft.Extensions.FileProviders.IFileProvider`
* `Microsoft.Extensions.FileProviders.IDirectoryContents`
* `Microsoft.Extensions.FileProviders.IFileInfo`
* `Microsoft.Extensions.FileProviders.NullFileProvider`

## Additional Documentation

<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->

* [Conceptual documentation](https://learn.microsoft.com/aspnet/core/fundamentals/file-providers)
* [Detect changes with change tokens](https://learn.microsoft.com/aspnet/core/fundamentals/change-tokens)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders)

## Related Packages

<!-- The related packages associated with this package -->

* File provider for physical files: [Microsoft.Extensions.FileProviders.Physical](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Physical/)
* File provider for files in embedded resources: [Microsoft.Extensions.FileProviders.Embedded](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Embedded/)
* Composite file and directory providers: [Microsoft.Extensions.FileProviders.Composite](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Composite/)

## Feedback & Contributing

<!-- How to provide feedback on this package and contribute to it -->

Microsoft.Extensions.FileProviders.Abstractions is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
## About

<!-- A description of the package and where one can find more documentation -->



## Key Features

<!-- The key features of this package -->

*
*
*

## How to Use

<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->

## Main Types

<!-- The main types provided in this library -->

The main types provided by this library are:

* ``
* ``
* ``

## Additional Documentation

<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->

* [Conceptual documentation](https://learn.microsoft.com/dotnet/standard/serialization/**LIBRARYNAME**/overview)
* [API documentation](https://learn.microsoft.com/dotnet/api/**LIBRARYNAME**)

## Related Packages

<!-- The related packages associated with this package -->

## Feedback & Contributing

<!-- How to provide feedback on this package and contribute to it -->

Microsoft.Extensions.FileProviders.Composite is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
## About

<!-- A description of the package and where one can find more documentation -->

Provides an implementation of a physical file provider, facilitating file access and monitoring on the disk. The primary type, [`PhysicalFileProvider`](https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders.physicalfileprovider), enables the lookup of files on disk and can watch for changes either via `FileSystemWatcher` or polling mechanisms.


## Key Features

<!-- The key features of this package -->

* Easy access and monitoring of files on the disk.
* Ability to watch for file changes either by using `FileSystemWatcher` or through polling.

## How to Use

<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->

This library can be used to look up files on disk and monitor file changes effectively.
Below is an example of how to use the `PhysicalFileProvider` to access files on disk and monitor changes:

```c#
using Microsoft.Extensions.FileProviders;
using Microsoft.Extensions.FileProviders.Physical;

using var provider = new PhysicalFileProvider(AppContext.BaseDirectory);

Environment.SetEnvironmentVariable("DOTNET_USE_POLLING_FILE_WATCHER", "1");

var contents = provider.GetDirectoryContents(string.Empty);
foreach (PhysicalFileInfo fileInfo in contents)
{
Console.WriteLine(fileInfo.PhysicalPath);
}

var changeToken = provider.Watch("*.txt");
changeToken.RegisterChangeCallback(_ => Console.WriteLine("Text file changed"), null);

Console.ReadLine();
```

## Main Types

<!-- The main types provided in this library -->

The main types provided by this library are:

* `Microsoft.Extensions.FileProviders.PhysicalFileProvider`
* `Microsoft.Extensions.FileProviders.PhysicalDirectoryInfo`
* `Microsoft.Extensions.FileProviders.PhysicalFileInfo`

## Additional Documentation

<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->

* [Conceptual documentation](https://learn.microsoft.com/aspnet/core/fundamentals/file-providers#physical-file-provider)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders.physical)

## Related Packages

<!-- The related packages associated with this package -->

* Abstractions of files and directories: [Microsoft.Extensions.FileProviders.Abstractions](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Abstractions/)
* File system globbing to find files matching a specified pattern: [Microsoft.Extensions.FileSystemGlobbing](https://www.nuget.org/packages/Microsoft.Extensions.FileSystemGlobbing/)

## Feedback & Contributing

<!-- How to provide feedback on this package and contribute to it -->

Microsoft.Extensions.FileProviders.Physical is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
## About

<!-- A description of the package and where one can find more documentation -->

Provides support for matching file system names/paths using [glob patterns](https://en.wikipedia.org/wiki/Glob_(programming)).

## Key Features

<!-- The key features of this package -->

* Contains the `Matcher` type, which can be used to match files in the file system based on user-defined patterns.

## How to Use

<!-- A compelling example on how to use this package with code, as well as any specific guidelines for when to use the package -->

Get all matching files:

```c#
using Microsoft.Extensions.FileSystemGlobbing;

Matcher matcher = new();
matcher.AddIncludePatterns(new[] { "*.txt", "*.asciidoc", "*.md" });

string searchDirectory = "../starting-folder/";

IEnumerable<string> matchingFiles = matcher.GetResultsInFullPath(searchDirectory);

// Use matchingFiles if there are any found.
// The files in this collection are fully qualified file system paths.
```

## Main Types

<!-- The main types provided in this library -->

The main types provided by this library are:

* `Microsoft.Extensions.FileSystemGlobbing.Matcher`

## Additional Documentation

<!-- Links to further documentation. Remove conceptual documentation if not available for the library. -->

* [Conceptual documentation](https://learn.microsoft.com/dotnet/core/extensions/file-globbing)
* [API documentation](https://learn.microsoft.com/dotnet/api/microsoft.extensions.filesystemglobbing)

## Feedback & Contributing

<!-- How to provide feedback on this package and contribute to it -->

Microsoft.Extensions.FileSystemGlobbing is released as open source under the [MIT license](https://licenses.nuget.org/MIT). Bug reports and contributions are welcome at [the GitHub repository](https://github.com/dotnet/runtime).
Loading