* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
@ 2015-01-22 19:00 Jorgen Schaefer
2015-01-22 19:38 ` Glenn Morris
0 siblings, 1 reply; 10+ messages in thread
From: Jorgen Schaefer @ 2015-01-22 19:00 UTC (permalink / raw)
To: 19657
Hi.
I can't get the Emacs test suite to run properly, which makes it
difficult for me to write tests for it ... I'm open for suggestions on
what I am doing wrong! :-)
Working on a clean checkout of 3e359626:
$ ./autogen.sh && ./configure --without-x && make
Configured for `x86_64-unknown-linux-gnu'.
Where should the build process find the source code? .
What compiler should emacs be built with? gcc -std=gnu99 -g3 -O2
Should Emacs use the GNU version of malloc? yes
(Using Doug Lea's new malloc from the GNU C Library.)
Should Emacs use a relocating allocator for buffers? no
Should Emacs use mmap(2) for buffer allocation? no
What window system should Emacs use? none
What toolkit should Emacs use? none
Where do we find X Windows header files? NONE
Where do we find X Windows libraries? NONE
Does Emacs use -lXaw3d? no
Does Emacs use -lXpm? no
Does Emacs use -ljpeg? no
Does Emacs use -ltiff? no
Does Emacs use a gif library? no
Does Emacs use a png library? no
Does Emacs use -lrsvg-2? no
Does Emacs use imagemagick? no
Does Emacs support sound? yes
Does Emacs use -lgpm? no
Does Emacs use -ldbus? no
Does Emacs use -lgconf? no
Does Emacs use GSettings? no
Does Emacs use a file notification library? yes -lglibc (inotify)
Does Emacs use access control lists? no
Does Emacs use -lselinux? no
Does Emacs use -lgnutls? no
Does Emacs use -lxml2? yes
Does Emacs use -lfreetype? no
Does Emacs use -lm17n-flt? no
Does Emacs use -lotf? no
Does Emacs use -lxft? no
Does Emacs directly use zlib? yes
Does Emacs use toolkit scroll bars? no
$ make check
Ran 1211 tests, 1189 results as expected, 10 unexpected, 12 skipped
2 files contained unexpected results:
regexp-tests.log
package-test.log
$ cat regexp-tests.log
Running 1 tests (2015-01-22 19:30:42+0100)
Test regexp-test-regexp-opt backtrace:
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test regexp-test-regexp-opt "Test the `c
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test r
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "regexp-tests.elc" "-f" "e
command-line()
normal-top-level()
Test regexp-test-regexp-opt condition:
(void-function regexp-opt-charset)
FAILED 1/1 regexp-test-regexp-opt
Ran 1 tests, 0 results as expected, 1 unexpected (2015-01-22 19:30:42+0100)
1 unexpected results:
FAILED regexp-test-regexp-opt
$ cat package-test.log
Running 15 tests (2015-01-22 19:30:38+0100)
Parsing tar file...
Parsing tar file...done
passed 1/15 package-test-desc-from-buffer
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Type C-x 1 to delete the help window, C-M-v to scroll help.
passed 2/15 package-test-describe-non-installed-multi-file-package
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Type C-x 1 to delete the help window, C-M-v to scroll help.
passed 3/15 package-test-describe-non-installed-package
Type C-x 1 to delete the help window, C-M-v to scroll help.
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Making backup-inhibited local to simple-single-autoloads.el while let-bound!
Making version-control local to *autoload-file* while let-bound!
Test package-test-describe-package backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222y
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-archive([cl-struct-package-desc simple-single (
mapc(package-install-from-archive ([cl-struct-package-desc simple-si
package-download-transaction(([cl-struct-package-desc simple-single
package-install(simple-single)
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-describe-package "Test
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-describe-package condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222yTo/tmp/pkg-test-user-dir-28222yTo/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 4/15 package-test-describe-package
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Test package-test-install-dependency backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222_
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-archive([cl-struct-package-desc simple-single (
mapc(package-install-from-archive ([cl-struct-package-desc simple-si
package-download-transaction(([cl-struct-package-desc simple-single
package-install(simple-depend)
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-install-dependency "In
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-install-dependency condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222_du/tmp/pkg-test-user-dir-28222_du/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 5/15 package-test-install-dependency
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Parsing tar file...
Parsing tar file...done
Extracting multi-file-0.2.3/
Extracting multi-file-0.2.3/multi-file.el
Extracting multi-file-0.2.3/multi-file-sub.el
Extracting multi-file-0.2.3/multi-file.info
Extracting multi-file-0.2.3/README
Extracting multi-file-0.2.3/dir
Extracting multi-file-0.2.3/multi-file-pkg.el
Extracting multi-file-0.2.3/multi-file.texi
Test package-test-install-multifile backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222M
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../multi-file-0.2.3/multi-fi
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(multi-file "/home/forcer/tmp/pkg-test-use
package--make-autoloads-and-stuff([cl-struct-package-desc multi-file
package-unpack([cl-struct-package-desc multi-file (0 2 3) "Example o
package-install-from-archive([cl-struct-package-desc multi-file (0 2
mapc(package-install-from-archive ([cl-struct-package-desc multi-fil
package-download-transaction(([cl-struct-package-desc multi-file (0
package-install(multi-file)
mapc(package-install (multi-file))
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-install-multifile "Che
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-install-multifile condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222Mo0/tmp/pkg-test-user-dir-28222Mo0/multi-file-0.2.3/multi-file-autoloads.el lacks boilerplate")
FAILED 6/15 package-test-install-multifile
Test package-test-install-single backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222-
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-buffer()
apply(package-install-from-buffer nil)
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-install-single "Instal
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-install-single condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222-xD/tmp/pkg-test-user-dir-28222-xD/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 7/15 package-test-install-single
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Test package-test-install-single-from-archive backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222L
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-archive([cl-struct-package-desc simple-single (
mapc(package-install-from-archive ([cl-struct-package-desc simple-si
package-download-transaction(([cl-struct-package-desc simple-single
package-install(simple-single)
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-install-single-from-ar
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-install-single-from-archive condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222L8J/tmp/pkg-test-user-dir-28222L8J/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 8/15 package-test-install-single-from-archive
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Test package-test-install-two-dependencies backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222Y
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-archive([cl-struct-package-desc simple-single (
mapc(package-install-from-archive ([cl-struct-package-desc simple-si
package-download-transaction(([cl-struct-package-desc simple-single
package-install(simple-two-depend)
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-install-two-dependenci
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-install-two-dependencies condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222YGQ/tmp/pkg-test-user-dir-28222YGQ/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 9/15 package-test-install-two-dependencies
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
passed 10/15 package-test-refresh-contents
skipped 11/15 package-test-signed
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Test package-test-update-archives backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222_
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-archive([cl-struct-package-desc simple-single (
mapc(package-install-from-archive ([cl-struct-package-desc simple-si
package-download-transaction(([cl-struct-package-desc simple-single
package-install([cl-struct-package-desc simple-single (1 3) "A singl
mapc(package-install ([cl-struct-package-desc simple-single (1 3) "A
package-menu-execute()
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-update-archives "Test
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-update-archives condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222_ki/tmp/pkg-test-user-dir-28222_ki/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 12/15 package-test-update-archives
Importing package-keyring.gpg...
Importing package-keyring.gpg...done
Test package-test-update-listing backtrace:
autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222M
autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
package--make-autoloads-and-stuff([cl-struct-package-desc simple-sin
package-unpack([cl-struct-package-desc simple-single (1 3) "A single
package-install-from-archive([cl-struct-package-desc simple-single (
mapc(package-install-from-archive ([cl-struct-package-desc simple-si
package-download-transaction(([cl-struct-package-desc simple-single
package-install([cl-struct-package-desc simple-single (1 3) "A singl
mapc(package-install ([cl-struct-package-desc simple-single (1 3) "A
package-menu-execute()
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-test-update-listing "Ensure
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-test-update-listing condition:
(error "Autoloads file /home/forcer/tmp/pkg-test-user-dir-28222Mvo/tmp/pkg-test-user-dir-28222Mvo/simple-single-1.3/simple-single-autoloads.el lacks boilerplate")
FAILED 13/15 package-test-update-listing
passed 14/15 package-x-test-upload-buffer
Test package-x-test-upload-new-version backtrace:
package--archive-contents-from-file()
package-upload-buffer-internal([cl-struct-package-desc simple-single
package-upload-buffer()
#[nil "...
ert--run-test-internal([cl-struct-ert--test-execution-info [cl-struc
ert-run-test([cl-struct-ert-test package-x-test-upload-new-version "
ert-run-or-rerun-test([cl-struct-ert--stats t [[cl-struct-ert-test p
ert-run-tests(t #[385 "...
ert-run-tests-batch(nil)
ert-run-tests-batch-and-exit()
command-line-1(("-L" ":." "-l" "ert" "-l" "package-test.elc" "-f" "e
command-line()
normal-top-level()
Test package-x-test-upload-new-version condition:
(end-of-file)
FAILED 15/15 package-x-test-upload-new-version
Ran 15 tests, 5 results as expected, 9 unexpected, 1 skipped (2015-01-22 19:30:40+0100)
9 unexpected results:
FAILED package-test-describe-package
FAILED package-test-install-dependency
FAILED package-test-install-multifile
FAILED package-test-install-single
FAILED package-test-install-single-from-archive
FAILED package-test-install-two-dependencies
FAILED package-test-update-archives
FAILED package-test-update-listing
FAILED package-x-test-upload-new-version
1 skipped results:
SKIPPED package-test-signed
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-22 19:00 bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong Jorgen Schaefer
@ 2015-01-22 19:38 ` Glenn Morris
2015-01-22 19:57 ` Jorgen Schäfer
2015-01-23 0:50 ` Glenn Morris
0 siblings, 2 replies; 10+ messages in thread
From: Glenn Morris @ 2015-01-22 19:38 UTC (permalink / raw)
To: Jorgen Schaefer; +Cc: 19657
Jorgen Schaefer wrote:
> Test package-test-describe-package backtrace:
> autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222y
> autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
> autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
> update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
> package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
Interesting!
Looks like you have TMPDIR set to a subdirectory of HOME?
I can reproduce the failures with such a setting:
make package-test # works fine
mkdir $HOME/foo
TMPDIR=$HOME/foo make package-test # fails
So it's a real bug that no-one has found till now.
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-22 19:38 ` Glenn Morris
@ 2015-01-22 19:57 ` Jorgen Schäfer
2015-01-22 20:04 ` Glenn Morris
2015-01-23 0:50 ` Glenn Morris
1 sibling, 1 reply; 10+ messages in thread
From: Jorgen Schäfer @ 2015-01-22 19:57 UTC (permalink / raw)
To: Glenn Morris; +Cc: 19657
On Thu, Jan 22, 2015 at 8:38 PM, Glenn Morris <rgm@gnu.org> wrote:
> Jorgen Schaefer wrote:
>
>> Test package-test-describe-package backtrace:
>> autoload-find-destination("/home/forcer/tmp/pkg-test-user-dir-28222y
>> autoload--setup-output(t nil "/home/forcer/tmp/pkg-test-user-dir-282
>> autoload-generate-file-autoloads("../../../simple-single-1.3/simple-
>> update-directory-autoloads("/home/forcer/tmp/pkg-test-user-dir-28222
>> package-generate-autoloads(simple-single "/home/forcer/tmp/pkg-test-
>
> Interesting!
> Looks like you have TMPDIR set to a subdirectory of HOME?
Yes.
> I can reproduce the failures with such a setting:
>
> make package-test # works fine
> mkdir $HOME/foo
> TMPDIR=$HOME/foo make package-test # fails
>
> So it's a real bug that no-one has found till now.
You're a genius!
I can confirm that setting TMPDIR to some directory in /tmp/ fixes the
package-test errors for me.
The regexp-test error persists. Adding (require 'regexp-opt) to the top of
regexp-test.el fixes that.
Any idea why my Emacs does not load regexp-opt by default, while it
apparently does elsewhere?
Regards,
Jorgen
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-22 19:57 ` Jorgen Schäfer
@ 2015-01-22 20:04 ` Glenn Morris
2015-01-22 23:11 ` Stefan Monnier
0 siblings, 1 reply; 10+ messages in thread
From: Glenn Morris @ 2015-01-22 20:04 UTC (permalink / raw)
To: Jorgen Schäfer; +Cc: 19657
Jorgen Schäfer wrote:
> The regexp-test error persists. Adding (require 'regexp-opt) to the top of
> regexp-test.el fixes that.
>
> Any idea why my Emacs does not load regexp-opt by default, while it
> apparently does elsewhere?
You built without-x, and loadup.el preloads regexp-opt only in with-x
builds (I feel like this is asking for trouble).
So regexp-test.el should indeed require regexp-opt.
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-22 20:04 ` Glenn Morris
@ 2015-01-22 23:11 ` Stefan Monnier
0 siblings, 0 replies; 10+ messages in thread
From: Stefan Monnier @ 2015-01-22 23:11 UTC (permalink / raw)
To: Glenn Morris; +Cc: Jorgen Schäfer, 19657
> loadup.el preloads regexp-opt only in with-x builds (I feel like this
> is asking for trouble).
Agreed. In general preloading different packages in different
configurations is a source of trouble, so we should try to avoid it when
it's not really strongly tied to the configuration.
Stefan
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-22 19:38 ` Glenn Morris
2015-01-22 19:57 ` Jorgen Schäfer
@ 2015-01-23 0:50 ` Glenn Morris
2015-01-23 0:54 ` Dmitry Gutov
1 sibling, 1 reply; 10+ messages in thread
From: Glenn Morris @ 2015-01-23 0:50 UTC (permalink / raw)
To: Jorgen Schaefer; +Cc: 19657
Glenn Morris wrote:
> mkdir $HOME/foo
> TMPDIR=$HOME/foo make package-test # fails
I think this is due to with-package-test's manipulation of HOME in
process-environment. The problem can be summarized as:
(file-truename (abbreviate-file-name "/home/rgm/foo"))
-> "/home/rgm/foo"
(let ((process-environment (cons "HOME=/home/rgm/bar" process-environment)))
(file-truename (abbreviate-file-name "/home/rgm/foo")))
-> "/home/rgm/bar/foo"
Because abbreviated-home-dir is cached the first time it is used.
And find-file-noselect does various cycles of abbreviate/expand/truename.
So calling find-file-noselect after changing HOME will mess up for
files under the new HOME.
So basically if you want to change HOME, remember to reset
abbreviated-home-dir as well, else get various odd problems.
Yuck.
Anyway, the following patch seems to fix this specific case.
(Maybe abbreviated-home-dir should either be removed, or check that HOME
hasn't changed since it was set.)
*** a/test/automated/package-test.el
--- b/test/automated/package-test.el
***************
*** 91,96 ****
--- 91,97 ----
`(let* ((package-test-user-dir (make-temp-file "pkg-test-user-dir-" t))
(process-environment (cons (format "HOME=%s" package-test-user-dir)
process-environment))
+ (abbreviated-home-dir)
(package-user-dir package-test-user-dir)
(package-archives `(("gnu" . ,package-test-data-dir)))
(old-yes-no-defn (symbol-function 'yes-or-no-p))
***************
*** 340,346 ****
(should (search-forward "simple-single is an installed package." nil t))
(should (search-forward
(format "Status: Installed in `%s/' (unsigned)."
! (expand-file-name "simple-single-1.3" package-user-dir))
nil t))
(should (search-forward "Version: 1.3" nil t))
(should (search-forward "Summary: A single-file package with no dependencies"
--- 341,348 ----
(should (search-forward "simple-single is an installed package." nil t))
(should (search-forward
(format "Status: Installed in `%s/' (unsigned)."
! (abbreviate-file-name
! (expand-file-name "simple-single-1.3" package-user-dir)))
nil t))
(should (search-forward "Version: 1.3" nil t))
(should (search-forward "Summary: A single-file package with no dependencies"
***************
*** 410,416 ****
(should (search-forward "signed-good is an installed package." nil t))
(should (search-forward
(format "Status: Installed in `%s/'."
! (expand-file-name "signed-good-1.0" package-user-dir))
nil t))))))
--- 412,419 ----
(should (search-forward "signed-good is an installed package." nil t))
(should (search-forward
(format "Status: Installed in `%s/'."
! (abbreviate-file-name
! (expand-file-name "signed-good-1.0" package-user-dir)))
nil t))))))
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-23 0:50 ` Glenn Morris
@ 2015-01-23 0:54 ` Dmitry Gutov
2015-01-23 2:03 ` Glenn Morris
2015-01-23 9:48 ` Eli Zaretskii
0 siblings, 2 replies; 10+ messages in thread
From: Dmitry Gutov @ 2015-01-23 0:54 UTC (permalink / raw)
To: Glenn Morris, Jorgen Schaefer; +Cc: 19657
On 01/23/2015 02:50 AM, Glenn Morris wrote:
> So basically if you want to change HOME, remember to reset
> abbreviated-home-dir as well, else get various odd problems.
Thanks. I've just installed a similar patch.
That leaves only the regexp-opt test failure unresolved. I also think it
should just be preloaded in all builds.
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-23 0:54 ` Dmitry Gutov
@ 2015-01-23 2:03 ` Glenn Morris
2015-01-23 9:48 ` Eli Zaretskii
1 sibling, 0 replies; 10+ messages in thread
From: Glenn Morris @ 2015-01-23 2:03 UTC (permalink / raw)
To: Dmitry Gutov; +Cc: Jorgen Schaefer, 19657
Dmitry Gutov wrote:
> That leaves only the regexp-opt test failure unresolved. I also think
> it should just be preloaded in all builds.
I agree. It's a small file.
(Still kind of a shame that imagemagick needs it though.)
^ permalink raw reply [flat|nested] 10+ messages in thread
* bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong
2015-01-23 0:54 ` Dmitry Gutov
2015-01-23 2:03 ` Glenn Morris
@ 2015-01-23 9:48 ` Eli Zaretskii
2015-01-23 13:37 ` Dmitry Gutov
1 sibling, 1 reply; 10+ messages in thread
From: Eli Zaretskii @ 2015-01-23 9:48 UTC (permalink / raw)
To: Dmitry Gutov; +Cc: contact, 19657
> Date: Fri, 23 Jan 2015 02:54:31 +0200
> From: Dmitry Gutov <dgutov@yandex.ru>
> Cc: 19657@debbugs.gnu.org
>
> On 01/23/2015 02:50 AM, Glenn Morris wrote:
>
> > So basically if you want to change HOME, remember to reset
> > abbreviated-home-dir as well, else get various odd problems.
>
> Thanks. I've just installed a similar patch.
Doesn't this problem affect the emacs-24 branch as well? If so,
please backport there.
Thanks.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2015-01-23 13:37 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-22 19:00 bug#19657: 25.0.50; Test failures in Emacs master, can't figure out what I'm doing wrong Jorgen Schaefer
2015-01-22 19:38 ` Glenn Morris
2015-01-22 19:57 ` Jorgen Schäfer
2015-01-22 20:04 ` Glenn Morris
2015-01-22 23:11 ` Stefan Monnier
2015-01-23 0:50 ` Glenn Morris
2015-01-23 0:54 ` Dmitry Gutov
2015-01-23 2:03 ` Glenn Morris
2015-01-23 9:48 ` Eli Zaretskii
2015-01-23 13:37 ` Dmitry Gutov
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).