Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.maint.python > #14279

Re: Build and run-time triplets

Path csiph.com!1.us.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!news.mixmin.net!aioe.org!bofh.it!news.nic.it!robomod
From Julian Gilbey <julian@d-and-j.net>
Newsgroups linux.debian.maint.python
Subject Re: Build and run-time triplets
Date Sun, 24 Jul 2022 23:10:02 +0200
Message-ID <EMR1o-dAUX-15@gated-at.bofh.it> (permalink)
References <EwbIR-3wrn-9@gated-at.bofh.it> <EwjQ5-3Bsn-7@gated-at.bofh.it> <Ewl5v-3Cb5-7@gated-at.bofh.it> <EwloR-3Cz8-5@gated-at.bofh.it> <EMNK9-dyR6-5@gated-at.bofh.it> <EMOPT-dzto-9@gated-at.bofh.it> <EMPCi-dzYl-9@gated-at.bofh.it> <EMPLY-dA1E-3@gated-at.bofh.it>
X-Mailbox-Line From debian-python-request@lists.debian.org Sun Jul 24 21:01:52 2022
Old-Return-Path <julian@d-and-j.net>
X-Amavis-Spam-Status No, score=-7.21 tagged_above=-10000 required=5.3 tests=[BAYES_00=-2, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, LDO_WHITELIST=-5, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=ham autolearn_force=no
X-Policyd-Weight using cached result; rate: -4.6
MIME-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
X-Mailing-List <debian-python@lists.debian.org> archive/latest/20113
List-ID <debian-python.lists.debian.org>
List-URL <https://lists.debian.org/debian-python/>
List-Archive https://lists.debian.org/msgid-search/Yt2zMCleygyEKmWe@d-and-j.net
Approved robomod@news.nic.it
Lines 76
Organization linux.* mail to news gateway
Sender robomod@news.nic.it
X-Original-Cc debian-python@lists.debian.org
X-Original-Date Sun, 24 Jul 2022 22:01:36 +0100
X-Original-Message-ID <Yt2zMCleygyEKmWe@d-and-j.net>
X-Original-References <YqEYHQLYKvGFmSAa@d-and-j.net> <YqGR3t+65uPJGTxk@belkar.wrar.name> <YqGkZDt/2GKkJV1l@d-and-j.net> <YqGpTXvqVuCglMqB@belkar.wrar.name> <Yt2DOYXK8jhY6faA@d-and-j.net> <Yt2SdIhrSwjVd8sQ@belkar.wrar.name> <Yt2d4q/snz7CeauW@d-and-j.net> <Yt2gXAlLK+vg89Vu@belkar.wrar.name>
Xref csiph.com linux.debian.maint.python:14279

Show key headers only | View raw


On Mon, Jul 25, 2022 at 12:41:16AM +0500, Andrey Rahmatullin wrote:
> On Sun, Jul 24, 2022 at 08:30:42PM +0100, Julian Gilbey wrote:
> [...]
> > > > are they all effectively Multi-Arch: no?  Is this worth thinking about
> > > > in the longer term?
> > > What do you propose?
> > 
> > I think the fix to bug #812228 might have done the job nicely ;-)
> If it actually ships extensions, the "it should usually get a dependency
> on the Python interpreter for the same architecture" part should still
> apply as far as I understand it.

Thanks Andrey!

OK.  So let's dissect this tag info and see where we're currently at.

  Explanation: This <code>Multi-Arch: same</code> package uses <code>pycompile</code> or
   <code>py3compile</code> in the specified maintainer script.
   .
   <code>py{,3}compile</code> are tools used to byte-compile Python source
   files. It is typically run on installation of Debian packages that ship
   Python modules. However, they do not support installing several
   architectures of the same package and this is not Multi-Arch: safe.

This is now out-of-date: firstly, we can presumably get rid of the
pycompile mention, as there are only a tiny handful of Python 2
packages still around, and we're trying to get rid of them.

Secondly, py3compile now supports installing several architectures of
the same package; see the closing changelog message on bug 812228:

     Architecture-qualify py*compile and py*clean calls in maintainer scripts,
     for architecture-specific Python packages. This allows co-installation
     (and even concurrent unpacking) of different architectures of a package.

So the rest of the paragraph is also out of date.

   If the contents of the package is not architecture dependent, it should
   usually be made binary-all.

That is still certainly true.

   If the contents of the package is architecture dependent, it should
   usually get a dependency on the Python interpreter for the same
   architecture. This is a dependency in the form of <code>python3</code>, not
   an architecture-qualified dependency such as <code>python3:any</code> (which
   can be fulfilled by the Python interpreter for any architecture).

This is interesting; dh-python gives the dependency:
   python3 (<< 3.11), python3 (>= 3~), python3:any
which has both same-architecture and qualified architecture
dependencies; obviously the same-architecture one "wins".  But this
paragraph is probably unnecessary for most dh-python-using packages
(though it doesn't seem to harm).

   If a dependency on the Python interpreter for the same architecture
   exists (usually generated by <code>dh-python</code>), the
   <code>Multi-Arch: same</code> has no effect and should be dropped.

Ah.  I see the point.  Because python3 and python3-minimal are
Multi-Arch: allowed, the different arches of python3 are not
co-installable, and so there is no point in labelling the
arch-dependent module packages as Multi-Arch: same; they still could
not be co-installed.

  See-Also: pycompile(1), py3compile(1), Bug#812228

This list can probably be trimmed down to py3compile.


I hope this reasoning is useful; shall I pass it on to the lintian
folk?

Best wishes,

   Julian

Back to linux.debian.maint.python | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-06-08 23:50 +0200
  Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-06-09 08:30 +0200
    Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-06-09 09:50 +0200
      Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-06-09 10:10 +0200
        Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-06-09 11:00 +0200
          Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-06-09 12:00 +0200
          Re: Build and run-time triplets Simon McVittie <smcv@debian.org> - 2022-06-09 12:10 +0200
            Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-06-09 12:50 +0200
        Re: Build and run-time triplets Simon McVittie <smcv@debian.org> - 2022-06-09 11:30 +0200
          Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-06-09 11:50 +0200
            Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-06-09 12:10 +0200
              Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-06-09 12:50 +0200
        Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-07-24 19:40 +0200
          Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-07-24 20:50 +0200
            Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-07-24 21:30 +0200
          Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-07-24 20:50 +0200
            Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-07-24 21:40 +0200
              Re: Build and run-time triplets Andrey Rahmatullin <wrar@debian.org> - 2022-07-24 21:50 +0200
                Re: Build and run-time triplets Julian Gilbey <julian@d-and-j.net> - 2022-07-24 23:10 +0200

csiph-web