forked from swiftlang/swiftly
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a design proposal for the new swiftly proxy system Provide a mechanism to find the currently in-use toolchain physical location Clarify the boundaries of the swiftly toolchain abstraction and elaborate on how to work around them Change the nature of the swiftly symlinks so that they point to the swiftly executable at install time. These do not change when new toolchains are used. Toolchain selection happens each time when the proxies are run. The proxies are created for a well-known set of toolchain binaries that are constant for a wide variety of toolchain versions and platforms. Add support for .swift-version files for toolchain selection. Update the use command so that it can point out which toolchain is in use based on context, such as swift version files that are located in the current working directory or above. The fallback selection comes from the global default configuration's 'inUse' setting. When querying for what's in use the global default is shown with the "(default)" tag. If the in-use toolchain is selected by a swift-version file the path to that file is displayed. Provide a print location flag to the use subcommand that can print the file path of the toolchain that is in use in the current context. When using a new toolchain, depending on whether a swift version is selecting the current one, update the swift version file with the selected toolchain version. If no swift version file can be located, attempt to create a new one at the top of the git worktree. If there is no git worktree, then fallback to updating the global default in the configuration. Provide a global default flag for the use subcommand so that only the global default in-use toolchain is considered and not any of the swift version files. Provide a run command that allows arbitrary commands to be run in the context of the selected toolchain, and also a one-off selection mechanism with the special syntax. Update the list command to decorate default, and in-use toolchains Make the version argument optional in the install subcommand, which causes it to use the toolchain selection through the .swift-version files to decide what toolchain to install. Guard automatic creation of .swift-version file from `swiftly use` around a prompt overridable using an `--assume-yes`. Fix all of the swift.org urls so that they use www.swift.org to avoid redirection Fix symlink target selection for swiftly when it is system managed Create proxies on toolchain installation, creating only the necessary ones, giving a message about the shell path refresh.
- Loading branch information
1 parent
5d8ac14
commit 0ce6cc5
Showing
25 changed files
with
1,077 additions
and
488 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.