That is a PEP-440 compliant version, but we haven't developed or tested using those with pbr.
I think this is something moderately important to fix - but we need to design out the interactions with this with version calculation - e.g. 'none, we accept it but any change discards it', and we need to consider this with the context of vendor versions too (which + might be used for). Sorry!
Your version number is perhaps not what you think it is though:
>>> from packaging import version
>>> version.parse('1.3.0+test2.0.dev479').local
'test2.0.dev479'
That is a PEP-440 compliant version, but we haven't developed or tested using those with pbr.
I think this is something moderately important to fix - but we need to design out the interactions with this with version calculation - e.g. 'none, we accept it but any change discards it', and we need to consider this with the context of vendor versions too (which + might be used for). Sorry!
Your version number is perhaps not what you think it is though:
>>> from packaging import version parse(' 1.3.0+test2. 0.dev479' ).local
>>> version.
'test2.0.dev479'
I think you want 1.3.0.dev479+ test2.0