Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Docs soundness check fails in the vicinity of platform-specific API

Offen
#166 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
swift
Bereich
ci-cd, documentation

Rechercherichtung

Beginne mit dem Linux-DocC-Bundle-Build und dem im Issue beschriebenen Soundness-Check, mit Fokus auf Verweise auf Symbole, die unter Linux mit @available(unavailable) gekennzeichnet sind. Vergleiche, wie der Check plattformspezifische API über die im genannten Package und den genannten Target-Varianten hinweg behandeln könnte, und berücksichtige die im Issue aufgeführten möglichen Ansätze. Als erledigt gilt die Aufgabe, wenn der Check für gültige plattformspezifische Dokumentation nicht mehr fälschlicherweise fehlschlägt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

The docs soundness check runs on Linux currently. Swift Testing has some Apple-specific API (and some Windows-specific API) and our DocC bundle contains some references to symbols that are marked @available(unavailable) on Linux. As a result, when we build our DocC bundle on Linux, those symbols are called out as missing. When we run the soundness check, it fails outright.

We need some general way to solve this problem for packages/targets/etc. that have platform-specific API variation. I'm not sure what a good solution looks like here. I don't know if that means making a change in swift-docc to introduce something like #if, or if it means having the soundness check run for multiple targets and combine results, or set a Swift compiler condition during the build that we can use to "opt out" some code from the check, or…

This problem isn't specific to Swift Testing: swift-system and swift-subprocess are also impacted, for example.

Vorherrschende Sprache
Swift
Sterne
115
Forks
57
Ø Merge
2 T. 13 Std.
Gemergte PRs (30 T.)
4

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus swiftlang/github-workflows

Alle Issues in swiftlang/github-workflows

Ähnliche Issues

Weitere Issues zu Swift

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.