Bug#615963: libvendorlib-perl: tilde expansion tests failing
-=| Ansgar Burchardt, Tue, Mar 08, 2011 at 10:39:47PM +0100 |=- > Damyan Ivanov writes: > > (repetitive mumbling) > > > > Why not pathcing sbuild so it provides a useful home directory > > (possibly wiped after build)? Seemed like a lot of effort some time > > ago, but having to work around it forever doesn't seem trivial either. > > For me it is a bug when a build relies on the contents of $HOME as it > makes builds harder to reproduce. It's better to fix these problems > when we see them than patching sbuild. In my mind, sbuild-provided, empty $HOME/ would improve reproducibility. Similarly to the idea that you get an empty chroot, without the packages installed on the regular system. Of course, the fact that I am not really suffering from these problems (my involvment in fixing them is practicaly zero) makes my point just a tiny bit more relevant than a random whining, which you may as well ignore. signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Tue, 08 Mar 2011 22:39:47 +0100, Ansgar Burchardt wrote: > > Why not pathcing sbuild so it provides a useful home directory > > (possibly wiped after build)? Seemed like a lot of effort some time > > ago, but having to work around it forever doesn't seem trivial either. > For me it is a bug when a build relies on the contents of $HOME as it > makes builds harder to reproduce. Good point, but I think there's a difference between messing with the _contents_ of $HOME or checking for it's existence. - Might be a bit blurry, of course ... Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Die Schmetterlinge: Lied von der Erde signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
Damyan Ivanov writes: > (repetitive mumbling) > > Why not pathcing sbuild so it provides a useful home directory > (possibly wiped after build)? Seemed like a lot of effort some time > ago, but having to work around it forever doesn't seem trivial either. For me it is a bug when a build relies on the contents of $HOME as it makes builds harder to reproduce. It's better to fix these problems when we see them than patching sbuild. Regards, Ansgar -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Tue, 08 Mar 2011 14:35:58 +0200, Damyan Ivanov wrote: > > Yup, but setting HOME won't help here. > (repetitive mumbling) :) > Why not pathcing sbuild so it provides a useful home directory > (possibly wiped after build)? Seemed like a lot of effort some time > ago, but having to work around it forever doesn't seem trivial either. I think in this case it wouldn't help; as I understood the situation from carnil's and jawnsy's tests, sbuild (1) adds a line to /etc/passwd which is then read with getpwuid($<) by vendorlib but (2) doesn't mount the home directory later. A temporary $HOME in the build chroot wouldn't match the first one. In the other cases, where the test suite uses $HOME, having a temporary directory and the variable set might indeed be nice. Since I don't know sbuild, I'd rather see someone else bringing this up with the sbuild maintainer. Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Dire Straits: Money For Nothing signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
Damyan, I was initially unable to reproduce the issue because sbuild by default does mount /home inside the chroot. However, Salvatore told me via IRC that the buildd's are configured in such a way that they do not have a writable home. I don't know whether this is an issue with sbuild (though we can certainly do some sort of hack to get around this issue) or a problem with the way buildd's are set up. However, I guess it's preferred if packages being built don't write junk to /home anyway... Cheers, Jonathan -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#615963: libvendorlib-perl: tilde expansion tests failing
-=| gregor herrmann, Sun, Mar 06, 2011 at 10:57:33PM +0100 |=- > Yup, but setting HOME won't help here. > > > Currently I have not a good idea how to proceed. :( > > Hm, check again in the tests if the directory exists? > > Apart from that I hope that upstream has enough info now to propose a > fix :) (repetitive mumbling) Why not pathcing sbuild so it provides a useful home directory (possibly wiped after build)? Seemed like a lot of effort some time ago, but having to work around it forever doesn't seem trivial either. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Sun, 06 Mar 2011 21:58:38 +0100, Salvatore Bonaccorso wrote: > > Looking at lib/vendorlib.pm: > > Maybe the path is removed by > > > > # remove any directories that don't actually exist > > # this will also remove /etc/perl on non-Debian systems > > @paths = grep -d, @paths; > > > > i.e. /home/$user doesn't exist in exist but is reported by > > getpwuid($<))[7] ? > > Good catch! Well /home/$user get's not mounted inside the chroot, but > you are right, the /etc/passwd is from chroot creation time? So > contains /home/$user thus returned by getpwuid($<)[7]? But then > /home/$user is removed from @paths by the above, as it really does not > exists. Thanks for the check and the confirmation! > If I'm right, then buildd's work like that, that building user has > no exiting home (we already fixed some bugs going in that direction). Yup, but setting HOME won't help here. > Currently I have not a good idea how to proceed. :( Hm, check again in the tests if the directory exists? Apart from that I hope that upstream has enough info now to propose a fix :) Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Tanita Tikaram: Wonderful Shadow signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
Hi Gregor On Sun, Mar 06, 2011 at 07:50:42PM +0100, gregor herrmann wrote: > On Sun, 06 Mar 2011 18:46:59 +0100, gregor herrmann wrote: > > > # Failed test 'bare tilde expansion' > > # at t/01basic.t line 38. > > # got: '/usr/share/perl5' > > # expected: '/home/jon/' > > More info: > > Sticking > diag '@INC is now: ', Dumper(\@INC); > into t/01basic.t after the shift we get: > > > in jawnsy's sbuild: > > # @INC is now: $VAR1 = [ > # '/usr/share/perl5', > # '/usr/lib/perl/5.10', > # '/usr/share/perl/5.10' > # ]; > > in my cowbuilder: > > # @INC is now: $VAR1 = [ > # '/tmp/buildd/', > # '/usr/share/perl5', > # '/usr/lib/perl/5.10', > # '/usr/share/perl/5.10' > > in my normal environment: > > # @INC is now: $VAR1 = [ > # '/home/gregoa/', > # '/usr/share/perl5', > # '/usr/lib/perl/5.10', > # '/usr/share/perl/5.10' > # ]; > > > Looking at lib/vendorlib.pm: > Maybe the path is removed by > > # remove any directories that don't actually exist > # this will also remove /etc/perl on non-Debian systems > @paths = grep -d, @paths; > > i.e. /home/$user doesn't exist in exist but is reported by > getpwuid($<))[7] ? Good catch! Well /home/$user get's not mounted inside the chroot, but you are right, the /etc/passwd is from chroot creation time? So contains /home/$user thus returned by getpwuid($<)[7]? But then /home/$user is removed from @paths by the above, as it really does not exists. If I'm right, then buildd's work like that, that building user has no exiting home (we already fixed some bugs going in that direction). Currently I have not a good idea how to proceed. :( Bests Salvatore signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Sun, 06 Mar 2011 18:46:59 +0100, gregor herrmann wrote: > # Failed test 'bare tilde expansion' > # at t/01basic.t line 38. > # got: '/usr/share/perl5' > # expected: '/home/jon/' More info: Sticking diag '@INC is now: ', Dumper(\@INC); into t/01basic.t after the shift we get: in jawnsy's sbuild: # @INC is now: $VAR1 = [ # '/usr/share/perl5', # '/usr/lib/perl/5.10', # '/usr/share/perl/5.10' # ]; in my cowbuilder: # @INC is now: $VAR1 = [ # '/tmp/buildd/', # '/usr/share/perl5', # '/usr/lib/perl/5.10', # '/usr/share/perl/5.10' in my normal environment: # @INC is now: $VAR1 = [ # '/home/gregoa/', # '/usr/share/perl5', # '/usr/lib/perl/5.10', # '/usr/share/perl/5.10' # ]; Looking at lib/vendorlib.pm: Maybe the path is removed by # remove any directories that don't actually exist # this will also remove /etc/perl on non-Debian systems @paths = grep -d, @paths; i.e. /home/$user doesn't exist in exist but is reported by getpwuid($<))[7] ? Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Melissa Etheridge: The Different signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
tag 615963 - pending thanks On Sun, 06 Mar 2011 17:05:05 +0100, gregor herrmann wrote: > > If I interpret the output in carnil's log correctly, I assume that > > `getpwuid($<))[7]' is empty; could we just check that and skip the > > tests? > I've committed a patch that goes this way now. Info from jawnsy via IRC: still the same error in sbuild: PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/01basic.t t/pod.t # Failed test 'bare tilde expansion' # at t/01basic.t line 38. # got: '/usr/share/perl5' # expected: '/home/jon/' # Failed test 'tilde expansion with user name' # at t/01basic.t line 63. # got: '/usr/share/perl5' # expected: '/home/jon/' # Looks like you failed 2 tests of 3. t/01basic.t .. Dubious, test returned 2 (wstat 512, 0x200) Failed 2/3 subtests Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Melissa Etheridge: The Different signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Thu, 03 Mar 2011 16:53:16 +0100, gregor herrmann wrote: > If I interpret the output in carnil's log correctly, I assume that > `getpwuid($<))[7]' is empty; could we just check that and skip the > tests? I've committed a patch that goes this way now. Rafael, what do you think? Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Penelope Swales: All the More signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Thu, 03 Mar 2011 07:30:57 +0100, Salvatore Bonaccorso wrote: > From IRC log: > [02:36] < jawnsy> carnil: OK, using your setup, I am able to reproduce the > issue > [02:39] < jawnsy> can we just change from `getpwuid' to $ENV{HOME} ? We can, but then we have to work around the missing $HOME in sbuild in debian/rules. Not sure if this is a huge improvement; but I'm also not sure about other solutions. If I interpret the output in carnil's log correctly, I assume that `getpwuid($<))[7]' is empty; could we just check that and skip the tests? Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Ben Weaver: Ballad of a thin man signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
tag 615963 - unreproducible tag 615963 + confirmed severity serious thanks From IRC log: [02:36] < jawnsy> carnil: OK, using your setup, I am able to reproduce the issue [02:39] < jawnsy> can we just change from `getpwuid' to $ENV{HOME} ? signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
On Tue, 01 Mar 2011 12:30:27 +0100, Salvatore Bonaccorso wrote: > libvendorlib-perl FTBFS during tests on tilde expansion tests: > > >dh_auto_test > > make[1]: Entering directory > > `/build/salvi-libvendorlib-perl_0.10-1-amd64-Ujbe2k/libvendorlib-perl-0.10' > > PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" > > "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/01basic.t t/pod.t > > > > # Failed test 'bare tilde expansion' > > # at t/01basic.t line 36. > > # got: '/usr/share/perl5' > > # expected: '/home/salvi/' Additional info: The test don't check for $HOME but use `getpwuid($<))[7]'. Cheers, gregor -- .''`. http://info.comodo.priv.at/ -- GPG key IDs: 0x8649AA06, 0x00F3CFE4 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `-NP: Peter Jones: Love Is A Battle Field signature.asc Description: Digital signature
Bug#615963: libvendorlib-perl: tilde expansion tests failing
Source: libvendorlib-perl Version: 0.10-1 Severity: serious Justification: FTBFS Hi libvendorlib-perl FTBFS during tests on tilde expansion tests: >dh_auto_test > make[1]: Entering directory > `/build/salvi-libvendorlib-perl_0.10-1-amd64-Ujbe2k/libvendorlib-perl-0.10' > PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" > "test_harness(0, 'inc', 'blib/lib', 'blib/arch')" t/01basic.t t/pod.t > > # Failed test 'bare tilde expansion' > # at t/01basic.t line 36. > # got: '/usr/share/perl5' > # expected: '/home/salvi/' > > # Failed test 'tilde expansion with user name' > # at t/01basic.t line 59. > # got: '/usr/share/perl5' > # expected: '/home/salvi/' > # Looks like you failed 2 tests of 3. > t/01basic.t .. > Dubious, test returned 2 (wstat 512, 0x200) > Failed 2/3 subtests > t/pod.t .. ok > > Test Summary Report > --- > t/01basic.t (Wstat: 512 Tests: 3 Failed: 2) > Failed tests: 2-3 > Non-zero exit status: 2 > Files=2, Tests=4, 0 wallclock secs ( 0.02 usr 0.01 sys + 0.11 cusr 0.00 > csys = 0.14 CPU) > Result: FAIL > Failed 1/2 test programs. 2/4 subtests failed. > make[1]: *** [test_dynamic] Error 255 > make[1]: Leaving directory > `/build/salvi-libvendorlib-perl_0.10-1-amd64-Ujbe2k/libvendorlib-perl-0.10' > dh_auto_test: make -j1 test returned exit code 2 > make: *** [build] Error 29 > dpkg-buildpackage: error: debian/rules build gave error exit status 2 Bests Salvatore -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.32-5-amd64 (SMP w/8 CPU cores) Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /bin/dash sbuild (Debian sbuild) 0.60.0 (23 Feb 2010) on elende ╔══╗ ║ libvendorlib-perl 0.10-1 (amd64) 01 Mar 2011 12:11 ║ ╚══╝ Package: libvendorlib-perl Version: 0.10-1 Architecture: amd64 Chroot Build Dir: /var/lib/schroot/mount/unstable-amd64-sbuild-314b1c7a-7da4-4e3e-81e6-1f596aeb1d2e/build/salvi-libvendorlib-perl_0.10-1-amd64-Ujbe2k Start Time: 20110301-1211 Get:1 http://ftp.ch.debian.org sid InRelease [147 kB] Get:2 http://ftp.ch.debian.org sid/main Sources/DiffIndex [2038 B] Get:3 http://ftp.ch.debian.org sid/main amd64 Packages/DiffIndex [2038 B] Get:4 http://ftp.ch.debian.org sid/main TranslationIndex [2232 B] Get:5 http://ftp.ch.debian.org sid/main 2011-03-01-0820.23.pdiff [3734 B] Get:6 http://ftp.ch.debian.org sid/main amd64 2011-03-01-0820.23.pdiff [1763 B] Get:7 http://ftp.ch.debian.org sid/main 2011-03-01-0820.23.pdiff [3734 B] Get:8 http://ftp.ch.debian.org sid/main amd64 2011-03-01-0820.23.pdiff [1763 B] Fetched 159 kB in 1s (88.4 kB/s) Reading package lists... ┌──┐ │ Fetch source files │ └──┘ Local sources ─ libvendorlib-perl_0.10-1.dsc exists in .; copying to chroot Check arch ── ** Using build dependencies supplied by package: Build-Depends: debhelper (>= 7.2.13) Build-Depends-Indep: perl, libtest-pod-perl ┌──┐ │ Install build dependencies (internal resolver) │ └──┘ Checking for already installed source dependencies... debhelper: missing Using default version 8.1.2 perl: already installed (5.10.1-17) libtest-pod-perl: missing Checking for source dependency conflicts... Installing positive dependencies: debhelper libtest-pod-perl Reading package lists... Building dependency tree... The following extra packages will be installed: bsdmainutils file gettext gettext-base groff-base html2text intltool-debian libcroco3 libglib2.0-0 libio-stringy-perl libmagic1 libpcre3 libpipeline1 libunistring0 libxml2 man-db po-debconf Suggested packages: wamerican wordlist whois vacation dh-make gettext-doc groff less www-browser libmail-box-perl Recommended packages: curl wget lynx-cur autopoint libglib2.0-data shared-mime-info xml-core libmail-sendmail-perl The following NEW packages will be installed: bsdmainutils debhelper file gettext gettext-base groff-base html2text intltool-debian libcroco3 libglib2.0-0 libio-stringy-perl libmagic1 libpcre3 libpipeline1 libtest-pod-perl libunistring0 libxml2 man-db po-debconf 0 upgraded, 19 newly installed, 0 to remove and 0 not upgraded. Need to get 9255 kB of archives. After this operation, 27.7 MB of additional disk space will be used. Get:1 http://ftp.ch.debian.org/debian/ sid/main bsdmainutils amd64 8.2.2 [208 kB] Get:2 http://ftp.ch.debia