[swift-evolution] [swift-build-dev] [Review] SE-0085: Package Manager Command Names

Honza Dvorsky czechboy0 at gmail.com
Tue May 10 12:07:36 CDT 2016

I also use the word SwiftPM (this exact spelling) when referring to the
project (sometimes swiftpm, but only among friends :) ). However I think
we're talking about two things: 1. commonly used name for the tool (I use
SwiftPM), 2. short alias to make triggering it on the command line easier
(I really like 'spm').

Whatever alias we use, it's an alias - the canonical command is will be
'swift package' either way, which is discoverable and clear. The alias
should serve only one purpose: making it easy to type and remember. And I'm
optimistic that 'spm' can catch on very quickly.

When doing a quick Google search, there's no tool called 'spm' that could
get confused with SwiftPM. Also, if anyone is confused what 'spm' does,
they can just run it, which will show the help section, exactly like npm,
nvm, gem, pod etc.

(One more problem I have with the alias being 'swiftpm': when you try to
use autocompletion e.g. in zsh, if you type 'sw' and hit tab, you'll get
'swift' and related tools, but never 'swiftpm' on the first tab hit, so
you'll really have type it out fully every time, because it doesn't have a
unique prefix. 'spm' is short enough to type in under a second, so I don't
autocompletion is needed here.)


On Tue, May 10, 2016 at 6:57 PM Jean-Daniel Dupas via swift-evolution <
swift-evolution at swift.org> wrote:

> Le 10 mai 2016 à 18:38, Rick Ballard via swift-evolution <
> swift-evolution at swift.org> a écrit :
> On May 10, 2016, at 8:49 AM, Matthew Johnson via swift-build-dev <
> swift-build-dev at swift.org> wrote:
> On May 10, 2016, at 2:19 AM, Dan Appel via swift-evolution <
> swift-evolution at swift.org> wrote:
> +1 to `swift package` being a little too verbose. However, I like the
> alternative `swift pm`/`swiftpm` (as noted in the proposal) even less. I
> have already been referring to the package manager as SPM, so IMO that name
> does not lose out on any clarity while also allowing it to be terse enough
> for every day use.
> I would not be against having both `spm` and `swift package` as Honza
> suggested.
> + 1 to the proposal in general and also to adding the `spm` alias.
> Question for those of you who are advocating for a "spm" alias: Do you
> have a strong argument / preference for "spm" vs "swiftpm"? Personally I
> have been abbreviating the project as "swiftpm" and not "spm" when I talk
> about it, and have been trying to push that as the preferred abbreviation.
> "spm" is a few less keystrokes, but is a much more generic, less googleable
> name; out of context, it's impossible to know what it refers to. Once the
> project gets enough mindshare, like "npm" has, that might be less of an
> issue, but I still personally prefer the more descriptive "swiftpm".
> Thoughts?
> I prefer swiftpm because I have enough three letters tools on my machine
> that I never know what they do without having to open the man page. Having
> an explicit name will reduce the chance of conflict with other tools and
> greatly simplify its discovery.
> And for those who think this is a too long name, creating a shorter alias
> in any shell is relatively easy.
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160510/8af905b6/attachment.html>

More information about the swift-evolution mailing list