mirror of
https://github.com/apple/swift-nio.git
synced 2026-05-20 20:30:36 +00:00
Clarify state and relationship of NIOFileSystem and _NIOFileSystem in API docs (#3504)
### Motivation: `NIOFileSystem` currently exposes the same API as `_NIOFileSystem`, which is not API stable. `NIOFileSystem` was created in error, and its lack of underscore incorrectly implies API stability. Users who are currently importing `NIOFileSystem` should ideally move to `_NIOFileSystem`. However this isn't made clear in the docs: 1. The README talks about the non-underscored `NIOFileSystem`. 2. There are no hosted API docs `NIOFileSystem`. 3. The hosted API docs for `NIO` point to the docs for `NIOFileSystem` -- results in 404. ### Modifications: - Update the README to refer to `_NIOFileSystem`. - Update the hosted API docs for `NIO` to point to docs for `_NIOFileSystem`. - Add hosted API docs for `NIOFileSystem` with a statement explaining the situation and pointing people to the docs for `_NIOFileSystem`. ### Result: Clearer documentation on the state and relationship of the `NIOFileSystem` and `_NIOFileSystem` modules.
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
version: 1
|
version: 1
|
||||||
builder:
|
builder:
|
||||||
configs:
|
configs:
|
||||||
- documentation_targets: [NIO, NIOConcurrencyHelpers, NIOCore, NIOEmbedded, NIOFoundationCompat, NIOHTTP1, NIOPosix, NIOTLS, NIOWebSocket, NIOTestUtils, _NIOFileSystem]
|
- documentation_targets: [NIO, NIOConcurrencyHelpers, NIOCore, NIOEmbedded, NIOFoundationCompat, NIOHTTP1, NIOPosix, NIOTLS, NIOWebSocket, NIOTestUtils, _NIOFileSystem, NIOFileSystem]
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ Within this repository we have a number of products that provide different funct
|
|||||||
- `NIOHTTP1`. This provides a low-level HTTP/1.1 protocol implementation.
|
- `NIOHTTP1`. This provides a low-level HTTP/1.1 protocol implementation.
|
||||||
- `NIOWebSocket`. This provides a low-level WebSocket protocol implementation.
|
- `NIOWebSocket`. This provides a low-level WebSocket protocol implementation.
|
||||||
- `NIOTestUtils`. This provides a number of helpers for testing projects that use SwiftNIO.
|
- `NIOTestUtils`. This provides a number of helpers for testing projects that use SwiftNIO.
|
||||||
- `NIOFileSystem`. This provides `async` APIs for interacting with the file system.
|
- `_NIOFileSystem`. This provides `async` APIs for interacting with the file system.
|
||||||
|
|
||||||
### Protocol Implementations
|
### Protocol Implementations
|
||||||
|
|
||||||
@@ -103,7 +103,7 @@ SwiftNIO aims to support all of the platforms where Swift is supported. Currentl
|
|||||||
* Ubuntu 18.04+
|
* Ubuntu 18.04+
|
||||||
* macOS 10.9+, iOS 7+; (macOS 10.14+, iOS 12+, tvOS 12+ or watchOS 6+ with [swift-nio-transport-services][repo-nio-transport-services])
|
* macOS 10.9+, iOS 7+; (macOS 10.14+, iOS 12+, tvOS 12+ or watchOS 6+ with [swift-nio-transport-services][repo-nio-transport-services])
|
||||||
|
|
||||||
SwiftNIO has experimental support on OpenBSD for all SwiftNIO libraries _except_ for NIOFileSystem, which is not yet supported. You can use all other SwiftNIO libraries on OpenBSD by adding them as dependencies in `Package.swift`.
|
SwiftNIO has experimental support on OpenBSD for all SwiftNIO libraries _except_ for `_NIOFileSystem`, which is not yet supported. You can use all other SwiftNIO libraries on OpenBSD by adding them as dependencies in `Package.swift`.
|
||||||
|
|
||||||
### Compatibility
|
### Compatibility
|
||||||
|
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ SwiftNIO has a number of products that provide different functionality. This pac
|
|||||||
- [NIOHTTP1][module-http1]. This provides a low-level HTTP/1.1 protocol implementation.
|
- [NIOHTTP1][module-http1]. This provides a low-level HTTP/1.1 protocol implementation.
|
||||||
- [NIOWebSocket][module-websocket]. This provides a low-level WebSocket protocol implementation.
|
- [NIOWebSocket][module-websocket]. This provides a low-level WebSocket protocol implementation.
|
||||||
- [NIOTestUtils][module-test-utilities]. This provides a number of helpers for testing projects that use SwiftNIO.
|
- [NIOTestUtils][module-test-utilities]. This provides a number of helpers for testing projects that use SwiftNIO.
|
||||||
- [NIOFileSystem][module-filesystem]. This provides `async` APIs for interacting with the file system.
|
- [_NIOFileSystem][module-filesystem]. This provides `async` APIs for interacting with the file system.
|
||||||
|
|
||||||
### Conceptual Overview
|
### Conceptual Overview
|
||||||
|
|
||||||
@@ -168,7 +168,7 @@ The core SwiftNIO repository will contain a few extremely important protocol imp
|
|||||||
[module-tls]: ./NIOTLS
|
[module-tls]: ./NIOTLS
|
||||||
[module-websocket]: ./NIOWebSocket
|
[module-websocket]: ./NIOWebSocket
|
||||||
[module-test-utilities]: ./NIOTestUtils
|
[module-test-utilities]: ./NIOTestUtils
|
||||||
[module-filesystem]: ./NIOFileSystem
|
[module-filesystem]: ./_NIOFileSystem
|
||||||
|
|
||||||
[ch]: ./NIOCore/ChannelHandler
|
[ch]: ./NIOCore/ChannelHandler
|
||||||
[c]: ./NIOCore/Channel
|
[c]: ./NIOCore/Channel
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
# ``NIOFileSystem``
|
||||||
|
|
||||||
|
> Warning: Do not use this module. Instead use [`_NIOFileSystem`][_fs-docs].
|
||||||
|
>
|
||||||
|
> `NIOFileSystem` currently exposes the same API as `_NIOFileSystem`, which is not API stable. `NIOFileSystem`
|
||||||
|
> was created in error, and its lack of underscore incorrectly implies API stability. Users who are currently importing
|
||||||
|
> `NIOFileSystem` should move to `_NIOFileSystem`.
|
||||||
|
>
|
||||||
|
> Refer to [`_NIOFilesystem`][_fs-docs] for documentation on the API of this module.
|
||||||
|
>
|
||||||
|
> There is ongoing work in NIO to provide a filesystem library with a stable API.
|
||||||
|
|
||||||
|
[_fs-docs]: ./_NIOFileSystem
|
||||||
Reference in New Issue
Block a user