Skip to content
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

Add developer version number handling to fpm.toml #1101

Open
nedtaylor opened this issue Mar 7, 2025 · 0 comments
Open

Add developer version number handling to fpm.toml #1101

nedtaylor opened this issue Mar 7, 2025 · 0 comments
Labels
specification Issue regarding fpm manifest and model

Comments

@nedtaylor
Copy link

Motivation

Allow letters and special characters in the project version number in fpm.toml for improved package development version tracking.

Currently, fpm.toml only allows version numbers in the format X, X.Y, and X.Y.Z, where X, Y, and Z are numbers. When working on a development/feature implementation version of a code, it is useful to suffix the version number with something like 1.0.0-dev0 to help track and test.

Specification

Suggested type of allowed version format:

version = "1.0.0-dev0"

If it needs to be restrictive in what it expects to find, then accepting only optional suffixes such as the following seems like they'd be best:

X.Y.Z-dev[0-9]*
X.Y.Z-pre[0-9]*
X.Y.Z-rc[0-9]*

Prior Art

This is often accepted by package managers such as pip.

Additional Information

Formatting of version numbers like this:

https://github.com/callowayproject/bump-my-version

Existing output when trying this:

<ERROR> *cmd_run* Package error: Invalid character in version number
  | 1.0.0-dev0
  |-----^^

or:

<ERROR> *cmd_run* Package error: Too many subversions found
  | 1.0.0.1
  |-------^
STOP 1
@nedtaylor nedtaylor added the specification Issue regarding fpm manifest and model label Mar 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
specification Issue regarding fpm manifest and model
Projects
None yet
Development

No branches or pull requests

1 participant