-
Notifications
You must be signed in to change notification settings - Fork 55
Swiftly proxies #155
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Swiftly proxies #155
Changes from all commits
Commits
Show all changes
31 commits
Select commit
Hold shift + click to select a range
e4efbeb
DRAFT: Swiftly proxies
cmcgee1024 3b5c404
Add a swiftly install workflow where the version comes from the .swif…
cmcgee1024 956256f
update design to make auto-installation an error instead
cmcgee1024 375df29
provide a mechanism to find the currently in-use toolchain physical l…
cmcgee1024 ed68a9e
add more details about the selector prefix, and methods to escape
cmcgee1024 c745f4c
Restructure the PR to move the selector syntax from the proxies to a …
cmcgee1024 560236d
Implement proxy mechanism with dynamic toolchain selection
cmcgee1024 ae29e88
Merge branch 'main' of github.com:cmcgee1024/swiftly into proxies-design
cmcgee1024 ce0d27a
Rewrite the select toolchain function with a type for the selection r…
cmcgee1024 66dd459
Update the documentation
cmcgee1024 2df7357
Create a swiftly run command
cmcgee1024 8976bba
Fix empty command case with a single ++++
cmcgee1024 3caab66
Write run command and proxy tests
cmcgee1024 31f4327
Regenerate the cli reference documentation
cmcgee1024 16caf80
Fix design document discrepancies and add install proxy argument tests
cmcgee1024 b2aa165
Update the list command to decorate default, and in-use toolchains
cmcgee1024 7504dd3
Update list tests to check for in use and default labels
cmcgee1024 0e7b661
Make the version argument optional in the install subcommand
cmcgee1024 43d620a
Fix case of empty bin directory when checking for overwrite
cmcgee1024 2e3c59d
Remove +install selector option from swift run in favour of regular `…
cmcgee1024 9dd640c
Import GPG keys on every install to get new signing keys from swift.org
cmcgee1024 5e615ea
Make recommended documentation changes.
cmcgee1024 10a0856
Merge branch 'main' of github.com:cmcgee1024/swiftly into proxies-design
cmcgee1024 6d6050e
Provide a better error message on swiftly install with no version
cmcgee1024 6989796
Update README, and add documentation for the new run subcommand
cmcgee1024 52d081f
Prompt before updating the `.swift-version` file.
cmcgee1024 2f6d701
Merge branch 'main' of github.com:cmcgee1024/swiftly into proxies-design
cmcgee1024 cb0e923
Create proxies on toolchain installation, creating only the necessary…
cmcgee1024 bb36de0
Fix the design document
cmcgee1024 7269128
Merge branch 'main' of github.com:cmcgee1024/swiftly into proxies-design
cmcgee1024 35cb5c5
Merge branch 'main' of github.com:cmcgee1024/swiftly into proxies-design
cmcgee1024 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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 hidden or 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 hidden or 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.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would rather the default is the other way. ie
use
edits global settings and you can change local settings with a--local
flag.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that there are advantage of having this local as the default. It encourages the sharing of the toolchain revision that the team is working with through discovery of this feature of swiftly. Also, this helps to tie into one of the values of using swiftly itself, which is how easily and flexibly you can switch toolchains.
In terms of precedence, git defaults to local over global for its configuration.
I'm curious what you think are the pitfalls of this approach.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I realised as I was writing this, there is previous art that defaults to local. It is more a preference on my behalf and how I'd use swiftly
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pyenv
andrbenv
call this commandlocal
,global
orshell
depending on whether you're setting the Python/Ruby version for a directory, globally on the machine (for your user), or just in the current shell. The shell setting overrides the local setting, which overrides the global setting.