Diff of the two buildlogs: -- --- b1/build.log 2024-12-21 06:58:14.497281742 +0000 +++ b2/build.log 2024-12-21 06:59:47.081063078 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Fri Jan 23 01:17:53 -12 2026 -I: pbuilder-time-stamp: 1769174273 +I: Current time: Sat Dec 21 20:58:17 +14 2024 +I: pbuilder-time-stamp: 1734764297 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/trixie-reproducible-base.tgz] I: copying local configuration @@ -25,52 +25,84 @@ dpkg-source: info: unpacking python-hacking_4.1.0-4.debian.tar.xz I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/4068849/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/D01_modify_environment starting +debug: Running on codethink02-arm64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Dec 21 06:58 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='arm64' - DEBIAN_FRONTEND='noninteractive' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='trixie' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=trixie + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='2b750f978ba2442d8811659017ce8fac' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='4068849' - PS1='# ' - PS2='> ' + INVOCATION_ID=b1dc5edf64464eedb69aad1fdb3eac28 + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=562282 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.toCyjifw/pbuilderrc_qUCR --distribution trixie --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.toCyjifw/b1 --logfile b1/build.log python-hacking_4.1.0-4.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://192.168.101.4:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.toCyjifw/pbuilderrc_vQlI --distribution trixie --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/trixie-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.toCyjifw/b2 --logfile b2/build.log python-hacking_4.1.0-4.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink01-arm64 6.1.0-28-cloud-arm64 #1 SMP Debian 6.1.119-1 (2024-11-22) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-28-cloud-arm64 #1 SMP Debian 6.1.119-1 (2024-11-22) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Nov 22 2024 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/4068849/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -317,7 +349,7 @@ Get: 165 http://deb.debian.org/debian trixie/main arm64 subunit all 1.4.2-3 [5248 B] Get: 166 http://deb.debian.org/debian trixie/main arm64 python3-stestr all 4.1.0-2 [56.7 kB] Get: 167 http://deb.debian.org/debian trixie/main arm64 python3-testscenarios all 0.5.0-4 [12.8 kB] -Fetched 64.3 MB in 1s (82.1 MB/s) +Fetched 64.3 MB in 0s (156 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.12-minimal:arm64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20083 files and directories currently installed.) @@ -866,8 +898,8 @@ Setting up tzdata (2024b-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri Jan 23 13:19:00 UTC 2026. -Universal Time is now: Fri Jan 23 13:19:00 UTC 2026. +Local time is now: Sat Dec 21 06:58:51 UTC 2024. +Universal Time is now: Sat Dec 21 06:58:51 UTC 2024. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up liberror-perl (0.17029-2) ... @@ -1031,7 +1063,11 @@ fakeroot is already the newest version (1.36-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/python-hacking-4.1.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../python-hacking_4.1.0-4_source.changes +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for trixie +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/python-hacking-4.1.0/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../python-hacking_4.1.0-4_source.changes dpkg-buildpackage: info: source package python-hacking dpkg-buildpackage: info: source version 4.1.0-4 dpkg-buildpackage: info: source distribution unstable @@ -1068,8 +1104,8 @@ Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1083,8 +1119,8 @@ Usage of dash-separated 'description-file' will not be supported in future versions. Please use the underscore name 'description_file' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1098,8 +1134,8 @@ Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1113,8 +1149,8 @@ Usage of dash-separated 'python-requires' will not be supported in future versions. Please use the underscore name 'python_requires' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1166,8 +1202,8 @@ Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1181,8 +1217,8 @@ Usage of dash-separated 'description-file' will not be supported in future versions. Please use the underscore name 'description_file' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1196,8 +1232,8 @@ Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1211,8 +1247,8 @@ Usage of dash-separated 'python-requires' will not be supported in future versions. Please use the underscore name 'python_requires' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1238,27 +1274,43 @@ + PYTHON3S=disabled + TEST_PARALLEL_OPT=--parallel + TEST_SERIAL_OPT= -+ echo WARNING: --no-py2 is deprecated, and always on. ++ for i in $@ ++ case "${1}" in ++ echo 'WARNING: --no-py2 is deprecated, and always on.' WARNING: --no-py2 is deprecated, and always on. + shift -+ py3versions -vr ++ for i in $@ ++ case "${1}" in +++ py3versions -vr + PYTHON3S=3.12 -+ [ yes = no ] -+ [ no = yes ] -+ [ 3.12 = disabled ] -+ + cut -d. -f1 -echo 3.12 ++ '[' yes = no ']' ++ '[' no = yes ']' ++ for pyvers in ${PYTHON3S} ++ '[' 3.12 = disabled ']' +++ echo 3.12 +++ cut -d. -f1 + PYMAJOR=3 -+ echo ===> Testing with python (python3) ++ echo '===> Testing with python (python3)' ===> Testing with python (python3) -+ pwd -+ [ -d /build/reproducible-path/python-hacking-4.1.0/debian/tmp/usr/lib/python3/dist-packages ] -+ [ -e .stestr.conf ] -+ [ -x /usr/bin/python3-stestr ] +++ pwd ++ '[' -d /build/reproducible-path/python-hacking-4.1.0/debian/tmp/usr/lib/python3/dist-packages ']' ++ '[' -e .stestr.conf ']' ++ '[' -x /usr/bin/python3-stestr ']' + STESTR=stestr + rm -rf .stestr ++ PYTHON=python3.12 ++ stestr run --parallel --subunit 'hacking\.tests\.(?!.*test_doctest\.HackingTestCase\.test_flake8.*)' + subunit2pyunit -+ PYTHON=python3.12 stestr run --parallel --subunit hacking\.tests\.(?!.*test_doctest\.HackingTestCase\.test_flake8.*) +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_1__1___import_mock___None_ +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_1__1___import_mock___None_ ... ok +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_2__0___from_unittest_import_mock___None_ +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_2__0___from_unittest_import_mock___None_ ... ok +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_3__1___from_mock_import_patch___None_ +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_3__1___from_mock_import_patch___None_ ... ok +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_4__0___from_unittest_mock_import_patch___None_ +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_4__0___from_unittest_mock_import_patch___None_ ... ok +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_5__0___from_mock______noqa__ +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_5__0___from_mock______noqa__ ... ok hacking.tests.checks.test_comments.CoreTestCase.test_H102_SPDX hacking.tests.checks.test_comments.CoreTestCase.test_H102_SPDX ... ok hacking.tests.checks.test_comments.CoreTestCase.test_H102_full @@ -1278,6 +1330,20 @@ !=: 'Licensed under the Apache License, Version 2.0 foo bar foo bar foo bar foo bar foo bar' != 'Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.' +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_in +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_in ... ok +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_type +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_type ... ok +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_instance +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_instance ... ok +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_or_false_with_in_or_not_in +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_or_false_with_in_or_not_in ... ok +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_oslo_assert_raises_regexp +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_oslo_assert_raises_regexp ... ok +hacking.tests.test_import_exceptions.ImportExceptionsTest.test_default_import_exceptions +hacking.tests.test_import_exceptions.ImportExceptionsTest.test_default_import_exceptions ... ok +hacking.tests.test_import_exceptions.ImportExceptionsTest.test_import_exceptions +hacking.tests.test_import_exceptions.ImportExceptionsTest.test_import_exceptions ... ok hacking.tests.checks.test_other.OthersTestCase.test_H903_hacking_no_cr_1__False___import_os_r_nimport_sys__ hacking.tests.checks.test_other.OthersTestCase.test_H903_hacking_no_cr_1__False___import_os_r_nimport_sys__ ... ok hacking.tests.checks.test_other.OthersTestCase.test_H903_hacking_no_cr_2__True___import_os_nimport_sys__ @@ -1298,52 +1364,28 @@ hacking.tests.checks.test_other.OthersTestCase.test_H904_hacking_delayed_string_interpolation_7__0___LOG_warning__Test__s_______join___s__s_____a__b______None_ ... ok hacking.tests.checks.test_other.OthersTestCase.test_H904_hacking_delayed_string_interpolation_8__0___LOG_warning__Testing_some_stuff_____None_ hacking.tests.checks.test_other.OthersTestCase.test_H904_hacking_delayed_string_interpolation_8__0___LOG_warning__Testing_some_stuff_____None_ ... ok -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_1__1___import_mock___None_ -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_1__1___import_mock___None_ ... ok -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_2__0___from_unittest_import_mock___None_ -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_2__0___from_unittest_import_mock___None_ ... ok -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_3__1___from_mock_import_patch___None_ -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_3__1___from_mock_import_patch___None_ ... ok -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_4__0___from_unittest_mock_import_patch___None_ -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_4__0___from_unittest_mock_import_patch___None_ ... ok -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_5__0___from_mock______noqa__ -hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_5__0___from_mock______noqa__ ... ok -hacking.tests.test_import_exceptions.ImportExceptionsTest.test_default_import_exceptions -hacking.tests.test_import_exceptions.ImportExceptionsTest.test_default_import_exceptions ... ok -hacking.tests.test_import_exceptions.ImportExceptionsTest.test_import_exceptions -hacking.tests.test_import_exceptions.ImportExceptionsTest.test_import_exceptions ... ok hacking.tests.test_config.ConfigTest.test_get hacking.tests.test_config.ConfigTest.test_get ... ok hacking.tests.test_config.ConfigTest.test_get_multiple hacking.tests.test_config.ConfigTest.test_get_multiple ... ok -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_in -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_in ... ok -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_type -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_type ... ok -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_instance -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_instance ... ok -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_or_false_with_in_or_not_in -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_true_or_false_with_in_or_not_in ... ok -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_oslo_assert_raises_regexp -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_oslo_assert_raises_regexp ... ok ---------------------------------------------------------------------- -Ran 32 tests in 2.007s +Ran 32 tests in 1.107s OK + stestr slowest Test id Runtime (s) --------------------------------------------------------------------------------------------------------------------------------------- ----------- -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_oslo_assert_raises_regexp 0.006 -hacking.tests.test_config.ConfigTest.test_get 0.002 +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_oslo_assert_raises_regexp 0.010 +hacking.tests.test_config.ConfigTest.test_get 0.001 hacking.tests.test_import_exceptions.ImportExceptionsTest.test_default_import_exceptions 0.001 -hacking.tests.test_config.ConfigTest.test_get_multiple 0.001 -hacking.tests.test_import_exceptions.ImportExceptionsTest.test_import_exceptions 0.001 +hacking.tests.test_config.ConfigTest.test_get_multiple 0.000 +hacking.tests.test_import_exceptions.ImportExceptionsTest.test_import_exceptions 0.000 hacking.tests.checks.test_comments.CoreTestCase.test_H102_SPDX 0.000 hacking.tests.checks.test_other.OthersTestCase.test_H904_hacking_delayed_string_interpolation_1__1___LOG_debug__Test__s____foo____None_ 0.000 -hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_in 0.000 -hacking.tests.checks.test_comments.CoreTestCase.test_H105 0.000 hacking.tests.checks.test_comments.CoreTestCase.test_H103_full_fail 0.000 +hacking.tests.checks.test_except_checks.ExceptChecksTest.test_hacking_assert_equal_in 0.000 +hacking.tests.checks.test_mock.MockingTestCase.test_H216_hacking_no_third_party_mock_1__1___import_mock___None_ 0.000 + rm -rf .stestr make[1]: Leaving directory '/build/reproducible-path/python-hacking-4.1.0' create-stamp debian/debhelper-build-stamp @@ -1359,19 +1401,22 @@ py3versions: no X-Python3-Version in control file, using supported versions pkgos-dh_auto_install --no-py2 + PKGOS_IN_TMP=no -+ echo WARNING: --no-py2 is deprecated and always on. ++ for i in $@ ++ case "${1}" in ++ echo 'WARNING: --no-py2 is deprecated and always on.' WARNING: --no-py2 is deprecated and always on. + shift -+ dpkg-parsechangelog -SSource +++ dpkg-parsechangelog -SSource + SRC_PKG_NAME=python-hacking -+ echo python-hacking -+ sed s/python-// +++ sed s/python-// +++ echo python-hacking + PY_MODULE_NAME=hacking -+ py3versions -vr +++ py3versions -vr + PYTHON3S=3.12 -+ [ no = yes ] ++ '[' no = yes ']' + TARGET_DIR=python3-hacking -+ pwd ++ for pyvers in ${PYTHON3S} +++ pwd + python3.12 setup.py install --install-layout=deb --root /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking /usr/lib/python3/dist-packages/setuptools/dist.py:491: SetuptoolsDeprecationWarning: Invalid dash-separated options !! @@ -1380,8 +1425,8 @@ Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1395,8 +1440,8 @@ Usage of dash-separated 'description-file' will not be supported in future versions. Please use the underscore name 'description_file' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1410,8 +1455,8 @@ Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1425,8 +1470,8 @@ Usage of dash-separated 'python-requires' will not be supported in future versions. Please use the underscore name 'python_requires' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1478,8 +1523,8 @@ Usage of dash-separated 'author-email' will not be supported in future versions. Please use the underscore name 'author_email' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1493,8 +1538,8 @@ Usage of dash-separated 'description-file' will not be supported in future versions. Please use the underscore name 'description_file' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1508,8 +1553,8 @@ Usage of dash-separated 'home-page' will not be supported in future versions. Please use the underscore name 'home_page' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1523,8 +1568,8 @@ Usage of dash-separated 'python-requires' will not be supported in future versions. Please use the underscore name 'python_requires' instead. - This deprecation is overdue, please update your project and remove deprecated - calls to avoid build errors in the future. + By 2025-Mar-03, you need to update your project and remove deprecated calls + or your builds will no longer be supported. See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details. ******************************************************************************** @@ -1548,11 +1593,6 @@ copying hacking/checks/dictlist.py -> build/lib/hacking/checks copying hacking/checks/comments.py -> build/lib/hacking/checks copying hacking/checks/__init__.py -> build/lib/hacking/checks -creating build/lib/hacking/tests -copying hacking/tests/test_import_exceptions.py -> build/lib/hacking/tests -copying hacking/tests/test_doctest.py -> build/lib/hacking/tests -copying hacking/tests/test_config.py -> build/lib/hacking/tests -copying hacking/tests/__init__.py -> build/lib/hacking/tests creating build/lib/hacking/tests/checks copying hacking/tests/checks/test_other.py -> build/lib/hacking/tests/checks copying hacking/tests/checks/test_mock.py -> build/lib/hacking/tests/checks @@ -1562,6 +1602,10 @@ copying hacking/core.py -> build/lib/hacking copying hacking/config.py -> build/lib/hacking copying hacking/__init__.py -> build/lib/hacking +copying hacking/tests/test_import_exceptions.py -> build/lib/hacking/tests +copying hacking/tests/test_doctest.py -> build/lib/hacking/tests +copying hacking/tests/test_config.py -> build/lib/hacking/tests +copying hacking/tests/__init__.py -> build/lib/hacking/tests running egg_info creating hacking.egg-info writing hacking.egg-info/PKG-INFO @@ -1591,16 +1635,16 @@ copying build/lib/hacking/config.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking copying build/lib/hacking/core.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking creating /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests +copying build/lib/hacking/tests/__init__.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests +copying build/lib/hacking/tests/test_config.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests +copying build/lib/hacking/tests/test_doctest.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests +copying build/lib/hacking/tests/test_import_exceptions.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests creating /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks copying build/lib/hacking/tests/checks/__init__.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks copying build/lib/hacking/tests/checks/test_comments.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks copying build/lib/hacking/tests/checks/test_except_checks.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks copying build/lib/hacking/tests/checks/test_mock.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks copying build/lib/hacking/tests/checks/test_other.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks -copying build/lib/hacking/tests/__init__.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests -copying build/lib/hacking/tests/test_config.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests -copying build/lib/hacking/tests/test_doctest.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests -copying build/lib/hacking/tests/test_import_exceptions.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests creating /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/checks copying build/lib/hacking/checks/__init__.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/checks copying build/lib/hacking/checks/comments.py -> /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/checks @@ -1616,15 +1660,15 @@ byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/__init__.py to __init__.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/config.py to config.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/core.py to core.cpython-312.pyc +byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/__init__.py to __init__.cpython-312.pyc +byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/test_config.py to test_config.cpython-312.pyc +byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/test_doctest.py to test_doctest.cpython-312.pyc +byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/test_import_exceptions.py to test_import_exceptions.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks/__init__.py to __init__.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks/test_comments.py to test_comments.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks/test_except_checks.py to test_except_checks.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks/test_mock.py to test_mock.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/checks/test_other.py to test_other.cpython-312.pyc -byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/__init__.py to __init__.cpython-312.pyc -byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/test_config.py to test_config.cpython-312.pyc -byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/test_doctest.py to test_doctest.cpython-312.pyc -byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/tests/test_import_exceptions.py to test_import_exceptions.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/checks/__init__.py to __init__.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/checks/comments.py to comments.cpython-312.pyc byte-compiling /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking/checks/dictlist.py to dictlist.cpython-312.pyc @@ -1640,10 +1684,10 @@ Copying hacking.egg-info to /build/reproducible-path/python-hacking-4.1.0/debian/python3-hacking/usr/lib/python3/dist-packages/hacking-4.1.0.egg-info Skipping SOURCES.txt running install_scripts -+ pwd -+ rm -rf /build/reproducible-path/python-hacking-4.1.0/debian/python*/usr/lib/python*/dist-packages/*.pth -+ pwd -+ rm -rf /build/reproducible-path/python-hacking-4.1.0/debian/tmp/usr/lib/python*/dist-packages/*.pth +++ pwd ++ rm -rf '/build/reproducible-path/python-hacking-4.1.0/debian/python*/usr/lib/python*/dist-packages/*.pth' +++ pwd ++ rm -rf '/build/reproducible-path/python-hacking-4.1.0/debian/tmp/usr/lib/python*/dist-packages/*.pth' make[1]: Leaving directory '/build/reproducible-path/python-hacking-4.1.0' dh_installdocs -O--buildsystem=pybuild debian/rules override_dh_sphinxdoc @@ -1727,9 +1771,9 @@ The HTML pages are in debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html. dh_sphinxdoc -dh_sphinxdoc: warning: ignoring unknown JavaScript code: debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html/_static/js/navigation.js -dh_sphinxdoc: warning: ignoring unknown JavaScript code: debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html/_static/js/docs.js dh_sphinxdoc: warning: ignoring unknown JavaScript code: debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html/_static/js/jquery-3.2.1.min.js +dh_sphinxdoc: warning: ignoring unknown JavaScript code: debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html/_static/js/docs.js +dh_sphinxdoc: warning: ignoring unknown JavaScript code: debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html/_static/js/navigation.js dh_sphinxdoc: warning: ignoring unknown JavaScript code: debian/python-hacking-doc/usr/share/doc/python-hacking-doc/html/_static/js/bootstrap.min.js make[1]: Leaving directory '/build/reproducible-path/python-hacking-4.1.0' debian/rules override_dh_installchangelogs @@ -1759,14 +1803,14 @@ cat /usr/share/openstack-pkg-tools/init-script-template >>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done -+ ls -1 debian/*.init.in +++ ls -1 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory # If there's a service.in file, use that one instead of the generated one set -e ; set -x ; for i in `ls -1 debian/*.service.in`; do \ MYPKG=`echo $i | sed s/.service.in//` ; \ cp $MYPKG.service.in $MYPKG.service ; \ done -+ ls -1 debian/*.service.in +++ ls -1 'debian/*.service.in' ls: cannot access 'debian/*.service.in': No such file or directory # Generate the systemd unit if there's no already existing .service.in set -e ; set -x ; for i in `ls debian/*.init.in` ; do \ @@ -1775,7 +1819,7 @@ pkgos-gen-systemd-unit $i ; \ fi \ done -+ ls debian/*.init.in +++ ls 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory dh_installinit --error-handler=true make[1]: Leaving directory '/build/reproducible-path/python-hacking-4.1.0' @@ -1790,14 +1834,14 @@ cat /usr/share/openstack-pkg-tools/init-script-template >>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done -+ ls -1 debian/*.init.in +++ ls -1 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory # If there's a service.in file, use that one instead of the generated one set -e ; set -x ; for i in `ls -1 debian/*.service.in`; do \ MYPKG=`echo $i | sed s/.service.in//` ; \ cp $MYPKG.service.in $MYPKG.service ; \ done -+ ls -1 debian/*.service.in +++ ls -1 'debian/*.service.in' ls: cannot access 'debian/*.service.in': No such file or directory # Generate the systemd unit if there's no already existing .service.in set -e ; set -x ; for i in `ls debian/*.init.in` ; do \ @@ -1806,7 +1850,7 @@ pkgos-gen-systemd-unit $i ; \ fi \ done -+ ls debian/*.init.in +++ ls 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory dh_installsystemd make[1]: Leaving directory '/build/reproducible-path/python-hacking-4.1.0' @@ -1831,8 +1875,8 @@ make[1]: Leaving directory '/build/reproducible-path/python-hacking-4.1.0' dh_md5sums -O--buildsystem=pybuild dh_builddeb -O--buildsystem=pybuild -dpkg-deb: building package 'python-hacking-doc' in '../python-hacking-doc_4.1.0-4_all.deb'. dpkg-deb: building package 'python3-hacking' in '../python3-hacking_4.1.0-4_all.deb'. +dpkg-deb: building package 'python-hacking-doc' in '../python-hacking-doc_4.1.0-4_all.deb'. dpkg-genbuildinfo --build=binary -O../python-hacking_4.1.0-4_arm64.buildinfo dpkg-genchanges --build=binary -O../python-hacking_4.1.0-4_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -1841,12 +1885,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/562282/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/4068849 and its subdirectories -I: Current time: Fri Jan 23 01:21:13 -12 2026 -I: pbuilder-time-stamp: 1769174473 +I: removing directory /srv/workspace/pbuilder/562282 and its subdirectories +I: Current time: Sat Dec 21 20:59:46 +14 2024 +I: pbuilder-time-stamp: 1734764386