﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking	notify_on_close	platform	project
2111	"SetupTools version number ""normalisation"" breaks bundle_builder"	Tristan Croll	Greg Couch	"PEP 440 does some (annoying, IMO) second-guessing of version numbering (see https://www.python.org/dev/peps/pep-0440/#development-release-separators):

evelopment releases allow a ., -, or a _ separator as well as omitting the separator all together. The normal form of this is with the . separator. This allows versions such as 1.2-dev2 or 1.2dev2 which normalize to 1.2.dev2

Bundle Builder doesn't know about this, so (for example) Clipper builds with version name ""0.9.4-dev1"" or ""0.9.4dev1"" fail mysteriously at the very last lap with:

{{{
Traceback (most recent call last):
  File ""/opt/UCSF/ChimeraX-daily/lib/python3.7/site-packages/chimerax/core/commands/devel.py"", line 151, in _run
    unbound_method(bb, *args, **kw)
  File ""/opt/UCSF/ChimeraX-daily/lib/python3.7/site-packages/chimerax/bundle_builder/bundle_builder.py"", line 87, in make_install
    self.make_wheel(test=test, debug=debug)
  File ""/opt/UCSF/ChimeraX-daily/lib/python3.7/site-packages/chimerax/bundle_builder/bundle_builder.py"", line 82, in make_wheel
    raise RuntimeError(""Building wheel failed"")
RuntimeError: Building wheel failed
}}}

... because it's expecting the wheel path to use the *original* version string.

To make life easier I think I'll stick to ""numerical-only"" version numbering for Clipper, but I'd still like to use ""dev"" versioning for ISOLDE. Easy enough to work around the above now I know what the problem is.
"	defect	closed	minor		Tool Shed		fixed						all	ChimeraX
