Re: More dh_python questions
Hi,
I have a growing suspicion that dh_python does not do the
right thing for private pure Python modules in the presence of
XS-Python-version
This is how dh_python behaves:
*** PRIVATE PURE MODULE:
If there is a .py file, and it is in a private dir. only one
version is supported, even though the private module can be
recompiled for any new version.
**** Add dir to $private_dirs_list{"$dir"} (for recompilation)
**** add to the deps var if no -V option is given.
***** If versions_field is unset (so precedence goes to extensions),
****** if $min_version and min_version=max_version (1 version supported)
$versions_field = $min_version
****** else $versions_field = current ?????
**** or set $verdeps{X.Y} if only version X.Y is supported (-V)
***** Each entry is in the verdeps hash gets added to depends
**** No pyversions_found.
****** Set Versions to $versions_field
So, if I have a package with a private pure python module, and
I have set XS-Python-Version to suggest that a ubset of python
versions are supported, and I have not used -V (since more than one
python version is to be supported).
What happens?
Case A:
I have only one version in XS-Python-Version (say, 2.4)
,----
| Package: python-foo
| XB-Python-Version: X.Y
| Provides: pythonX.Y-foo
`----
But the package does not depend on pythonX.Y, which I think
it should (since we have stated that only X.Y is supported).
Case B:
There is no lower bound, but there is an upper bound
,----
| Package: python-foo
| XB-Python-Version: 2.3
| Provides: python2.3-foo
`----
Hmm. I suppose this is OK, since if we do not support the
current version, we should not be uploading the package.
Case C:
I have a range in the XS-Python-Version
Case C1: The current version is not supported (say, I support 2.4
and 2.5)
,----
| Package: python-foo
| XB-Python-Version: 2.3
| Provides: python2.3-foo
`----
This is wrong.
Case C2: The current version is supported
,----
| Package: python-foo
| XB-Python-Version: 2.3
| Provides: python2.3-foo
`----
This is OK as well.
So, I posit that dh_python, as currently coded, does not
handle case A and C1 correctly.
manoj
--
Sex is like air. It's only a big deal if you can't get any.
Manoj Srivastava <srivasta@debian.org> <http://www.debian.org/%7Esrivasta/>
1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
Reply to: