Bug#1017533: dh-cargo: Order of cargo:X-Cargo-Built-Using subtitution varies depending on the locale env vars that are set

2022-08-17 Thread Rob Shearman
Package: dh-cargo
Version: 24
Severity: normal
X-Debbugs-Cc: r...@graphiant.com

The order of the cargo:X-Cargo-Built-Using substitution generated by dh-cargo-
built-using for binary Rust packages can vary if LC_ALL is set when building.

This means that the contents of the binary package can vary depending on the
environment, which is highlighted as a problem by tools like reprotest.

For example:

$ LANG=fr_CH.UTF-8 LANGUAGE=fr_CH.UTF-8:fr LC_ALL=fr_CH.UTF-8 dpkg-
buildpackage -uc -us &> /dev/null && cat debian/built-using-repro.substvars
cargo:Built-Using=
cargo:X-Cargo-Built-Using=rust-lazycell (= 1.3.0-3), rust-lazy-static (=
1.4.0-1)
shlibs:Depends=libc6 (>= 2.18), libgcc-s1 (>= 4.2)
misc:Depends=
misc:Pre-Depends=
$ LANG=en_GB.UTF-8 LANGUAGE='en_GB:en' dpkg-buildpackage -uc -us &>
/dev/null && cat debian/built-using-repro.substvars
cargo:Built-Using=
cargo:X-Cargo-Built-Using=rust-lazy-static (= 1.4.0-1), rust-lazycell (=
1.3.0-3)
shlibs:Depends=libc6 (>= 2.18), libgcc-s1 (>= 4.2)
misc:Depends=
misc:Pre-Depends=

-- System Information:
Debian Release: 11.4
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable-
debug'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 5.10.0-16-amd64 (SMP w/5 CPU threads)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8),
LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages dh-cargo depends on:
ii  cargo  0.47.0-3+b1
ii  debhelper  13.3.4
ii  perl   5.32.1-4+deb11u2
ii  python33.9.2-3

dh-cargo recommends no packages.

dh-cargo suggests no packages.



Bug#996885: Patch

2021-10-20 Thread Rob Shearman
Fix submitted via pull request:
https://salsa.debian.org/debian/grpc/-/merge_requests/7




Bug#996885: grpc: FTBS: third_party/protobuf/src - No such file or directory

2021-10-20 Thread Rob Shearman
Source: grpc
Version: 1.30.2-3
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)
X-Debbugs-Cc: r...@graphiant.com

Dear Maintainer,

grpc fails to build from source from a clean directory:

  rob@graph-dev:~/grpc ((debian/1.30.2-3))$ git clean -xdf
  rob@graph-dev:~/grpc ((debian/1.30.2-3))$ gbp buildpackage -uc -us
  gbp:info: Performing the build
   dpkg-buildpackage -us -uc -ui -i -I
  dpkg-buildpackage: info: source package grpc
  dpkg-buildpackage: info: source version 1.30.2-3
  dpkg-buildpackage: info: source distribution unstable
  dpkg-buildpackage: info: source changed by Laszlo Boszormenyi (GCS)

   dpkg-source -i -I --before-build .
  dpkg-buildpackage: info: host architecture amd64
  dpkg-source: info: using patch list from debian/patches/series
  dpkg-source: info: applying unvendor-zlib.diff
  dpkg-source: info: applying add-wrap-memcpy-flags.diff
  dpkg-source: info: applying install_libdir.patch
  dpkg-source: info: applying unversion_sphinx.patch
  dpkg-source: info: applying no_embedded_abseil.patch
  dpkg-source: info: applying link_external_abseil.patch
  dpkg-source: info: applying no-embed-libs.patch
  dpkg-source: info: applying remove-missing-files-in-gemspec.patch
  dpkg-source: info: applying no-make-in-extconf.patch
  dpkg-source: info: applying use-system-grpc.patch
  dpkg-source: info: applying fix-protoc-path.patch
  dpkg-source: info: applying add_grpc_libdir.patch
  dpkg-source: info: applying unbreak_foreach.patch
  dpkg-source: info: applying 9e0b427893b65b220faf8a31a6afdc67f6f41364.patch
  dpkg-source: info: applying
16-member_variable_should_not_be_a_reference.patch
  dpkg-source: info: applying
17-fixing_a_member_var_to_not_be_a_reference.patch
   debian/rules clean
  dh clean --with=python3
 debian/rules override_dh_auto_clean
  make[1]: Entering directory '/home/rob/grpc'
  dh_auto_clean
make -j5 clean
  make[2]: Entering directory '/home/rob/grpc'
  rm -f -rf /home/rob/grpc/objs /home/rob/grpc/libs /home/rob/grpc/bins
/home/rob/grpc/gens cache.mk
  make[2]: Leaving directory '/home/rob/grpc'
  dh_auto_clean -O--buildsystem=pybuild
  I: pybuild base:232: python3.9 setup.py clean
  /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:369: FutureWarning:
Cython directive 'language_level' not set, using 2 for now (Py2). This will
change in a later release! File:
/home/rob/grpc/src/python/grpcio/grpc/_cython/cygrpc.pxd
tree = Parsing.p_module(s, pxd, full_module_name)
  Compiling src/python/grpcio/grpc/_cython/cygrpc.pyx because it changed.
  [1/1] Cythonizing src/python/grpcio/grpc/_cython/cygrpc.pyx
  running clean
  removing '/home/rob/grpc/.pybuild/cpython3_3.9_grpcio/build' (and everything
under it)
  'python_build/bdist.linux-x86_64' does not exist -- can't clean it
  'python_build/scripts-3.9' does not exist -- can't clean it
  find /home/rob/grpc/src/python/grpcio/ -name \*.so -delete
  rm -f -r /home/rob/grpc/src/python/grpcio/grpcio.egg-info/ \
/home/rob/grpc/.eggs/
  rm -f \
/home/rob/grpc/src/python/grpcio/grpc/_cython/_credentials/roots.pem \
/home/rob/grpc/src/python/grpcio/grpc/_cython/cygrpc.cpp \
/home/rob/grpc/src/python/grpcio/grpc/_grpcio_metadata.py
  rm -f a.out
  make[1]: Leaving directory '/home/rob/grpc'
 dh_clean
   dpkg-source -i -I -b .
  dpkg-source: info: using source format '3.0 (quilt)'
  dpkg-source: info: building grpc using existing ./grpc_1.30.2.orig.tar.gz
  dpkg-source: info: using patch list from debian/patches/series
  dpkg-source: warning: ignoring deletion of file
src/python/grpcio/grpc/_grpcio_metadata.py, use --include-removal to override
  dpkg-source: info: building grpc in grpc_1.30.2-3.debian.tar.xz
  dpkg-source: info: building grpc in grpc_1.30.2-3.dsc
   debian/rules binary
  dh binary --with=python3
 dh_update_autotools_config
 dh_autoreconf
 debian/rules override_dh_auto_configure
  make[1]: Entering directory '/home/rob/grpc'
  dh_auto_configure
  dh_auto_configure -O--buildsystem=pybuild
  I: pybuild base:232: python3.9 setup.py config
  /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:369: FutureWarning:
Cython directive 'language_level' not set, using 2 for now (Py2). This will
change in a later release! File:
/home/rob/grpc/src/python/grpcio/grpc/_cython/cygrpc.pxd
tree = Parsing.p_module(s, pxd, full_module_name)
  Compiling src/python/grpcio/grpc/_cython/cygrpc.pyx because it changed.
  [1/1] Cythonizing src/python/grpcio/grpc/_cython/cygrpc.pyx
  running config
  make[1]: Leaving directory '/home/rob/grpc'
 debian/rules override_dh_auto_build
  make[1]: Entering directory '/home/rob/grpc'
  # Fake included protobuf .proto files
  mkdir -p /home/rob/grpc/Ithird_party/protobuf/
  ln -s /usr/include /home/rob/grpc/third_party/protobuf/src
  ln: failed to create symbolic link '/home/rob/grpc/third_party/protobuf/src':
No such file or directory
  make[1]: *** [debian/rules:59: