On Fri, 28 Jul 2023 at 13:41:14 +0300, Jussi Pakkanen wrote:
> Obviously the defaults should do the correct thing. In fact until
> yesterday that is what I thought the code does not do byte
> compilation. We might even consider changing the default for this as I
> would imagine all distros will hit the same issue.

According to https://mesonbuild.com/Builtin-options.html, the default
since 1.2.0 is -Dpython.bytecompile=0, which installs un-optimized
bytecode as part of `meson install`. The argument is a bit confusing
because it's an optimization level, not a boolean, so 0 (or 1 or 2) turns
it on, and -1 turns it off.

Older versions didn't implement byte-compilation at all, which is
essentially equivalent to the new -Dpython.bytecompile=-1. If you're
willing to change the default to -1 in Meson 1.2.1 in the near future,
then that would bypass this failure mode.

This bug can be reassigned to meson, if it's being treated as an
unintended compatibility break in meson.

> On Thu, 27 Jul 2023 at 17:45, Simon McVittie <s...@debian.org> wrote:
> > Is there a way this can be done, without making packages FTBFS if debhelper
> > is backported to an older suite but Meson is not?
> 
> Is there ever a case where debhelper would be backported byt Meson is
> not?

Yes, debhelper is often one of the first packages to be backported to a
new suite, either in official backports or as part of someone constructing
an unofficial backport of some package.

If a new version of debhelper doesn't work with an old version of Meson,
then the backport would need Breaks: meson (<< 1.2.0~) or similar,
to avoid it being possible to install a known-broken situation. Backports
are normally used selectively, with as many packages as possible coming
from the base suite, and a minimum number of packages backported.

It will be much easier to deal with backports if debhelper and meson
can be more loosely-coupled, like debhelper and Autotools, or debhelper
and CMake.

> Further, debhelper updates would be gated on test failures, right?

Only if debhelper's build-time tests catch this, or if the uploader runs
autopkgtests themselves before uploading. There is currently no equivalent
of the unstable -> testing progression for backports: official backports
are uploaded directly to bookworm-backports or similar.

    smcv

Reply via email to