Plain Swift

Buy
Download

End user license agreement | How to uninstall | Release notes


Frequently Asked Questions


How do I use 3rd party libraries/frameworks?


Select the Modules | Install Swift Modules... menu command and install a 3rd party Swift module. It supports modules created with Swift Package Manager or any other build tool. The only requirement is that they must be compiled as dynamic libraries with .swiftmodule, .swiftdoc, .lib and .dll files. You can then import the installed module in source code into any Plain Swift project:
import MyModule

What services are started by Plain Swift when I create or open a project?


Plain Swift runs Swift Language Server (sourcekit-lsp.exe). It's part of the official Swift compiler from swift.org. It provides code suggestions.

Why does my CPU usage noticeably increase after I create or open a project?


This is caused by a bug in Apple's libdispatch library that affects Swift Language Server (sourcekit-lsp.exe). The bug was introduced in Swift v5.9 and not yet fixed in Swift v5.10. Hopefully the bug will be fixed in the next release of the Swift compiler. If increased CPU usage is a concern for you, as a workaround, if you don't mind using an older version of the Swift compiler, you can install version 5.8.1.

What version of Swift compiler is installed by the Plain Swift installer?


Swift 5.10.

Why does Plain Swift install Microsoft Visual Studio?


Plain Swift does not have a built-in Swift compiler. Instead it relies on the official Swift compiler from swift.org. Some Microsoft Visual Studio components are required for the Swift compiler to work. Plain Swift installs only the required Visual Studio components: Build tools and Windows SDK.

Plain Swift installs Windows 11 SDK. Can I use it under Windows 10?


Yes. The Windows App SDK provides a unified set of APIs and tools that are decoupled from the OS. These APIs and tools can be used in a consistent way by any desktop app on Windows 11 and downlevel to Windows 10, version 1809.

Does Plain Swift use the Swift Package Manager?


No. Plain Swift is itself a build system alternative to Swift Package Manager. It uses the Swift Compiler (swiftc.exe) for compilation. Though you can see the Package.swift file in your project folder, it is considered a temporary helper file, required only for Language Server (sourcekit-lsp.exe) to work. Language Server provides code suggestions.

Can I modify the Package.swift file in my project?


No. Plain Swift does not use the Swift Package Manager, and your modifications won't work. See previous question.

Why doesn't Plain Swift use the Swift Package Manager?


There are several reasons: