Add readmes for @dotnet/area-extensions-filesystem (#78954)
authorDavid CantĂș <dacantu@microsoft.com>
Fri, 23 Dec 2022 12:18:04 +0000 (06:18 -0600)
committerGitHub <noreply@github.com>
Fri, 23 Dec 2022 12:18:04 +0000 (13:18 +0100)
* Add readmes for @dotnet/area-extensions-filesystem

* Apply suggestions from code review

Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com>
src/libraries/Microsoft.Extensions.FileProviders.Abstractions/README.md [new file with mode: 0644]
src/libraries/Microsoft.Extensions.FileProviders.Composite/README.md [new file with mode: 0644]
src/libraries/Microsoft.Extensions.FileProviders.Physical/README.md [new file with mode: 0644]
src/libraries/Microsoft.Extensions.FileSystemGlobbing/README.md [new file with mode: 0644]

diff --git a/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/README.md b/src/libraries/Microsoft.Extensions.FileProviders.Abstractions/README.md
new file mode 100644 (file)
index 0000000..477771f
--- /dev/null
@@ -0,0 +1,14 @@
+# Microsoft.Extensions.FileProviders.Abstractions
+This assembly provides the core abstractions for file providers. A file provider can be implemented to fetch files from distinct sources, .NET provides implementations for physical and composed file providers. ASP.NET Core provides an implementation for embedded file providers.
+
+## Contribution Bar
+- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)
+- [x] [We consider PRs that target this library for new source code analyzers](../../libraries/README.md#secondary-bars)
+
+## Deployment
+The Microsoft.Extensions.FileProviders.Abstractions assembly is shipped as a [NuGet package](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Abstractions).
+
+## See also
+ - [`Microsoft.Extensions.FileProviders.Composite`](../Microsoft.Extensions.FileProviders.Composite#readme)
+ - [`Microsoft.Extensions.FileProviders.Physical`](../Microsoft.Extensions.FileProviders.Physical#readme)
+ - `Microsoft.Extensions.FileProviders.Embedded` [NuGet package](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Embedded/)
\ No newline at end of file
diff --git a/src/libraries/Microsoft.Extensions.FileProviders.Composite/README.md b/src/libraries/Microsoft.Extensions.FileProviders.Composite/README.md
new file mode 100644 (file)
index 0000000..c0ae0b4
--- /dev/null
@@ -0,0 +1,13 @@
+# Microsoft.Extensions.FileProviders.Composite
+This assembly provides an implementation of a file provider that is composed by a collection of file providers.
+
+The primary type is [`CompositeFileProvider`](https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders.compositefileprovider).
+
+Documentation can be found at https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders.composite.
+
+## Contribution Bar
+- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)
+- [x] [We consider PRs that target this library for new source code analyzers](../../libraries/README.md#secondary-bars)
+
+## Deployment
+The Microsoft.Extensions.FileProviders.Composite assembly is shipped as a [NuGet package](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Composite).
\ No newline at end of file
diff --git a/src/libraries/Microsoft.Extensions.FileProviders.Physical/README.md b/src/libraries/Microsoft.Extensions.FileProviders.Physical/README.md
new file mode 100644 (file)
index 0000000..c31ade4
--- /dev/null
@@ -0,0 +1,13 @@
+# Microsoft.Extensions.FileProviders.Physical
+This assembly provides an implementation of a physical file provider that looks-up files from disk. It can watch for changes on disk either by using a `FileSystemWatcher` or by using polling.
+
+The primary type is [`PhysicalFileProvider`](https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders.physicalfileprovider).
+
+Documentation can be found at https://learn.microsoft.com/dotnet/api/microsoft.extensions.fileproviders.physical.
+
+## Contribution Bar
+- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)
+- [x] [We consider PRs that target this library for new source code analyzers](../../libraries/README.md#secondary-bars)
+
+## Deployment
+The Microsoft.Extensions.FileProviders.Physical assembly is shipped as a [NuGet package](https://www.nuget.org/packages/Microsoft.Extensions.FileProviders.Physical).
\ No newline at end of file
diff --git a/src/libraries/Microsoft.Extensions.FileSystemGlobbing/README.md b/src/libraries/Microsoft.Extensions.FileSystemGlobbing/README.md
new file mode 100644 (file)
index 0000000..b8d82dc
--- /dev/null
@@ -0,0 +1,11 @@
+# Microsoft.Extensions.FileSystemGlobbing
+This assembly provides support for matching file system names/paths using [glob patterns](https://en.wikipedia.org/wiki/Glob_(programming)).
+
+The primary type is [`Matcher`](https://learn.microsoft.com/dotnet/api/microsoft.extensions.filesystemglobbing.matcher), you can `AddInclude(string)` and/or `AddExclude(string)` glob patterns and `Execute(DirectoryInfoBase)` the matcher in order to get a `PatternMatchingResult` of the specified directory.
+
+## Contribution Bar
+- [x] [We consider new features, new APIs and performance changes](../../libraries/README.md#primary-bar)
+- [x] [We consider PRs that target this library for new source code analyzers](../../libraries/README.md#secondary-bars)
+
+## Deployment
+The Microsoft.Extensions.FileSystemGlobbing assembly is shipped as a [NuGet package](https://www.nuget.org/packages/Microsoft.Extensions.FileSystemGlobbing).
\ No newline at end of file