[chirp_devel] Invalid version: 'py3dev' breaks build.

Dan Smith
Wed Jan 25 19:05:15 PST 2023


> Since our (Mageia) most recent python3 updates sometime this month 
> chirp-next builds fail with:
> 
> packaging.version.InvalidVersion: Invalid version: 'py3dev'
> 
> The above exception was the direct cause of the following exception:
> 
> Traceback (most recent call last):
>   File "/usr/lib/rpm/pythondistdeps.py", line 626, in <module>
>     raise RuntimeError("Error: pythondistdeps.py generator encountered 
> an unhandled exception and was terminated.") from exc
> RuntimeError: Error: pythondistdeps.py generator encountered an 
> unhandled exception and was terminated.
> error: Dependency tokens must begin with alpha-numeric, '_' or '/': *** 
> PYTHONDISTDEPS_GENERATORS_FAILED ***
> Provides: application() application(chirp.desktop) chirp = 
> 1:0.4.0-0.20230101.1.mga
> Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 
> rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 
> rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> Requires: python(abi) = 3.10 python3.10dist(future) 
> python3.10dist(pyserial) python3.10dist(requests) python3.10dist(six) 
> python3.10dist(yattag)
> 
> /--------------------------------------
> 

Since you're seeing py3dev I assume that means you're building directly from git? Why?

> For now I have used:
> 
>  sed -i 's/py3dev/%{version}/' chirp/__init__.py
> 
> .. in our spec. to fix the above issue for our package.
> 
> Since you do not make releases it's difficult to decide on any sort of 
> versioning that makes sense for our packages.

I do releases, every day that there was a change. The versions are stamped into the tarballs, which you should be using to build your packages.

> I use 0.4.0 as version and add the date from git into the release, which 
> keeps our packages in order but means little outside of the distro. e.g. 
> chirp-0.4.0-0.20230125.2
> 
> I really wish you actually made releases.

I really wish you wouldn't randomly choose version numbers that don't match our automated releases, wasting your users time and ours when we try to figure out what actual code someone is running when they report a bug. Also, we actually did have an 0.4.0, which was in 2014, so putting that in your version string is not helping anyone.

96% of the users run bundled builds, and a shockingly high percentage of those are running the latest version (as in from yesterday) when they report bugs. So by "I wish you did releases" I assume you mean "I wish you released features and fixes to the users less often to make my life easier", which I'm not interested in doing[1].

--Dan

[1]: https://en.wikipedia.org/wiki/Release_early,_release_often




More information about the chirp_devel mailing list