Documentation Tooling Workgroup Meeting - 23 February 2026
Attending
- Joe Heck
- Vera Mitchell
- Sven Schmidt
- Dave Verwer
- David Ronnqvist
Topics
- 6.3 beta now available - SEO eval
Discussion
Sven: onboard the new version, couple of weeks we should be able to wrangle
Joe: SEO test targets: swift-openapi-runtime, swift-configuration. A holistic watch of more of the site would be better, but as a stop-gap evaluating keywords and adjusting these sites to see how/if anything changes is our plan at the moment.
Sven: I wonder if there's anything we can do to test the mechanism.
Dave: One of the things we need to do is make sure those URLs are in the search index. Verify that when they change, ensure they're in the index.
Joe: So we need to tune the requests not just for URL base setsup, but specific pages, to make sure they're in the index.
Sven: Is there an alternate path to testing this - shifting it worse instead of better and letting it recover. Any path here to see into this black box?
Dave: What we want ideally - I think - is a set of stable URLs, to see how those rank for relevant key words, deploy a change that exposes the keywords more readably, and then check to see how they sit after google re-indices. We need to be on a page by page basis for this.
Joe keywords I'm tracking: gist:b3cc0e8e687d90b2773f31c0f76e9a14 ยท GitHub
Sven: thing I want to prepare for - nothing happening. And what we do from there.
Dave: And what this really needs is a significant commitment from Apple for evaluating this on a longer term sort of layout.
Dave: deployment of this tool will require us to roll out a 6.3 beta across the whole site.
Vera: Xcode 26.4 beta 1 has the 6.3 in it.
Action Items
- Joe to mark and document steps as this rolls out for changes, including current results, stability, and updated results as they flow - albeit point checks and not a holistic eval.
A brief follow up on the SEO evaluation work that we talked about during the meeting:
/cc @daveverwer
The two projects I've created sets of keywords to explore are swift-configuration and swift-openapi-runtime. The keyword sets align to at least one ideal page:
| Keyword |
Ideal Page |
Verified URL |
swift configuration docs |
Documentation root โ landing page for the package's DocC docs |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration |
vapor configuration package docs |
Documentation root |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration |
swift server configuration docs |
Documentation root |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration |
hummingbird configuration docs |
Documentation root |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration |
swift package configuration docs |
Documentation root |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration |
Swift Configuration ConfigReader provider hierarchy |
ConfigReader symbol reference โ covers init(providers:), provider stack, scoping |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/configreader |
EnvironmentVariablesProvider Swift automatic key conversion |
EnvironmentVariablesProvider symbol reference โ documents key-component-to-env-var uppercasing |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/environmentvariablesprovider |
ReloadingFileProvider ServiceGroup hot reloading |
ReloadingFileProvider symbol reference โ covers Service conformance, file change monitoring |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/reloadingfileprovider |
ConfigSnapshot consistent values mTLS certificate |
ConfigSnapshot symbol reference โ documents point-in-time immutable reads |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/configsnapshot |
AccessLogger FileAccessLogger secret redaction |
"Handling secrets correctly" guide โ covers secret redaction, FileAccessLogger, and AccessLogger |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/handling-secrets-correctly |
swift configuration get fetch watch patterns |
"Choosing the access pattern" guide โ explains get, fetch, and watch access patterns |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/choosing-access-patterns |
DirectoryFilesProvider run secrets docker |
DirectoryFilesProvider symbol reference โ documents reading Docker/Kubernetes /run/secrets |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/directoryfilesprovider |
ConfigReader scoped to namespace http timeout |
ConfigReader symbol reference โ covers scoped(to:) for namespacing (e.g. http.timeout) |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/configreader |
YAMLSnapshot JSONSnapshot FileProvider Swift |
FileProvider symbol reference โ generic provider used with JSONSnapshot and YAMLSnapshot |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/fileprovider |
CONFIG_ACCESS_LOG_FILE environment variable debugging |
FileAccessLogger symbol reference โ documents CONFIG_ACCESS_LOG_FILE auto-detection; also see Troubleshooting guide |
https://swiftpackageindex.com/apple/swift-configuration/1.1.0/documentation/configuration/fileaccesslogger |
and for swift-openapi-runtime:
| Keyword |
Ideal Page |
Verified URL |
swift openapi server middleware |
ServerMiddleware protocol reference โ the central type for server-side middleware |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/servermiddleware |
Swift OpenAPI Runtime |
Documentation root or package index page |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime |
ClientTransport protocol Swift |
ClientTransport protocol reference โ the abstraction over HTTP client libraries |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/clienttransport |
ServerTransport protocol Swift |
ServerTransport protocol reference โ the abstraction for registering HTTP handlers |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/servertransport |
ClientMiddleware Swift OpenAPI |
ClientMiddleware protocol reference โ intercepts outgoing client requests |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/clientmiddleware |
ServerMiddleware Swift OpenAPI |
ServerMiddleware protocol reference โ intercepts incoming server requests |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/servermiddleware |
MultipartBoundaryGenerator Swift |
MultipartBoundaryGenerator protocol reference โ customizes multipart boundary strings |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/multipartboundarygenerator |
ISO8601DateTranscoder |
ISO8601DateTranscoder symbol reference โ the default DateTranscoder implementation; also see DateTranscoder |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/iso8601datetranscoder |
OpenAPIValueContainer |
OpenAPIValueContainer symbol reference โ untyped JSON value container for dynamic schemas |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/openapivaluecontainer |
HTTPBody Swift OpenAPI |
HTTPBody symbol reference โ streaming body type for requests and responses |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/httpbody |
UndocumentedPayload error Swift |
UndocumentedPayload symbol reference โ represents responses to undocumented HTTP status codes |
https://swiftpackageindex.com/apple/swift-openapi-runtime/1.10.1/documentation/openapiruntime/undocumentedpayload |
I've been collecting data roughly weekly over the past month, with a few earlier snapshots from before the holidays as well, and the current search ranking positions are reasonably stable. I've snagged the stand-along HTML report into a file at baseline.html ยท GitHub, which you can download and view locally if you're so inclined. The script I cobbled is tracking Google and DuckDuckGo rankings.
The table from it showing the stability (as an image):
2 Likes