Hi,
During the "gbp buildpackage" (or "dpkg-buildpackage") I see in Salsa:
python3.11 -m build --skip-dependency-check --no-isolation --wheel
--outdir /builds/python-team/packages/python-ping3/debian/output/source_dir/.pybuild/cpython3_3.11
[...]
python3.12 -m build --skip-dependency-check --no-isolation --wheel --outdir /builds/python-team/packages/python-ping3/debian/output/source_dir/.pybuild/cpython3_3.12
The first one includes, in top_level.txt:
debian
ping3
And the second one:
build
debian
ping3
Where "ping3" is the expected module. "debian" is there because of the
debian/ directory (I'm super sure, and AFAIK should not be there!) and
"build" is there on the second time since, I guess, it exists at that
time.
So, even in the package in testing, it contains "debian" which is wrong:
$ cat ./dist-packages/ping3-4.0.4.dist-info/top_level.txt
debian
ping3
And in salsa it contains the difference, making it more obvious.
The file top_level.txt generated by "python3 -m build" in upstream
checkout does not contain "debian".
In my system, I see[1] more packages that might have the same problem.
So now, I guess that the question is:
a) How to make "python3 -m build" to not include "debian" or "build"?
b) What would be the best way to address this (if possible, via d/rules
changes). I mean, besides post-processing the generated file which I
guess that is possible, but not the best idea.
[1]: Via carles@pinux:/usr/lib/python3$ find . -iname "top_level.txt" -exec grep -l ^debian$ {} \;
On 25 Feb 2024 at 23:32:09, Carles Pina i Estany wrote:
>
> Hi,
>
> On 25 Feb 2024 at 01:35:41, stefanor@debian.org wrote:
> > Hi Carles (2024.02.25_00:14:46_+0000)
> > > It generates a .deb file with a directory:
> > >
> > > /usr/lib/python3.12/dist-packages/ping3-4.0.4.dist-info/
> > >
> > > With two files there:
> > > -INSTALLER
> > > -top_level.txt
> >
> > If there are files in /usr/lib/python3.*/dist-packages/ after running
> > dh_python3, it means they differed between python 3.x versions.
>
> yes...
>
> > So to investigate, diff the files against the ones in
> > /usr/lib/python3/dist-packages/ and see if you can spot why they are not
> > matching.
>
> $ ls python3.12/dist-packages/ping3-4.0.4.dist-info/
> INSTALLER top_level.txt
>
> $ ls python3/dist-packages/ping3-4.0.4.dist-info/
> entry_points.txt INSTALLER METADATA top_level.txt WHEEL
>
> The file INSTALLER is the same:
>
> $ diff -u python3.12/dist-packages/ping3-4.0.4.dist-info/INSTALLER python3/dist-packages/ping3-4.0.4.dist-info/INSTALLER
>
> The file top_level.txt is different:
>
> $ diff -u python3.12/dist-packages/ping3-4.0.4.dist-info/top_level.txt python3/dist-packages/ping3-4.0.4.dist-info/top_level.txt
> --- python3.12/dist-packages/ping3-4.0.4.dist-info/top_level.txt 2023-11-06 22:53:00.000000000 +0000
> +++ python3/dist-packages/ping3-4.0.4.dist-info/top_level.txt 2023-11-06 22:53:00.000000000 +0000
> @@ -1,2 +1,3 @@
> +build
> debian
> ping3
>
> > It's probably something non-reproducible in the package's build system.
>
> Will investigate and if relevant share the problem here. This is in
> salsa using the standard pipeline. Last time that I run the pipeline I
> didn't have this problem. It was months ago.
>
> If you have any ideas let me know, of course!
>
> Thanks!
>
> --
> Carles Pina i Estany
> https://carles.pina.cat
--
Carles Pina i Estany
https://carles.pina.cat
Attachment:
signature.asc
Description: PGP signature