El Miércoles 11 Marzo 2009, Gerry Reno escribió:
Manuel, Additionally, from a Python Distutils perspective, Distutils should not be enforcing one distro's policy. There are RPM-based distro's that DO NOT follow fedora's packaging policy.
Well then, give me one packaging policy that is discordant or incompatible with Fedora's packaging policy. I'm sure you can show us that.
Besides, we're not enforcing a distro policy here over all platforms. My patches merely reformat the existing information to make it lexicographically compatible with RPM package managers (which are the SAME across all bdist_rpm distro targets), and that's it. You still get to specify your release numbers if you want to, and the version numbers are intelligently determined based on heuristics but in the case of stable releases, they are just as they used to be before.
The software should only be concerned with providing for the use of both the 'version' and 'release' strings in all distribution targets. It should not concern itself with HOW those fields are formatted.
If distutils did only that and we were to reject the distutils patches I wrote, then I would simply be technically unable to build Plone for Fedora or RHEL. In fact, with the current non-patched distutils, nobody could build eggs using bdist_rpm, because many packages present in the cheese shop rely heavily on beta packages and dependencies that specify python-style version numbers.
The mission of the patches is to provide a reasonable way to build eggs and other python source drops ensuring a maximum of compatibility with RPM package manager upgrade paths. The patches accomplish this.
And the next hurdle -- something I still need to write into setuptools, but I have already scripted in my workbench -- is the ability to auto-detect egg dependencies and take those dependencies into account for the purpose of proper dependency management of auto-built eggs.