You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -78,32 +78,41 @@ but don't reflect all the possible future content we might create.
78
78
79
79
- API guidelines - moderated/reviewed by the Language Steering Group.
80
80
- Server guides - moderated/reviewed by the SSWG.
81
-
- Swift Migration guides - moderated by lang/platforms.
82
-
- Tools Guides - moderated/reviewed by platform & ecosystem.
83
-
- WASM - moderated/reviewed by platform steering group.
81
+
- Ecosystem Tools Guides - moderated/reviewed by ecosystem steering group.
82
+
- Platform Guides - moderated/reviewed by platform steering group.
84
83
85
84
An example `tree` view of such a repository:
86
85
87
86
```
88
-
├── APIGuidelines
89
-
│ └── APIGuideliness.docc
90
-
│ ├── Documentation.md
91
-
│ ├── ...
92
87
├── CODEOWNERS
88
+
├── common
89
+
│ ├── footer.html
90
+
│ ├── header.html
91
+
│ ├── README
92
+
│ └── theme-settings.json
93
+
├── ecosystem
94
+
│ ├── EcosystemTools.docc
95
+
│ │ ├── Documentation.md
96
+
│ │ ├── getting-started-with-vscode-swift.md
97
+
│ │ ├── zero-to-swift-emacs.md
98
+
│ │ └── zero-to-swift-nvim.md
99
+
├── platform
100
+
│ └── PlatformGuides.docc
101
+
│ └── Documentation.md
93
102
├── README.md
94
-
├── Server
103
+
├── server
95
104
│ └── ServerGuides.docc
96
-
│ └── Documentation.md
97
-
├── SwiftLangGuides
98
-
│ └── SwiftLangGuides.docc
99
-
│ └── Documentation.md
100
-
│ ├── ...
101
-
├── Tools
102
-
│ └── ToolsAndEditors.docc
103
-
│ ├── Documentation.md
104
-
│ ├── ...
105
-
└── WASM
106
-
└── WASM.docc
105
+
│ ├── building.md
106
+
│ ├── Documentation.md
107
+
│ └── testing.md
108
+
├── swift
109
+
│ └── APIGuidelines.docc
110
+
│ ├── DocComment.md
111
+
│ ├── Documentation.md
112
+
│ ├── include-words-to-avoid-ambiguity.md
113
+
│ ├── name-according-to-roles.md
114
+
│ ├── omit-needless-words.md
115
+
│└── weak-type-information.md
107
116
```
108
117
109
118
The directories for each catalog residing at the root can host another DocC catalog (a directory ending with .docc), to host the markdown content in a typical DocC fashion.
@@ -119,11 +128,10 @@ From a mechanical perspective, reviewers are listed in a `CODEOWNERS` file, whic
119
128
For example, the structure of the catalogs above might line up to:
If a group dissolves, any catalogs can be associated with another group, or revert to control by the Swift Core Team.
@@ -166,119 +174,93 @@ Like the Swift Embedded examples repository, it benefits from close proximity be
166
174
### Migrating Jekyll to DocC content in the Swift Docs Repository
167
175
168
176
Based on the existing content in Swift.org, the general goal is to migrate the majority of what is general documentation content into a DocC format, grouped into the collections below.
169
-
A few exceptions are detailed after the file names, to accommodate very out-of-date content, or content that's already replicated in other locations.
170
-
171
-
This proposal is primarily meant to provide a guide to the structure for content as we want to see it,
172
-
and isn't meant to provide a full and discrete audit of all existing content.
173
-
Nevertheless, a few examples stand out and have been discussed previously within the community as needing updates, or removal and relevant links redirected to more up-to-date and recent content.
174
-
A full audit of the documentation for recency and relevancy is worthwhile, but beyond the scope of this proposal.
175
-
176
-
The notes of this migration are intended to be guides, and any migration process isn't expected to be done immediately and in one sweep.
177
-
The migration can, and should, occur incrementally, building into the docs repository as supported by the community including content reviewers and their availability.
178
177
179
178
All of the listed markdown files would remain in `/documentation`, with their front matter (Jekyll metadata) updated to redirect the URL requests to the new locations as content is migrated and accepted into the new docs repository.
180
179
Markdown files prefixed with `_` are typically only included in other files and not referenced by URL, and can be removed after they are migrated.
- Doug Gregor has indicated a desire to reset and migrate this content into the Swift repository, leveraging code validation that is beyond Swift's Documentation tooling today, and to keep it closely aligned with the relvant code that provides the interop functionality.
(currently redirects to https://docs.swift.org/swiftpm/documentation/packagemanagerdocs/)
259
-
181
+
## Migration Plan
182
+
183
+
This proposal is primarily meant to provide a guide to the structure for content as we want to see it.
184
+
In the process of establishing this new repository and structure of DocC catalogs, the following initial files from swift.org will be updated (if needed) and migrated, to establish the initial structure.
185
+
186
+
Files to migrate under the `documentation` directory on Swift.org:
187
+
188
+
|`source`| status & destination |
189
+
| - | - |
190
+
|[`api-design-guidelines/index.md`](https://www.swift.org/documentation/api-design-guidelines/)| translate to docc, break into multiple articles in `api-guidelines/APIGuidelines.docc`|
191
+
|[`server/index.md`](https://www.swift.org/documentation/server/index.html)| deprecate & redirect to https://www.swift.org/get-started/cloud-services/|
192
+
|[`server/guides/index.md`](https://www.swift.org/documentation/server/guides/index.html)| translate, migrate to top level of `server-guides/ServerGuides.docc`|
193
+
|[`server/guides/building.md`](https://www.swift.org/documentation/server/guides/building.html)| refine/update to provide examples of building, add section for debug vs. release and swift tooling, link to SwiftPM docs on building, add section about building in Linux using containers, add section on building with devContainers, add detail on static linux SDK, break out some content to a CI related article |
194
+
|[`server/guides/testing.md`](https://www.swift.org/documentation/server/guides/testing.html)| quite dated - update to swift 6, swift-testing, break out some content into a "CI" focused article - focus on unit testing, leave room for functional, integration testing as sep articles |
195
+
|[`articles/static-linux-getting-started.md`](https://www.swift.org/documentation/articles/static-linux-getting-started.html)| migrate as is - consider renaming or breaking into multiple, smaller focused articles, review any changes with previous authors (Alastair, Melissa) |
196
+
|[`concurrency/index.md`](https://www.swift.org/documentation/concurrency/index.html)| redirect to content at https://www.swift.org/migration/documentation/||swift-6-concurrency-migration-guide/enabledataracesafety |
197
+
|[`articles/zero-to-swift-nvim.md`](https://www.swift.org/documentation/articles/zero-to-swift-nvim.html)| migrate into `ecosystem/EcosystemTools.docc`|
198
+
|[`articles/zero-to-swift-emacs.md`](https://www.swift.org/documentation/articles/zero-to-swift-emacs.html)| migrate into `ecosystem/EcosystemTools.docc`|
199
+
|[`articles/getting-started-with-vscode-swift.md`](https://www.swift.org/documentation/articles/getting-started-with-vscode-swift.html)| migrate into `ecosystem/EcosystemTools.docc`|
200
+
|[`articles/wasm-getting-started.md`](https://www.swift.org/documentation/articles/wasm-getting-started.html)| translate and migrate into `ecosystem/WASM.docc`|
201
+
202
+
The Swift.org [documentation page](https://www.swift.org/documentation/) will be updated to point to these new DocC catalogs as the content migrates, to provide a way to navigate to the relevant content from swift.org.
203
+
The navigability between DocC collections and integration of those collections into the broader design constraints for swift.org are being dealt with separately, as part of the Swift.org redesign efforts, and beyond the immediate scope of this proposal.
204
+
205
+
As mentioned above, the metadata for the earlier pages will remain on Swift.org for some time, with the stubs of those articles being updated to provide HTML redirects for legacy URLs to the new location once the updated content is published using the DocC catalog.
206
+
207
+
### Swift.org documentation remaining and untouched:
208
+
209
+
A full migration needs to be coordinated with relevant workgroups, and proceed incrementally as the availability of the community and relevant workgroups allow.
210
+
The migration process itself will be tracked by pull requests and within an issue or issues housed at https://github.com/swiftlang/swift-org-website/, and potentially moved to a new docs repository.
211
+
212
+
- documentation/cxx-interop/index.md (Doug Gregor indicated a desire to reset and migrate this content into the Swift repository in the future)
0 commit comments