Frequently Asked Questions
I cannot install Plain Swift using the Install button on the site.
You can download the installer and run it. In this case, uncheck the option Download and install Swift compiler during installation. Once installed, Plain Swift will update to the latest version and install the Swift compiler if necessary.
How do I manage my subscription, update payment details, or download invoices?
Access your PayPro Global customer portal.
How do I use 3rd party libraries/frameworks?
Select the Modules | Install/Remove 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 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 and syntax highlighting.
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 even in Swift v6.0.2. Hopefully the bug will be fixed in the next release of the Swift compiler.
What version of Swift compiler is installed by the Plain Swift installer?
Swift 6.0.2.
Why does Plain Swift launch the Visual Studio Installer when installing the Swift compiler?
The Visual Studio Installer is used to install the Microsoft Build Tools required by the Swift compiler. Visual Studio is not installed.
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.
Why doesn't Plain Swift use the Swift Package Manager?
There are several reasons:
- The development of Plain Swift began at a time when the Swift Package Manager was buggy and limited on Windows platform, if worked at all.
- Swift Package Manager adds unnecessary complexity, while Plain Swift is designed with the KISS principle in mind.
- Swift Package Manager relies heavily on online git repositories. These are moving targets. Just because they are compatible with your project today (and if they are available at all), doesn't mean they will be the same tomorrow. This is absolutely unacceptable if you want a reliable build system with predictable build results.
- Using Swift Compiler (swiftc.exe) as opposed to Package Manager allows more fine grained tuning for the resulting executable, e.g. creating a Windows GUI app (and not a console app). GUI apps are planned for the future. You can help make it happen.