Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 936670 - dev-build/meson fails tests with dev-vcs/mercurial installed
Summary: dev-build/meson fails tests with dev-vcs/mercurial installed
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords: TESTFAILURE
Depends on:
Blocks:
 
Reported: 2024-07-26 14:58 UTC by Paolo Pedroni
Modified: 2024-09-20 21:23 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
meson-1.4.1:20240726-143812.log.gz (meson-1.4.1:20240726-143812.log.gz,46.56 KB, application/gzip)
2024-07-26 14:59 UTC, Paolo Pedroni
Details
patch to printf-debug the test case (debug.patch,760 bytes, patch)
2024-07-26 17:10 UTC, Eli Schwartz
Details | Diff
patch to fix meson (0001-mdist-correctly-detect-dirty-hg-repos-with-non-Engli.patch,1.63 KB, patch)
2024-07-29 15:12 UTC, Eli Schwartz
Details | Diff
attempted fix plus debug printf (bug936670.patch,834 bytes, patch)
2024-07-31 14:19 UTC, Eli Schwartz
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Paolo Pedroni 2024-07-26 14:58:22 UTC
=================================== FAILURES ===================================
________________________ AllPlatformTests.test_dist_hg _________________________
[gw3] linux -- Python 3.12.3 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12

self = <unittests.allplatformstests.AllPlatformTests testMethod=test_dist_hg>

    def test_dist_hg(self):
        if not self.has_working_hg():
            raise SkipTest('Mercurial not found or broken.')
        if self.backend is not Backend.ninja:
            raise SkipTest('Dist is only supported with Ninja')
    
        def hg_init(project_dir):
            subprocess.check_call(['hg', 'init'], cwd=project_dir)
            with open(os.path.join(project_dir, '.hg', 'hgrc'), 'w', encoding='utf-8') as f:
                print('[ui]', file=f)
                print('username=Author Person <teh_coderz@example.com>', file=f)
            subprocess.check_call(['hg', 'add', 'meson.build', 'distexe.c'], cwd=project_dir)
            subprocess.check_call(['hg', 'commit', '-m', 'I am a project'], cwd=project_dir)
    
        try:
>           self.dist_impl(hg_init, include_subprojects=False)

unittests/allplatformstests.py:1446: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
unittests/allplatformstests.py:1520: in dist_impl
    self.build('dist')
E   subprocess.CalledProcessError: Command '['/usr/bin/ninja', '-d', 'explain', '-w', 'dupbuild=err', 'dist']' returned non-zero exit status 1.
----------------------------- Captured stdout call -----------------------------
$ /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py setup --backend=ninja --prefix /usr --libdir lib /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpl7i4ixpt /var/tmp/portage/dev-build/meson-1.4.1/temp/tmp8ujvj33b
stdout:
The Meson build system
Version: 1.4.1
Source dir: /var/tmp/portage/dev-build/meson-1.4.1/temp/tmp8ujvj33b
Build dir: /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpl7i4ixpt
Build type: native build
Project name: disttest
Project version: 1.4.3
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 13.3.1 "x86_64-pc-linux-gnu-gcc (Gentoo 13.3.1_p20240614 p17) 13.3.1 20240614")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Neither a subproject directory nor a vcssub.wrap file was found.
Subproject  vcssub is buildable: NO (disabling)
Neither a subproject directory nor a tarballsub.wrap file was found.
Subproject  tarballsub is buildable: NO (disabling)
Neither a subproject directory nor a samerepo.wrap file was found.
Subproject  samerepo is buildable: NO (disabling)
Build targets in project: 1

disttest 1.4.3

  Subprojects
    samerepo  : NO
                Neither a subproject directory nor a samerepo.wrap file was found.
    tarballsub: NO
                Neither a subproject directory nor a tarballsub.wrap file was found.
    vcssub    : NO
                Neither a subproject directory nor a vcssub.wrap file was found.

  User defined options
    backend   : ninja
    libdir    : lib
    prefix    : /usr

Found ninja-1.11.1 at /usr/bin/ninja

$ /usr/bin/ninja -d explain -w dupbuild=err dist
stdout:
ninja explain: output PHONY of phony edge with no inputs doesn't exist
ninja explain: PHONY is dirty
ninja explain: meson-internal__dist is dirty
[0/1] Creating source packages
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
ERROR: Repository has uncommitted changes that will not be included in the dist tarball
Use --allow-dirty to ignore the warning and proceed anyway
FAILED: meson-internal__dist 
/var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py dist
ninja: build stopped: subcommand failed.

----------------------------- Captured stderr call -----------------------------
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
[...]
FAILED unittests/allplatformstests.py::AllPlatformTests::test_dist_hg - subprocess.CalledProcessError: Command '['/usr/bin/ninja', '-d', 'explain', '-w', 'dupbuild=err', 'dist']' returned non-zero exit status 1.
===== 1 failed, 433 passed, 78 skipped, 448 warnings in 313.72s (0:05:13) ======
pytest-xprocess reminder::Be sure to terminate the started process by running 'pytest --xkill' if you have not explicitly done so in your fixture with 'xprocess.getinfo(<process_name>).terminate()'.
Meson build system 1.4.1 Unit Tests
Total time: 314.939 seconds
[...]
 * ERROR: dev-build/meson-1.4.1::gentoo failed (test phase):
 *   Testing failed with python3.12
Comment 1 Paolo Pedroni 2024-07-26 14:59:13 UTC
Created attachment 898376 [details]
meson-1.4.1:20240726-143812.log.gz
Comment 2 Paolo Pedroni 2024-07-26 15:00:46 UTC
# emerge --info =dev-build/meson-1.4.1
Portage 3.0.65 (python 3.12.3-final-0, default/linux/amd64/23.0/desktop/plasma/systemd, gcc-13, glibc-2.39-r6, 6.6.38-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.6.38-gentoo-x86_64-Intel-R-_Core-TM-_i5-1035G1_CPU_@_1.00GHz-with-glibc2.39
KiB Mem:    15884788 total,   4212324 free
KiB Swap:   16777212 total,  16522236 free
Timestamp of repository gentoo: Fri, 26 Jul 2024 07:15:00 +0000
Head commit of repository gentoo: fefd98a28666e122573d5ba016e870f0b97f9231
sh dash 0.5.12
ld GNU ld (Gentoo 2.42 p3) 2.42.0
distcc 3.4 x86_64-pc-linux-gnu [enabled]
ccache version 4.9.1 [disabled]
app-misc/pax-utils:        1.3.7::gentoo
app-shells/bash:           5.2_p26-r6::gentoo
dev-build/autoconf:        2.71-r7::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.28.5::gentoo
dev-build/libtool:         2.4.7-r4::gentoo
dev-build/make:            4.4.1-r1::gentoo
dev-build/meson:           1.4.1::gentoo
dev-java/java-config:      2.3.3-r1::gentoo
dev-lang/perl:             5.38.2-r3::gentoo
dev-lang/python:           3.12.3-r1::gentoo
dev-lang/rust:             1.79.0::gentoo
dev-util/ccache:           4.9.1-r1::gentoo
sys-apps/baselayout:       2.15::gentoo
sys-apps/sandbox:          2.38::gentoo
sys-apps/systemd:          255.7-r1::gentoo
sys-devel/binutils:        2.42-r1::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           15.0.7-r3::gentoo, 18.1.8::gentoo
sys-devel/gcc:             13.3.1_p20240614::gentoo
sys-devel/gcc-config:      2.11::gentoo
sys-devel/lld:             15.0.7::gentoo, 18.1.8::gentoo
sys-devel/llvm:            15.0.7-r3::gentoo, 18.1.8-r1::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.39-r6::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.europe.gentoo.org/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-extra-opts: 
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-max-age: 24

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0
    volatile: True

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
AR="/usr/bin/gcc-ar"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -frecord-gcc-switches -march=icelake-client -mabm -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/easy-rsa /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d"
CXXFLAGS="-O2 -pipe -frecord-gcc-switches -march=icelake-client -mabm -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going y --with-bdeps y"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe -frecord-gcc-switches -march=icelake-client -mabm -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live compress-build-logs config-protect-if-modified distcc distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms sign split-elog split-log strict strict-keepdir test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync warn-on-large-env xattr"
FFLAGS="-O2 -pipe -frecord-gcc-switches -march=icelake-client -mabm -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing"
GENTOO_MIRRORS="https://gentoo.mirror.garr.it/ https://mirrors.evoluso.com/gentoo/ https://ftp.agdsn.de/gentoo https://mirrors.ptisp.pt/gentoo/"
LANG="it_IT.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,--hash-style=gnu -Wl,--sort-common"
LEX="flex"
MAKEOPTS="-j15 -l8"
NM="/usr/bin/gcc-nm"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
RANLIB="/usr/bin/gcc-ranlib"
SHELL="/bin/bash"
USE="X a52 aac aalib acl acpi activities adns alsa amd64 ao audiofile avif bash-completion bluetooth branding brotli bzip2 cairo caps cdda cddb cdparanoia cdr cet colord crypt css cups curl dbus declarative dga djvu dri dts dvd dvdr encode exif expat fbcon ffmpeg fftw flac fontconfig foomaticdb fortran ftp gd gdbm geoip gif gimp gles2 gmp gnutls gphoto2 gpm graphviz gstreamer gtk gui guile handbook heif http2 iconv icu idn imagemagick imlib introspection ipv6 java javascript jbig jemalloc jpeg jpeg2k jpegxl kde kf6compat kwallet lame lapack lcms libass libnotify libsamplerate libtirpc llvm-libunwind lm-sensors lto lua lz4 lzma lzo mad magic man mhash mmap mng mp3 mp4 mpeg multilib musicbrainz ncurses networkmanager nls offensive ogg openal opencl opengl openmp opus pam pango pcre pdf pipewire plasma png policykit postscript ppds pulseaudio qml qt5 qt6 rdesktop readline recode samba screencast sctp sdl seccomp sndfile sockets sound speex spell sqlite ssl startup-notification svg symlink syslog systemd sysvipc taglib telemetry test test-rust theora threads tidy tiff truetype udev udisks unicode upower usb v4l vaapi vala verify-sig vim-syntax vnc vorbis vulkan wavpack wayland webp widgets win32codecs wmf wxwidgets x264 xattr xcb xft xinerama xml xpm xscreensaver xv xvid yahoo zip zlib zstd" ABI_X86="64" ADA_TARGET="gcc_12" ALSA_CARDS="hda-intel virmidi" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512_bitalg avx512_vbmi2 avx512_vnni avx512_vpopcntdq avx512bw avx512cd avx512dq avx512f avx512ifma avx512vbmi avx512vl f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 ssse3 vpclmulqdq" CURL_SSL="gnutls" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" INPUT_DEVICES="libinput" KERNEL="linux" L10N="it en" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PERL_FEATURES="ithreads quadmath" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12" RUBY_TARGETS="ruby31 ruby32" VIDEO_CARDS="intel i965 iris zink" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

dev-build/meson-1.4.1::gentoo was built with the following:
USE="verify-sig -test" ABI_X86="(64)" PYTHON_TARGETS="python3_12 (-pypy3) -python3_10 -python3_11"
FEATURES="strict-keepdir binpkg-logs network-sandbox binpkg-dostrip sfperms config-protect-if-modified sandbox unknown-features-warn ebuild-locks merge-wait pkgdir-index-trusted split-log warn-on-large-env unmerge-orphans usersync fixlafiles assume-digests distlocks strict split-elog usersandbox protect-owned merge-sync sign userpriv preserve-libs distcc compress-build-logs binpkg-docompress multilib-strict parallel-fetch pid-sandbox buildpkg-live news qa-unresolved-soname-deps userfetch ipc-sandbox unmerge-logs xattr"

# emerge -1pqv =dev-build/meson-1.4.1
[ebuild   R   ] dev-build/meson-1.4.1  USE="test* verify-sig" PYTHON_TARGETS="python3_12 (-pypy3) -python3_10 -python3_11"
Comment 3 Paolo Pedroni 2024-07-26 15:08:03 UTC
Same thing with version 1.4.2
Comment 4 Paolo Pedroni 2024-07-26 15:16:08 UTC
And version 1.5.0 as well:

________________________ AllPlatformTests.test_dist_hg _________________________
[gw1] linux -- Python 3.12.3 /var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0-python3_12/install/usr/bin/python3.12

self = <unittests.allplatformstests.AllPlatformTests testMethod=test_dist_hg>

    def test_dist_hg(self):
        if not self.has_working_hg():
            raise SkipTest('Mercurial not found or broken.')
        if self.backend is not Backend.ninja:
            raise SkipTest('Dist is only supported with Ninja')
    
        def hg_init(project_dir):
            subprocess.check_call(['hg', 'init'], cwd=project_dir)
            with open(os.path.join(project_dir, '.hg', 'hgrc'), 'w', encoding='utf-8') as f:
                print('[ui]', file=f)
                print('username=Author Person <teh_coderz@example.com>', file=f)
            subprocess.check_call(['hg', 'add', 'meson.build', 'distexe.c'], cwd=project_dir)
            subprocess.check_call(['hg', 'commit', '-m', 'I am a project'], cwd=project_dir)
    
        try:
>           self.dist_impl(hg_init, include_subprojects=False)

unittests/allplatformstests.py:1449: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
unittests/allplatformstests.py:1526: in dist_impl
    self.build('dist')
E   subprocess.CalledProcessError: Command '['/usr/bin/ninja', '-d', 'explain', '-w', 'dupbuild=err', 'dist']' returned non-zero exit status 1.
----------------------------- Captured stdout call -----------------------------
$ /var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0/meson.py setup --backend=ninja --prefix /usr --libdir lib /var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0/tmp141i3i60 /var/tmp/portage/dev-build/meson-1.5.0/temp/tmpg6274s_2
stdout:
The Meson build system
Version: 1.5.0
Source dir: /var/tmp/portage/dev-build/meson-1.5.0/temp/tmpg6274s_2
Build dir: /var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0/tmp141i3i60
Build type: native build
Project name: disttest
Project version: 1.4.3
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 13.3.1 "x86_64-pc-linux-gnu-gcc (Gentoo 13.3.1_p20240614 p17) 13.3.1 20240614")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Neither a subproject directory nor a vcssub.wrap file was found.
Subproject  vcssub is buildable: NO (disabling)
Neither a subproject directory nor a tarballsub.wrap file was found.
Subproject  tarballsub is buildable: NO (disabling)
Neither a subproject directory nor a samerepo.wrap file was found.
Subproject  samerepo is buildable: NO (disabling)
Build targets in project: 1

disttest 1.4.3

  Subprojects
    samerepo  : NO
                Neither a subproject directory nor a samerepo.wrap file was found.
    tarballsub: NO
                Neither a subproject directory nor a tarballsub.wrap file was found.
    vcssub    : NO
                Neither a subproject directory nor a vcssub.wrap file was found.

  User defined options
    backend   : ninja
    libdir    : lib
    prefix    : /usr

Found ninja-1.11.1 at /usr/bin/ninja

$ /usr/bin/ninja -d explain -w dupbuild=err dist
stdout:
ninja explain: output PHONY of phony edge with no inputs doesn't exist
ninja explain: PHONY is dirty
ninja explain: meson-internal__dist is dirty
[0/1] Creating source packages
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
ERROR: Repository has uncommitted changes that will not be included in the dist tarball
Use --allow-dirty to ignore the warning and proceed anyway
FAILED: meson-internal__dist 
/var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.5.0/work/meson-1.5.0/meson.py dist
ninja: build stopped: subcommand failed.

----------------------------- Captured stderr call -----------------------------
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
Comment 5 Paolo Pedroni 2024-07-26 15:36:38 UTC
...and version 1.5.0 as well.

Removing dev-vcs/mercurial from system (it had no revdeps, no idea why it was on my system), makes meson skip mercurial tests and at the end every other test succeed.
Comment 6 Eli Schwartz gentoo-dev 2024-07-26 17:10:46 UTC
Created attachment 898378 [details, diff]
patch to printf-debug the test case

This test passes for me (I do have mercurial installed) and I cannot figure out what the difference is.

Can you try adding this patch to /etc/portage/patches and check the failure again?
Comment 7 Paolo Pedroni 2024-07-29 13:16:38 UTC
With your patch I get:
=================================== FAILURES ===================================
________________________ AllPlatformTests.test_dist_hg _________________________
[gw2] linux -- Python 3.12.3 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12

self = <unittests.allplatformstests.AllPlatformTests testMethod=test_dist_hg>

    def test_dist_hg(self):
        if not self.has_working_hg():
            raise SkipTest('Mercurial not found or broken.')
        if self.backend is not Backend.ninja:
            raise SkipTest('Dist is only supported with Ninja')
    
        def hg_init(project_dir):
            subprocess.check_call(['hg', 'init'], cwd=project_dir)
            with open(os.path.join(project_dir, '.hg', 'hgrc'), 'w', encoding='utf-8') as f:
                print('[ui]', file=f)
                print('username=Author Person <teh_coderz@example.com>', file=f)
            subprocess.check_call(['hg', 'add', 'meson.build', 'distexe.c'], cwd=project_dir)
            subprocess.check_call(['hg', 'commit', '-m', 'I am a project'], cwd=project_dir)
    
        try:
>           self.dist_impl(hg_init, include_subprojects=False)

unittests/allplatformstests.py:1446: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
unittests/allplatformstests.py:1520: in dist_impl
    self.build('dist')
E   subprocess.CalledProcessError: Command '['/usr/bin/ninja', '-d', 'explain', '-w', 'dupbuild=err', 'dist']' returned non-zero exit status 1.
----------------------------- Captured stdout call -----------------------------
$ /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py setup --backend=ninja --prefix /usr --libdir lib /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpnsotf4_l /var/tmp/portage/dev-build/meson-1.4.1/temp/tmpm2hpy1bb
stdout:
The Meson build system
Version: 1.4.1
Source dir: /var/tmp/portage/dev-build/meson-1.4.1/temp/tmpm2hpy1bb
Build dir: /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpnsotf4_l
Build type: native build
Project name: disttest
Project version: 1.4.3
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 13.3.1 "x86_64-pc-linux-gnu-gcc (Gentoo 13.3.1_p20240614 p17) 13.3.1 20240614")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Neither a subproject directory nor a vcssub.wrap file was found.
Subproject  vcssub is buildable: NO (disabling)
Neither a subproject directory nor a tarballsub.wrap file was found.
Subproject  tarballsub is buildable: NO (disabling)
Neither a subproject directory nor a samerepo.wrap file was found.
Subproject  samerepo is buildable: NO (disabling)
Build targets in project: 1

disttest 1.4.3

  Subprojects
    samerepo  : NO
                Neither a subproject directory nor a samerepo.wrap file was found.
    tarballsub: NO
                Neither a subproject directory nor a tarballsub.wrap file was found.
    vcssub    : NO
                Neither a subproject directory nor a vcssub.wrap file was found.

  User defined options
    backend   : ninja
    libdir    : lib
    prefix    : /usr

Found ninja-1.11.1 at /usr/bin/ninja

$ /usr/bin/ninja -d explain -w dupbuild=err dist
stdout:
ninja explain: output PHONY of phony edge with no inputs doesn't exist
ninja explain: PHONY is dirty
ninja explain: meson-internal__dist is dirty
[0/1] Creating source packages
in HgDist.have_dirty_index, received r.stdout=b'genitore: 0:31109abf58de tip\n I am a project\nbranch: default\ncommit: (pulito)\nupdate: (aggiornato)\nphases: 1 draft\n', r.stderr=b"/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.\n  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'\n/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified\n  return builtins.open(name, sysstr(mode), buffering, encoding)\n"
ERROR: Repository has uncommitted changes that will not be included in the dist tarball
Use --allow-dirty to ignore the warning and proceed anyway
FAILED: meson-internal__dist 
/var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py dist
ninja: build stopped: subcommand failed.

----------------------------- Captured stderr call -----------------------------
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
Comment 8 Eli Schwartz gentoo-dev 2024-07-29 15:12:17 UTC
Created attachment 898502 [details, diff]
patch to fix meson

This appears to be a meson bug. Mercurial is so gross... Can you test this and then I'll merge it into meson upstream?
Comment 9 Paolo Pedroni 2024-07-31 14:07:02 UTC
Sorry, but it does not seem to work:

=================================== FAILURES ===================================
________________________ AllPlatformTests.test_dist_hg _________________________
[gw2] linux -- Python 3.12.3 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12

self = <unittests.allplatformstests.AllPlatformTests testMethod=test_dist_hg>

    def test_dist_hg(self):
        if not self.has_working_hg():
            raise SkipTest('Mercurial not found or broken.')
        if self.backend is not Backend.ninja:
            raise SkipTest('Dist is only supported with Ninja')
    
        def hg_init(project_dir):
            subprocess.check_call(['hg', 'init'], cwd=project_dir)
            with open(os.path.join(project_dir, '.hg', 'hgrc'), 'w', encoding='utf-8') as f:
                print('[ui]', file=f)
                print('username=Author Person <teh_coderz@example.com>', file=f)
            subprocess.check_call(['hg', 'add', 'meson.build', 'distexe.c'], cwd=project_dir)
            subprocess.check_call(['hg', 'commit', '-m', 'I am a project'], cwd=project_dir)
    
        try:
>           self.dist_impl(hg_init, include_subprojects=False)

unittests/allplatformstests.py:1446: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
unittests/allplatformstests.py:1520: in dist_impl
    self.build('dist')
E   subprocess.CalledProcessError: Command '['/usr/bin/ninja', '-d', 'explain', '-w', 'dupbuild=err', 'dist']' returned non-zero exit status 1.
----------------------------- Captured stdout call -----------------------------
$ /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py setup --backend=ninja --prefix /usr --libdir lib /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpkz67ezb4 /var/tmp/portage/dev-build/meson-1.4.1/temp/tmpd9yxiwpi
stdout:
The Meson build system
Version: 1.4.1
Source dir: /var/tmp/portage/dev-build/meson-1.4.1/temp/tmpd9yxiwpi
Build dir: /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpkz67ezb4
Build type: native build
Project name: disttest
Project version: 1.4.3
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 13.3.1 "x86_64-pc-linux-gnu-gcc (Gentoo 13.3.1_p20240614 p17) 13.3.1 20240614")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Neither a subproject directory nor a vcssub.wrap file was found.
Subproject  vcssub is buildable: NO (disabling)
Neither a subproject directory nor a tarballsub.wrap file was found.
Subproject  tarballsub is buildable: NO (disabling)
Neither a subproject directory nor a samerepo.wrap file was found.
Subproject  samerepo is buildable: NO (disabling)
Build targets in project: 1

disttest 1.4.3

  Subprojects
    samerepo  : NO
                Neither a subproject directory nor a samerepo.wrap file was found.
    tarballsub: NO
                Neither a subproject directory nor a tarballsub.wrap file was found.
    vcssub    : NO
                Neither a subproject directory nor a vcssub.wrap file was found.

  User defined options
    backend   : ninja
    libdir    : lib
    prefix    : /usr

Found ninja-1.11.1 at /usr/bin/ninja

$ /usr/bin/ninja -d explain -w dupbuild=err dist
stdout:
ninja explain: output PHONY of phony edge with no inputs doesn't exist
ninja explain: PHONY is dirty
ninja explain: meson-internal__dist is dirty
[0/1] Creating source packages
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
ERROR: Repository has uncommitted changes that will not be included in the dist tarball
Use --allow-dirty to ignore the warning and proceed anyway
FAILED: meson-internal__dist 
/var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py dist
ninja: build stopped: subcommand failed.

----------------------------- Captured stderr call -----------------------------
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
Comment 10 Eli Schwartz gentoo-dev 2024-07-31 14:19:38 UTC
Created attachment 898706 [details, diff]
attempted fix plus debug printf

oops, sorry, that patch didn't have the debugging traces included. Can you try again?
Comment 11 Paolo Pedroni 2024-07-31 14:44:12 UTC
(In reply to Eli Schwartz from comment #10)
> Created attachment 898706 [details, diff] [details, diff]
> attempted fix plus debug printf
> 
> oops, sorry, that patch didn't have the debugging traces included. Can you
> try again?

=================================== FAILURES ===================================
________________________ AllPlatformTests.test_dist_hg _________________________
[gw2] linux -- Python 3.12.3 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12

self = <unittests.allplatformstests.AllPlatformTests testMethod=test_dist_hg>

    def test_dist_hg(self):
        if not self.has_working_hg():
            raise SkipTest('Mercurial not found or broken.')
        if self.backend is not Backend.ninja:
            raise SkipTest('Dist is only supported with Ninja')
    
        def hg_init(project_dir):
            subprocess.check_call(['hg', 'init'], cwd=project_dir)
            with open(os.path.join(project_dir, '.hg', 'hgrc'), 'w', encoding='utf-8') as f:
                print('[ui]', file=f)
                print('username=Author Person <teh_coderz@example.com>', file=f)
            subprocess.check_call(['hg', 'add', 'meson.build', 'distexe.c'], cwd=project_dir)
            subprocess.check_call(['hg', 'commit', '-m', 'I am a project'], cwd=project_dir)
    
        try:
>           self.dist_impl(hg_init, include_subprojects=False)

unittests/allplatformstests.py:1446: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
unittests/allplatformstests.py:1520: in dist_impl
    self.build('dist')
E   subprocess.CalledProcessError: Command '['/usr/bin/ninja', '-d', 'explain', '-w', 'dupbuild=err', 'dist']' returned non-zero exit status 1.
----------------------------- Captured stdout call -----------------------------
$ /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py setup --backend=ninja --prefix /usr --libdir lib /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpu47fwclq /var/tmp/portage/dev-build/meson-1.4.1/temp/tmpgebens9c
stdout:
The Meson build system
Version: 1.4.1
Source dir: /var/tmp/portage/dev-build/meson-1.4.1/temp/tmpgebens9c
Build dir: /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/tmpu47fwclq
Build type: native build
Project name: disttest
Project version: 1.4.3
C compiler for the host machine: x86_64-pc-linux-gnu-gcc (gcc 13.3.1 "x86_64-pc-linux-gnu-gcc (Gentoo 13.3.1_p20240614 p17) 13.3.1 20240614")
C linker for the host machine: x86_64-pc-linux-gnu-gcc ld.bfd 2.42
Host machine cpu family: x86_64
Host machine cpu: x86_64
Neither a subproject directory nor a vcssub.wrap file was found.
Subproject  vcssub is buildable: NO (disabling)
Neither a subproject directory nor a tarballsub.wrap file was found.
Subproject  tarballsub is buildable: NO (disabling)
Neither a subproject directory nor a samerepo.wrap file was found.
Subproject  samerepo is buildable: NO (disabling)
Build targets in project: 1

disttest 1.4.3

  Subprojects
    samerepo  : NO
                Neither a subproject directory nor a samerepo.wrap file was found.
    tarballsub: NO
                Neither a subproject directory nor a tarballsub.wrap file was found.
    vcssub    : NO
                Neither a subproject directory nor a vcssub.wrap file was found.

  User defined options
    backend   : ninja
    libdir    : lib
    prefix    : /usr

Found ninja-1.11.1 at /usr/bin/ninja

$ /usr/bin/ninja -d explain -w dupbuild=err dist
stdout:
ninja explain: output PHONY of phony edge with no inputs doesn't exist
ninja explain: PHONY is dirty
ninja explain: meson-internal__dist is dirty
[0/1] Creating source packages
in HgDist.have_dirty_index, received r.stdout=b'genitore: 0:d39ec490759e tip\n I am a project\nbranch: default\ncommit: (pulito)\nupdate: (aggiornato)\nphases: 1 draft\n', r.stderr=b"/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.\n  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'\n/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified\n  return builtins.open(name, sysstr(mode), buffering, encoding)\n"
ERROR: Repository has uncommitted changes that will not be included in the dist tarball
Use --allow-dirty to ignore the warning and proceed anyway
FAILED: meson-internal__dist 
/var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1-python3_12/install/usr/bin/python3.12 /var/tmp/portage/dev-build/meson-1.4.1/work/meson-1.4.1/meson.py dist
ninja: build stopped: subcommand failed.

----------------------------- Captured stderr call -----------------------------
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/encoding.py:117: EncodingWarning: UTF-8 Mode affects locale.getpreferredencoding(). Consider locale.getencoding() instead.
  encoding = locale.getpreferredencoding().encode('ascii') or b'ascii'
/usr/lib/python3.12/site-packages/mercurial/pycompat.py:392: EncodingWarning: 'encoding' argument not specified
  return builtins.open(name, sysstr(mode), buffering, encoding)
Comment 12 Eli Schwartz gentoo-dev 2024-07-31 16:11:15 UTC
I cannot reproduce this. Here is what I did:

1) clone https://github.com/mesonbuild/meson/ and `git checkout 1.5.1`
2) apply this patch
3) in /etc/locale.gen, uncomment "it_IT.UTF-8 UTF-8" and re-run locale-gen

4) run tests via: `LANG=it_IT.UTF-8 ./run_unittests.py test_dist_hg`. Tests pass.


5) in mesonbuild/mdist.py, comment out the env['LC_ALL'] line from the patch
6) run tests again=, it fails and reports "received r.stdout=b'genitore: 0:a3d1f0ac7bbb tip\n I am a project\nbranch: default\ncommit: (pulito)\n"


7) apply this patch to /etc/portage/patches and run `LANG=it_IT.UTF-8 ebuild meson-1.5.1.ebuild clean test`. It works.
Comment 13 Eli Schwartz gentoo-dev 2024-07-31 16:12:23 UTC
Somehow when running `LC_ALL=C hg ...`, hg is printing "commit: (pulito)" for you but not for me? Why?
Comment 14 Paolo Pedroni 2024-07-31 17:13:27 UTC
(In reply to Eli Schwartz from comment #13)
> Somehow when running `LC_ALL=C hg ...`, hg is printing "commit: (pulito)"
> for you but not for me? Why?

Could it be that mercurial has been built with localization on my system?
Comment 15 Eli Schwartz gentoo-dev 2024-07-31 17:23:16 UTC
No, there is no USE flag for this and like I said, I can reproduce your error if I set LANG=it_IT.UTF-8

But on my system, setting LC_ALL=C causes the error to go away -- and that's what the meson patch does. I don't know why the patch doesn't work for you.
Comment 16 Paolo Pedroni 2024-07-31 17:48:59 UTC
(In reply to Eli Schwartz from comment #15)
> No, there is no USE flag for this and like I said, I can reproduce your
> error if I set LANG=it_IT.UTF-8
> 
> But on my system, setting LC_ALL=C causes the error to go away -- and that's
> what the meson patch does. I don't know why the patch doesn't work for you.

Try building mercurial with LANG=it_IT.UTF-8.

Right now I don't have the time to follow up on this. We can try some more thing tomorrow.
Comment 17 Mike Gilbert gentoo-dev 2024-08-04 21:18:23 UTC
I wonder if some other config or environment variable is overriding the LC_ALL variable.

For example, the LANGUAGE environment variable appears to be given higher priority than LC_ALL.

Running this:

> LC_ALL=C LANGUAGE=it_IT.UTF-8 hg help

Gives me output in Italian.
Comment 19 Eli Schwartz gentoo-dev 2024-08-04 21:27:58 UTC
> Note: The variable LANGUAGE is ignored if the locale is set to ‘C’. In other words, you have to first enable localization, by setting LANG (or LC_ALL) to a value other than ‘C’, before you can use a language priority list through the LANGUAGE variable. 


So mercurial is directly violating the spec... lovely.

$ LC_ALL=C LANGUAGE=it_IT.UTF-8 hg summary
genitore: 0:2c3458d38c43 tip
 test commit???????????
branch: default
commit: (pulito)
update: (aggiornato)
phases: 1 draft
Comment 20 Mike Gilbert gentoo-dev 2024-08-04 21:38:03 UTC
(In reply to Eli Schwartz from comment #19)

It might be the Python gettext module to blame.

https://github.com/python/cpython/blob/v3.12.0/Lib/gettext.py#L470-L504
Comment 21 Eli Schwartz gentoo-dev 2024-08-04 21:51:46 UTC
Yeah, I tracked down a 2005 ticket where they fixed that for the locale module and ignored the gettext module...
Comment 22 Mike Gilbert gentoo-dev 2024-08-05 16:24:34 UTC
https://bugs.python.org/issue1166948
Comment 23 Paolo Pedroni 2024-08-05 17:56:15 UTC
Ok, I 'think' I get it. But where is the LANGUAGE env var defined in gentoo? I haven't been able to find it...
Comment 24 Mike Gilbert gentoo-dev 2024-08-05 20:12:42 UTC
(In reply to Paolo Pedroni from comment #23)

You can check if it is set by running "echo $LANGUAGE" at a shell prompt.

Tracking down where it gets set would be more difficult. It could be defined by your shell startup files, your X11 desktop environment, or any number of other places.
Comment 25 kfm 2024-09-20 05:33:37 UTC
(In reply to Paolo Pedroni from comment #23)
> Ok, I 'think' I get it. But where is the LANGUAGE env var defined in gentoo?
> I haven't been able to find it...

Plasma is known to set it.
Comment 26 Larry the Git Cow gentoo-dev 2024-09-20 21:23:31 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=274cd7d5c629406c817a03eadbf1d8da50791172

commit 274cd7d5c629406c817a03eadbf1d8da50791172
Author:     Eli Schwartz <eschwartz@gentoo.org>
AuthorDate: 2024-09-20 21:22:28 +0000
Commit:     Eli Schwartz <eschwartz@gentoo.org>
CommitDate: 2024-09-20 21:23:06 +0000

    dev-build/meson: add 1.5.2
    
    Closes: https://bugs.gentoo.org/938133
    Closes: https://bugs.gentoo.org/938259
    Closes: https://bugs.gentoo.org/936670
    Closes: https://bugs.gentoo.org/936911
    Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>

 dev-build/meson/Manifest           |   3 +
 dev-build/meson/meson-1.5.2.ebuild | 190 +++++++++++++++++++++++++++++++++++++
 2 files changed, 193 insertions(+)