Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.debian.maint.python > #14833 > unrolled thread
| Started by | Tomasz Rybak <serpent@debian.org> |
|---|---|
| First post | 2023-01-17 09:30 +0100 |
| Last post | 2023-01-30 22:50 +0100 |
| Articles | 5 — 3 participants |
Back to article view | Back to linux.debian.maint.python
Old generated binary dependencies after renaming psycopg Tomasz Rybak <serpent@debian.org> - 2023-01-17 09:30 +0100
Re: Old generated binary dependencies after renaming psycopg Julian Gilbey <julian@d-and-j.net> - 2023-01-17 10:40 +0100
Re: Old generated binary dependencies after renaming psycopg Tomasz Rybak <serpent@debian.org> - 2023-01-18 00:20 +0100
Re: Old generated binary dependencies after renaming psycopg Scott Kitterman <debian@kitterman.com> - 2023-01-18 00:50 +0100
Re: Old generated binary dependencies after renaming psycopg Tomasz Rybak <serpent@debian.org> - 2023-01-30 22:50 +0100
| From | Tomasz Rybak <serpent@debian.org> |
|---|---|
| Date | 2023-01-17 09:30 +0100 |
| Subject | Old generated binary dependencies after renaming psycopg |
| Message-ID | <FOPvX-10md-1@gated-at.bofh.it> |
[Multipart message — attachments visible in raw view] — view raw
Hello. After fixing #1016031 "psycopg3: binary package name should be python3- psycopg" (I renamed package names, full changes: * python3-psycopg3 -> python3-psycopg * python3-psycopg3-pool -> python3-psycopg-pool * python-psycopg3-doc -> python3-psycopg-doc) I tried to rebuild reverse dependencies, i.e. pgcli and python3-pgspecial. Rebuild went without problems, new packages are the same as old ones, but their binary packages still depend on python3- psycopg3, even though they build-depend on python3-psycopg. I analysed build process and this dependency comes from *.substvars file (e.g. pgcli/debian/pgcli.substvars) which is generated by dh-python. Apt search shows both python3-psycopg3 (in old version) and python3-psycopg, so I suspect the former gets taken in as binary dependency to be used. What can I do to fix it? Should I ask ftp-masters to remove old packages, or will the problem fix itself in the next few days? Best regards. -- Tomasz Rybak, Debian Developer <serpent@debian.org> GPG: A565 CE64 F866 A258 4DDC F9C7 ECB7 3E37 E887 AA8C
[toc] | [next] | [standalone]
| From | Julian Gilbey <julian@d-and-j.net> |
|---|---|
| Date | 2023-01-17 10:40 +0100 |
| Message-ID | <FOQBH-10ZS-5@gated-at.bofh.it> |
| In reply to | #14833 |
On Tue, Jan 17, 2023 at 09:08:01AM +0100, Tomasz Rybak wrote: > Hello. > After fixing #1016031 "psycopg3: binary package name should be python3- > psycopg" > (I renamed package names, full changes: > * python3-psycopg3 -> python3-psycopg > * python3-psycopg3-pool -> python3-psycopg-pool > * python-psycopg3-doc -> python3-psycopg-doc) > I tried to rebuild reverse dependencies, > i.e. pgcli and python3-pgspecial. > Rebuild went without problems, new packages are the same > as old ones, but their binary packages still depend on python3- > psycopg3, > even though they build-depend on python3-psycopg. Nope, pgcli does not build-depend on it, rather it explicitly specifies Depends: python3-psycopg3. Likewise, python-pgspecial specifies the same Depends (though it also has a Build-Depends: python3-psycopg3). These packages will need their dependencies updating. (You might also consider making python3-psycopg Provides: python3-psycopg3 and likewise for the other two binary packages for bookworm.) Best wishes, Julian
[toc] | [prev] | [next] | [standalone]
| From | Tomasz Rybak <serpent@debian.org> |
|---|---|
| Date | 2023-01-18 00:20 +0100 |
| Message-ID | <FP3pf-19cS-1@gated-at.bofh.it> |
| In reply to | #14834 |
[Multipart message — attachments visible in raw view] — view raw
On Tue, 2023-01-17 at 09:20 +0000, Julian Gilbey wrote:
> On Tue, Jan 17, 2023 at 09:08:01AM +0100, Tomasz Rybak wrote:
> > Hello.
> > After fixing #1016031 "psycopg3: binary package name should be python3-
> > psycopg"
> > (I renamed package names, full changes:
> > * python3-psycopg3 -> python3-psycopg
> > * python3-psycopg3-pool -> python3-psycopg-pool
> > * python-psycopg3-doc -> python3-psycopg-doc)
> > I tried to rebuild reverse dependencies,
> > i.e. pgcli and python3-pgspecial.
> > Rebuild went without problems, new packages are the same
> > as old ones, but their binary packages still depend on python3-
> > psycopg3,
> > even though they build-depend on python3-psycopg.
>
> Nope, pgcli does not build-depend on it, rather it explicitly
> specifies Depends: python3-psycopg3. Likewise, python-pgspecial
> specifies the same Depends (though it also has a Build-Depends:
> python3-psycopg3). These packages will need their dependencies
> updating. (You might also consider making python3-psycopg Provides:
> python3-psycopg3 and likewise for the other two binary packages for
> bookworm.)
>
No, this is not the problem.
I checked (rebuilt packages with) different variants - with and
without python3-psycopg[3] as explicit dependency. In all the cases
dependency for python3-psycopg3 comes from ${python3:Depends}
via pgcli/debian/pgcli.substvars which contains
python3:Depends=python3-cli-helpers, python3-click, python3-configobj,
python3-pendulum, python3-pgspecial, python3-prompt-toolkit, python3-
psycopg3, python3-pygments, python3-setproctitle, python3-sqlparse (>=
0.3), python3:any.
When python3-psycopg is in Depends in debian/control, it just gets
added - so binary package's Depends contains it twice (once
python3-psycopg3 from ${python3:Depends, once python3-psycopg
mentioned explicitly; in case of pgcli the second one is versioned).
Sample line from control file for pgcli, which contains both
python3-psycopg and python3-psycopg3:
Depends: python3-cli-helpers, python3-pendulum, python3-pgspecial (>=
2), python3-pkg-resources, python3-prompt-toolkit (>= 3.0), python3-
psycopg (>= 3.0.14), python3-sqlparse (>= 0.3), python3-tabulate,
python3-terminaltables, python3-click, python3-configobj, python3-
psycopg3, python3-pygments, python3-setproctitle, python3:any
I tried to analyze dh_python3, but could not understand where exactly
fills it in list of (additional) dependencies. They are generated
somewhere between dh_python3, dhpython/pydist.py,
and dhpython/depends.py (all files belong to package dh-python
and are in /usr/share/dh-python).
So - any tips how to fix it would be really helpful.
Best regards.
--
Tomasz Rybak, Debian Developer <serpent@debian.org>
GPG: A565 CE64 F866 A258 4DDC F9C7 ECB7 3E37 E887 AA8C
[toc] | [prev] | [next] | [standalone]
| From | Scott Kitterman <debian@kitterman.com> |
|---|---|
| Date | 2023-01-18 00:50 +0100 |
| Message-ID | <FP3Sh-19tZ-1@gated-at.bofh.it> |
| In reply to | #14843 |
On January 17, 2023 11:01:45 PM UTC, Tomasz Rybak <serpent@debian.org> wrote:
>On Tue, 2023-01-17 at 09:20 +0000, Julian Gilbey wrote:
>> On Tue, Jan 17, 2023 at 09:08:01AM +0100, Tomasz Rybak wrote:
>> > Hello.
>> > After fixing #1016031 "psycopg3: binary package name should be python3-
>> > psycopg"
>> > (I renamed package names, full changes:
>> > * python3-psycopg3 -> python3-psycopg
>> > * python3-psycopg3-pool -> python3-psycopg-pool
>> > * python-psycopg3-doc -> python3-psycopg-doc)
>> > I tried to rebuild reverse dependencies,
>> > i.e. pgcli and python3-pgspecial.
>> > Rebuild went without problems, new packages are the same
>> > as old ones, but their binary packages still depend on python3-
>> > psycopg3,
>> > even though they build-depend on python3-psycopg.
>>
>> Nope, pgcli does not build-depend on it, rather it explicitly
>> specifies Depends: python3-psycopg3. Likewise, python-pgspecial
>> specifies the same Depends (though it also has a Build-Depends:
>> python3-psycopg3). These packages will need their dependencies
>> updating. (You might also consider making python3-psycopg Provides:
>> python3-psycopg3 and likewise for the other two binary packages for
>> bookworm.)
>>
>
>No, this is not the problem.
>I checked (rebuilt packages with) different variants - with and
>without python3-psycopg[3] as explicit dependency. In all the cases
>dependency for python3-psycopg3 comes from ${python3:Depends}
>via pgcli/debian/pgcli.substvars which contains
>python3:Depends=python3-cli-helpers, python3-click, python3-configobj,
>python3-pendulum, python3-pgspecial, python3-prompt-toolkit, python3-
>psycopg3, python3-pygments, python3-setproctitle, python3-sqlparse (>=
>0.3), python3:any.
>
>When python3-psycopg is in Depends in debian/control, it just gets
>added - so binary package's Depends contains it twice (once
>python3-psycopg3 from ${python3:Depends, once python3-psycopg
>mentioned explicitly; in case of pgcli the second one is versioned).
>
>Sample line from control file for pgcli, which contains both
>python3-psycopg and python3-psycopg3:
>Depends: python3-cli-helpers, python3-pendulum, python3-pgspecial (>=
>2), python3-pkg-resources, python3-prompt-toolkit (>= 3.0), python3-
>psycopg (>= 3.0.14), python3-sqlparse (>= 0.3), python3-tabulate,
>python3-terminaltables, python3-click, python3-configobj, python3-
>psycopg3, python3-pygments, python3-setproctitle, python3:any
>
>I tried to analyze dh_python3, but could not understand where exactly
>fills it in list of (additional) dependencies. They are generated
>somewhere between dh_python3, dhpython/pydist.py,
>and dhpython/depends.py (all files belong to package dh-python
>and are in /usr/share/dh-python).
>
>So - any tips how to fix it would be really helpful.
You'll need to add a py3dist-overrides file in /debian. The details are in the dh-python or pybuild documentation. I don't recall where.
Scott K
[toc] | [prev] | [next] | [standalone]
| From | Tomasz Rybak <serpent@debian.org> |
|---|---|
| Date | 2023-01-30 22:50 +0100 |
| Message-ID | <FTKci-2hfh-5@gated-at.bofh.it> |
| In reply to | #14844 |
[Multipart message — attachments visible in raw view] — view raw
On Tue, 2023-01-17 at 23:26 +0000, Scott Kitterman wrote: > [ cut ] > > You'll need to add a py3dist-overrides file in /debian. The details are in the dh-python or pybuild documentation. I don't recall where. > Thanks for tip. Summary, for others with similar problems: Solution is described in dh-python documentation (man dh_python3, section dependencies). Mapping of name psyscopg to python3-psycopg3 is in file /usr/share/dh-python/dist/cpython3_fallback, provided by dh-python. It's quite long file, containing many of such translations. I created debian/python3-psycopg.pydist which got installed to /usr/share/python3/dist/python3-psycopg, and provided proper mapping. I guess when mapping in dh-python is fixed, I'll be able to drop *.pydist files. Best regards, and thanks for help! -- Tomasz Rybak, Debian Developer <serpent@debian.org> GPG: A565 CE64 F866 A258 4DDC F9C7 ECB7 3E37 E887 AA8C
[toc] | [prev] | [standalone]
Back to top | Article view | linux.debian.maint.python
csiph-web