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
Versions according to the Debian Policy Manual #246
Comments
indeed - debian version numbers are not python version numbers at all, it would be possible to support debian style version numbers in some way, |
also note that putting in debian style versions into packages that use normal python versions is pretty much a breaking change to the package |
Agreed.
Where would I have to hook into setuptools-scm to write my own version parsing algorithm / mapping?
That's right. I mainly see a use case where the main target are debian systems - and the package isn't even additionally deployed as python package. |
if you map the debian versions to valid python versions in your pretend versions, i would advise strongly against teaching setuptools_scm debian versions |
also note that if you deploy python packages as debian packages, those python packages may still use python tooling around package version numbers, having it be valid python versions means you dont have to fix them up to support debian numbers |
Regardless of how |
I've submitted that as #261. |
indeed, i will take a look at the next larger timeframe |
@timofurrer now that the initial details are solved i believe its a good point in time to look into ensuring debian style versions are mapped to correct python versions |
You've mentioned in a previous comment:
Thus, where do you want:
to be? In setuptools_scm ? |
my current idea this should have 2 parts a) the part in setuptools_scm that enables distros to push their own tagging style that missmatches the language then the distro will push such a lib into the machinery of setuptools_scm via environmental configuration and the result will have 2-fold advantages as the distro versions are honoured exactly and the python meta-data matches and is valid for python in the end the tag would be a debian version and the generated metadata for python would be a python version |
its unlikely i can put time into the details within the next 1-2 years for this one |
Not sure if this was clear already, but the I'm not sure if Python versioning allows something similar, but if it does not, this means that these |
Again, the tilde is invalid for python versions and has to be mapped to a local version tag as per the python standards for version numbers |
I realize that: I'm just emphasizing that if you map it, you will likely end up signficantly changing the meaning of the version number, so it is probably not good to do this without explicit instructions. |
i never was suggesting that i or setuptools_scm maps it, it should be entirely the job of something distro specific that can actually know what its doing |
Ah, seems I had not read this thread properly (especially #246 (comment)). That indeed sounds like an acceptable plan, just let some distro-specific tool sort this out (which can then error out on impossible-to-map versions if needed). Apologies for the noise... |
I'm more than happy to provide feedback and integration with setuptools_scm, but I'm not going to work on distro specific tools myself |
I totally agree that this might be the topic for another separate tool and let setuptools_scm do what it currently does. Feel free to close this issue for now I think once there are efforts made towards an integration into setuptools_scm - a new issue will come up any ways :) |
Closing as not planned, distro input never came |
I'm currently using setuptools-scm with pybuild to build debian packages.
The problem I'm facing right now is that we sometimes have tildes (~) in the version number, which doesn't seem to be supported.
When enabling the debug logs I get:
Along with the following traceback:
What's the correct way to workaround this? Would it be possible to support versions according to the Debian Versioning Policies?
See: Debian Policy Manual for the versioning policies.
The text was updated successfully, but these errors were encountered: