From 0c2f452c55e167b107663f4537c74c34402b5220 Mon Sep 17 00:00:00 2001 From: Kuba Mracek Date: Thu, 29 May 2025 13:30:36 -0700 Subject: [PATCH] [Docs] Hide pages without content, tweak experimental notices --- .../{IntegrateWithBazel.md => IntegrateWithBazel.md-wip} | 0 .../{IntegrateWithCMake.md => IntegrateWithCMake.md-wip} | 0 .../{IntegrateWithMake.md => IntegrateWithMake.md-wip} | 0 ...{IntegrateWithSwiftPM.md => IntegrateWithSwiftPM.md-wip} | 0 .../{IntegrateWithXcode.md => IntegrateWithXcode.md-wip} | 0 Sources/EmbeddedSwift/Documentation.docc/Documentation.md | 4 ++-- .../GettingStarted/InstallEmbeddedSwift.md | 4 ++-- .../Documentation.docc/GettingStarted/Introduction.md | 2 +- .../Documentation.docc/GettingStarted/WaysToGetStarted.md | 4 ++-- .../Documentation.docc/GuidedExamples/PicoGuide.md | 2 +- .../{IntegrateWithESP.md => IntegrateWithESP.md-wip} | 0 .../Documentation.docc/SDKSupport/IntegrateWithPico.md | 2 +- .../Documentation.docc/SDKSupport/IntegrateWithZephyr.md | 6 +++--- 13 files changed, 12 insertions(+), 12 deletions(-) rename Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/{IntegrateWithBazel.md => IntegrateWithBazel.md-wip} (100%) rename Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/{IntegrateWithCMake.md => IntegrateWithCMake.md-wip} (100%) rename Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/{IntegrateWithMake.md => IntegrateWithMake.md-wip} (100%) rename Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/{IntegrateWithSwiftPM.md => IntegrateWithSwiftPM.md-wip} (100%) rename Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/{IntegrateWithXcode.md => IntegrateWithXcode.md-wip} (100%) rename Sources/EmbeddedSwift/Documentation.docc/SDKSupport/{IntegrateWithESP.md => IntegrateWithESP.md-wip} (100%) diff --git a/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithBazel.md b/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithBazel.md-wip similarity index 100% rename from Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithBazel.md rename to Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithBazel.md-wip diff --git a/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithCMake.md b/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithCMake.md-wip similarity index 100% rename from Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithCMake.md rename to Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithCMake.md-wip diff --git a/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithMake.md b/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithMake.md-wip similarity index 100% rename from Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithMake.md rename to Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithMake.md-wip diff --git a/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithSwiftPM.md b/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithSwiftPM.md-wip similarity index 100% rename from Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithSwiftPM.md rename to Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithSwiftPM.md-wip diff --git a/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithXcode.md b/Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithXcode.md-wip similarity index 100% rename from Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithXcode.md rename to Sources/EmbeddedSwift/Documentation.docc/BuildSystemSupport/IntegrateWithXcode.md-wip diff --git a/Sources/EmbeddedSwift/Documentation.docc/Documentation.md b/Sources/EmbeddedSwift/Documentation.docc/Documentation.md index 769964a..2439abb 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/Documentation.md +++ b/Sources/EmbeddedSwift/Documentation.docc/Documentation.md @@ -1,9 +1,9 @@ -# ``EmbeddedSwift`` +# Embedded Swift Embedded Swift is a compilation and language mode that enables development of baremetal, embedded and standalone software in Swift @Metadata { - @DisplayName("Embedded Swift") + @TechnologyRoot } ## Topics diff --git a/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/InstallEmbeddedSwift.md b/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/InstallEmbeddedSwift.md index 18aaee2..efb2627 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/InstallEmbeddedSwift.md +++ b/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/InstallEmbeddedSwift.md @@ -4,9 +4,9 @@ Get the tools needed to use Embedded Swift ## Overview -> Warning: Embedded Swift is experimental. Use the latest downloadable 'Trunk Development' snapshot from swift.org to use Embedded Swift. Public releases of Swift do not yet support Embedded Swift. +The best way to install Swift for embedded development is using [`swiftly`](http://github.com/swiftlang/swiftly), the official Swift toolchain installer and manager. Since Embedded Swift is still experimental and not yet supported in public Swift releases, you'll need to use a development toolchain. -The best way to install Swift is using [`swiftly`](http://github.com/swiftlang/swiftly), the official Swift toolchain installer and manager. For instructions on how to install `swiftly`, check out the [Getting Started](https://www.swift.org/swiftly/documentation/swiftly/getting-started) guide. +For instructions on how to install `swiftly`, check out the [Getting Started](https://www.swift.org/swiftly/documentation/swiftly/getting-started) guide. > Note: Swiftly installs the latest release toolchain during `swiftly init`, if you only plan on using Embedded Swift, you can avoid downloading this toolchain by using the `swiftly init --skip-install` option. diff --git a/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/Introduction.md b/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/Introduction.md index 15d6921..4344ec6 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/Introduction.md +++ b/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/Introduction.md @@ -6,7 +6,7 @@ Write Swift code for microcontrollers, embedded systems, and bare-metal applicat Embedded Swift is an experimental and rapidly developing feature of the Swift language that enables development of baremetal, embedded and standalone software. It's a subset of the Swift language designed for producing small, efficient binaries with minimal dependencies, making it suitable for resource-constrained environments. -> Warning: Embedded Swift is experimental. Use the latest downloadable 'Trunk Development' snapshot from swift.org to use Embedded Swift. Public releases of Swift do not yet support Embedded Swift. +> Note: Embedded Swift is experimental. Public releases of Swift do not support Embedded Swift, yet. See for details. ## How does Embedded Swift differ from regular Swift? diff --git a/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/WaysToGetStarted.md b/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/WaysToGetStarted.md index 34fed8d..22d189b 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/WaysToGetStarted.md +++ b/Sources/EmbeddedSwift/Documentation.docc/GettingStarted/WaysToGetStarted.md @@ -4,8 +4,6 @@ Possible directions to explore to start using Embedded Swift ## Introduction -> Warning: Embedded Swift is experimental. Use the latest downloadable 'Trunk Development' snapshot from swift.org to use Embedded Swift. Public releases of Swift do not yet support Embedded Swift. - Embedded Swift is a way to write code for embedded systems using the Swift programming language. Depending on the use case, there are different ways of using it, different ways of integrating with existing ecosystems, and different setups for different hardware devices. This guide will help you explore various paths to get started with embedded development using Swift. Before diving into Embedded Swift development, you should have: @@ -14,6 +12,8 @@ Before diving into Embedded Swift development, you should have: - A Swift toolchain installed on your development host - A target embedded platform in mind (e.g. a Raspberry Pi Pico) - this can also be a simulated hardware platform (e.g. in QEMU), or even a full desktop OS environment in case you're not interested in controlling low-level hardware or custom electronic peripherals + +> Note: Embedded Swift is experimental. Public releases of Swift do not support Embedded Swift, yet. See for details. ## Guided Tutorials diff --git a/Sources/EmbeddedSwift/Documentation.docc/GuidedExamples/PicoGuide.md b/Sources/EmbeddedSwift/Documentation.docc/GuidedExamples/PicoGuide.md index 002c8a1..386dd85 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/GuidedExamples/PicoGuide.md +++ b/Sources/EmbeddedSwift/Documentation.docc/GuidedExamples/PicoGuide.md @@ -6,7 +6,7 @@ In this guide we'll be targeting a Raspberry Pi Pico as the embedded device that ## Installing Swift -> Warning: Embedded Swift is experimental. Use the latest downloadable 'Trunk Development' snapshot from swift.org to use Embedded Swift. Public releases of Swift do not yet support Embedded Swift. +> Note: Embedded Swift is experimental. Public releases of Swift do not support Embedded Swift, yet. See for details. To install Swift for embedded development, follow the instructions in , which guides you through using `swiftly` to install the latest development snapshot with Embedded Swift support. diff --git a/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithESP.md b/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithESP.md-wip similarity index 100% rename from Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithESP.md rename to Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithESP.md-wip diff --git a/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithPico.md b/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithPico.md index bec9dbc..2087de6 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithPico.md +++ b/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithPico.md @@ -2,7 +2,7 @@ Setting up a project that can seamlessly use C APIs from the Pico SDK. -> Warning: Embedded Swift is experimental. Use the latest downloadable 'Trunk Development' snapshot from swift.org to use Embedded Swift. Public releases of Swift do not yet support Embedded Swift. +> Note: Embedded Swift is experimental. Public releases of Swift do not support Embedded Swift, yet. See for details. Development for [Raspberry Pi Pico and Pico W](https://www.raspberrypi.com/products/raspberry-pi-pico/) normally uses the [Pico SDK](https://github.com/raspberrypi/pico-sdk) and the vendor provides several [sample projects in the pico-examples repository](https://github.com/raspberrypi/pico-examples). The SDK and sample project setup is described in: diff --git a/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithZephyr.md b/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithZephyr.md index 517284d..59a55be 100644 --- a/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithZephyr.md +++ b/Sources/EmbeddedSwift/Documentation.docc/SDKSupport/IntegrateWithZephyr.md @@ -1,10 +1,10 @@ # Integrating with Zephyr -**⚠️ Embedded Swift is experimental. This document might be out of date with latest development.** +Integrating Swift with Zephyr RTOS for embedded systems development -For an introduction and motivation into Embedded Swift, please see "[A Vision for Embedded Swift](https://github.com/swiftlang/swift-evolution/blob/main/visions/embedded-swift.md)", a Swift Evolution document highlighting the main goals and approaches. +The following document outlines how to setup a Swift to Zephyr project for an emulated ARM Cortex M0, explaining a few key concepts along the way. For a complete working example on real hardware, however, refer to the [nrfx-blink-sdk](https://github.com/apple/swift-embedded-examples/tree/main/nrfx-blink-sdk) project that is compatible with nRF or other boards. -The following document outlines how to setup a Swift to Zephyr project for an emulated ARM Cortex M0, explaining a few key concepts along the way. For a complete working example on real hardware, however, refer to the [nrfx-blink-sdk](../../../../nrfx-blink-sdk/) project that is compatible with nRF or other boards. +> Note: Embedded Swift is experimental. Public releases of Swift do not support Embedded Swift, yet. See for details. ## Zephyr Target Architecture Compatibility