Re: Need help with Lintian warning for pyrle - python module in wrong location (Was: work on pyrle)

Stefano Rivera <[email protected]> Sun, 4 Jan 2026 12:51:08 +0000
Newsgroups gmane.linux.debian.devel.python
Message-ID <b2m3dooa5r7i5a6jozfduymzzn63vxlk567yxthejiexclarhz@tsy2ubal2xyh>
Hi Aryan (2026.01.04_11:15:30_+0000)

>I've been working on updating pyrle for a while. Me, plenae and jcfp 
>are currently working on it but we seem to have hit a roadblock when 
>it comes to the lintian warning:
>
>W: python3-pyrle: python-module-in-wrong-location 
>usr/lib/python3.14/dist-packages/pyrle-0.0.42.dist-info -> 
>usr/lib/python3/dist-packages/pyrle-0.0.42.dist-info

As Colin pointed out on IRC, dh_python3 tells you that it's having 
trouble, in the build log:

dh_python3 -O--buildsystem=pybuild
W: dh_python3 fs:140: No merge driver for dist-info file top_level.txt

That's your issue. What's going on there?

$ cat debian/python3-pyrle/usr/lib/python3/dist-packages/pyrle-0.0.42.dist-info/top_level.txt 
build
debian
graphs
pyrle
tests

$ cat debian/python3-pyrle/usr/lib/python3.14/dist-packages/pyrle-0.0.42.dist-info/top_level.txt 
debian
graphs
pyrle
tests

So, dh_python3 couldn't merge them because they differed and it didn't know how to handle that.
Why did they differ?

pyproject.toml contains:
[tool.setuptools.packages.find]
where = ["."]

That's very broad, it's trying to say everything it can find in the source
directory is part of the package. This is including the debian directory,
tests, test data, and a temporary build directory. This is all wrong.

I'd suggest patching pyproject.toml to be a little more selective. I think that
file should only contain "pyrle".

Then there's also:

W: dh_python3 fs:143: Paths differ: debian/python3-pyrle/usr/lib/python3.14/dist-packages/.hypothesis/constants/f31ba8925e528ce5 and debian/python3-pyrle/usr/lib/python3/dist-packages/.hypothesis/constants/f31ba8925e528ce5
W: dh_python3 fs:143: Paths differ: debian/python3-pyrle/usr/lib/python3.14/dist-packages/.hypothesis/constants/b66b8480a5e12b45 and debian/python3-pyrle/usr/lib/python3/dist-packages/.hypothesis/constants/b66b8480a5e12b45
W: dh_python3 fs:143: Paths differ: debian/python3-pyrle/usr/lib/python3.14/dist-packages/.hypothesis/constants/2007fed8db62a98f and debian/python3-pyrle/usr/lib/python3/dist-packages/.hypothesis/constants/2007fed8db62a98f
W: dh_python3 fs:143: Paths differ: debian/python3-pyrle/usr/lib/python3.14/dist-packages/.hypothesis/constants/1de211b74552257e and debian/python3-pyrle/usr/lib/python3/dist-packages/.hypothesis/constants/1de211b74552257e
W: dh_python3 fs:143: Paths differ: debian/python3-pyrle/usr/lib/python3.14/dist-packages/.hypothesis/constants/67b0a8ccf18bf5d2 and debian/python3-pyrle/usr/lib/python3/dist-packages/.hypothesis/constants/67b0a8ccf18bf5d2
W: dh_python3 fs:143: Paths differ: debian/python3-pyrle/usr/lib/python3.14/dist-packages/.hypothesis/constants/da39a3ee5e6b4b0d and debian/python3-pyrle/usr/lib/python3/dist-packages/.hypothesis/constants/da39a3ee5e6b4b0d

You don't want to be shipping .hypothesis. I added a commit to fix this.

Stefano