-
Notifications
You must be signed in to change notification settings - Fork 55
Description
Swiftly can use proxy executables for tools in the toolchain instead of symlinks. The proxies can decide their targets at invocation time in this way instead of at swiftly use
time, for greater configurability. For example, the proxies can respond to special parameters among the typical tool arguments like this:
swift build +main-snapshot # build with the latest available snapshot
This feature would not be possible with symlinks since they cannot respond to the arguments.
Also, proxies can make use of the .swift-version
files that are popular in some Swift repositories to align the team on a single language and toolchain version. If no version is specified using the special command-line parameter then the proxies can search for a version file in the current working directory, or an ancestor, to automatically install and use the correct toolchain for the project on every tool invocation, such as after a git pull
.