Subject: Re: bug#62621: 29.0.60; uniquify can't make buffers unique based on things other than filename

From: Eli Zaretskii <[email-masked]>
Date: Wed, 26 Jul 2023 18:18:25 +0300

> From: Spencer Baugh <[email-masked]>
> Cc: [email-masked],  [email-masked],  [email-masked]
> Date: Mon, 24 Jul 2023 15:18:23 -0400
> 
> > OK, how about this?
> 
> Oops, that one didn't include the updated
> project-uniquify-dirname-transform docstring.  The right patch now:

Thanks, installed, with some minor changes as followup.

The new test uniquify-home fails for me on MS-Windows:

  Test uniquify-home backtrace:
    signal(ert-test-failed (((should (equal (mapcar #'buffer-name bufs)
    ert-fail(((should (equal (mapcar #'buffer-name bufs) '("~<test>" "~<
    (if (unwind-protect (setq value-27 (apply fn-25 args-26)) (setq form
    (let (form-description-29) (if (unwind-protect (setq value-27 (apply
    (let ((value-27 'ert-form-evaluation-aborted-28)) (let (form-descrip
    (let* ((fn-25 #'equal) (args-26 (condition-case err (let ((signal-ho
    (save-excursion (setq bufs (cons (find-file-noselect "~") bufs)) (se
    (let (bufs) (save-excursion (setq bufs (cons (find-file-noselect "~"
    (closure (t) nil (let (bufs) (save-excursion (setq bufs (cons (find-
    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
    ert-run-test(#s(ert-test :name uniquify-home :documentation "uniquif
    ert-run-or-rerun-test(#s(ert--stats :selector (not ...) :tests [...
    ert-run-tests((not (or (tag :unstable) (tag :nativecomp))) #f(compil
    ert-run-tests-batch((not (or (tag :unstable) (tag :nativecomp))))
    ert-run-tests-batch-and-exit((not (or (tag :unstable) (tag :nativeco
    eval((ert-run-tests-batch-and-exit '(not (or (tag :unstable) (tag :n
    command-line-1(("-L" ";." "-l" "ert" "-l" "lisp/uniquify-tests.el" "
    command-line()
    normal-top-level()
  Test uniquify-home condition:
      (ert-test-failed
       ((should (equal (mapcar ... bufs) '("~<test>" "~<>"))) :form
	(equal ("~" "nonexistent") ("~<test>" "~<>")) :value nil
	:explanation
	(list-elt 0
		  (arrays-of-different-length 1 7 "~" "~<test>"
					      first-mismatch-at 1))))

The idea of the test is not clear to me, so I cannot tell what could
be the reasons.  Feel free to ask me to test changes or ask questions
about what happens on this Windows system while running the test.