Poetry: CLI proposal: Rename `version` to `bump`

Created on 5 Jun 2018  Â·  10Comments  Â·  Source: python-poetry/poetry

I think poetry version is confusing. On several occasions I've typed this instead of poetry --version. The fact that it gets autocompleted in shells adds to the confusion.

Also, the rest of commands are verbs: run , develop, publish, show, etc. Bump is the verb that describes exactly what the command does—bumps the package version.

All 10 comments

I'd say "bump-version" or something. Otherwise, what gets bumped?

@madig What else is there to bump though?

We don't have develop-package or install-dependencies or show-information ¯_(ツ)_/¯

Well, I don't like "develop" and "install" either because develop what and install where?

Edit: I like the verb-noun logic of Powershell: https://msdn.microsoft.com/en-us/library/ms714428(v=vs.85).aspx:

The verb part of the name identifies the action that the cmdlet performs. The noun part of the name identifies the entity on which the action is performed.

I think poetry version is confusing. On several occasions I've typed this instead of poetry --version. The fact that it gets autocompleted in shells adds to the confusion.

I don't really see the confusion here. I don't think I've ever come across a subcommand that displays the version rather than an option. I'm sure there's something out there, but I'd take issue with it anyway.

Also, the rest of commands are verbs: run , develop, publish, show, etc. Bump is the verb that describes exactly what the command does—bumps the package version.

This is certainly a good argument. But, bump is more of a colloquial term. Increment is the formal term for it and might be a better fit.

@thebigmunch

I don't think I've ever come across a subcommand that displays the version rather than an option.

docker version is one example that immediately comes to mind, but there are more. I definitely have come accross this pattern more than once.

bump is more of a colloquial term

It is, and I too doubted for a moment when I wrote this proposal. It is colloquial, but it is also the clearest and the friendliest term. Git flow uses it, for example, and it looks just fine.

Having git flow tell you to "bump the version number now" and then actually call "bump" command would make a nice flow, imho.

@madig

I like the verb-noun logic of Powershell: https://msdn.microsoft.com/en-us/library/ms714428(v=vs.85).aspx:

I use Powershell myself as my daily driver and find its naming convention pretty nice, too. But Poetry is not a Powershell module; it doesn't, even mustn't, conform to the Powershell naming convension.

Poetry's CLI is a typical UNIX tool CLI. It follow all the same conventions with regard to command names, flags, and params.

Thus bump is better than bump-version (or rather Bump-Version if we want it absolutely Powershell-like 😊).

@moigagoo What else is there to bump though?

FWIW, I came here because I was confused by this too. It wasn't that I thought version would bump something else, it's that I thought it would display a version, since it's a noun not a verb. (Also since I've used docker, go, hugo, nvm, pyenv, and rbenv, and they all work that way.)

I also thought bump would be better than version. But then:

it's a noun not a verb

Unless I'm mistaken, it is actually _also_ verb. And now that I think about it, poetry version doesn't sound too bad - my brain translates it as "create a version (of something)".

So:

  • version is also a verb
  • it tells exactly what we are _versioning_ here - a new version!

You're right, it is a verb! (I should have known better than to think anything in English isn't. Also, for added fun, “bump” is also a noun
)

In my idiolect, to “version” a piece of software means something different from to cut a new release or increment its latest version. It's something like configuring it such that it can exist in different versions. “I versioned flinx today” would mean “I set flinx up so that it can exist in multiple versions”, not “I incremented flinx's version number” or “I released another version of flinx”. YMMV.

The version command's name is likely not changing for a foreseeable future. Closing.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

mozartilize picture mozartilize  Â·  3Comments

etijskens picture etijskens  Â·  3Comments

thejohnfreeman picture thejohnfreeman  Â·  3Comments

Euphorbium picture Euphorbium  Â·  3Comments

nikaro picture nikaro  Â·  3Comments