Sean Whitton <spwhit...@spwhitton.name> writes:

> Hello,
>
> On Tue 19 Mar 2024 at 04:04pm -07, Xiyue Deng wrote:
>
>> Sean Whitton <spwhit...@spwhitton.name> writes:
>>
>>> Hello,
>>>
>>> On Tue 19 Mar 2024 at 02:00am -07, Xiyue Deng wrote:
>>>
>>>> Control: tags -1 pending
>>>>
>>>> I have prepared a fixed version and uploaded to mentors[1] with RFS[2].
>>>
>>> Thanks for looking at this, but I'm not sure the fix is valid.
>>>
>>> The idea behind autopkgtest_keep is to ensure we test the installed
>>> package, not the files in the source tree.  But if you just include them
>>> all, don't the files in the source tree get tested?
>>
>> After some testing this turns out to be an issue with buttercup: if the
>> required module is not immediately in the current loading path it will
>> get stuck.  I've tested with `-L` and directly `--eval "(load-library
>> 'clojure-mode)"` and while the load-library succeeded it will still get
>> stuck.
>>
>> Meanwhile I have tested locally that with a newer buttercup version 1.34
>> this won't be an issue anymore.  However it fails some other tests which
>> we'll have to deal with later.
>>
>> So this is a workaround of the buttercup issue in 1.31.  An alternative
>> is to disable autopkgtest as it's doing basically the same thing as the
>> test during building.
>>
>> Wdyt?
>
> Looks like buttercup 1.34 is now in unstable, so perhaps worth making an
> attempt at fixing those failing tests, before considering disabling?

Found the upstream fix for the test failures[1].  I have backported the
patch in [2]

Meanwhile, it looks like I was jumping to conclusion a little too soon.
TL;DR it will still get stuck without running in the source directory.
So IMHO disabling autopkgtest would be a sensible choice, which I did in
[3].

Also built and uploaded the latest version to mentors[4].  PTAL.  TIA!

Longer analysis of tests getting stuck:

Comparing working and not working settings using strace, I noticed that
during buttercup tests it would get stuck closing
test/clojure-mode-refactor-rename-ns-alias-test.el, which I still didn't
know why unfortunately.  If I disabled/renamed this file, buttercup
would finish running, and would fail due to unable to load clojure-mode
in the source tree.  And yes, specifically the file in the source tree
as in the following error message:

,----
| Cannot open load file: No such file or directory, 
/home/manphiz/Projects/debian-packaging/clojure-mode/clojure-mode
`----

I even tried directly using `--eval "(load-library \"clojure-mode\")"`
which actually succeeded, but it still failed with the same error.
Given this I would have to assume that buttercup requires running in the
source tree.

-- 
Xiyue Deng

[1] 
https://github.com/clojure-emacs/clojure-mode/commit/af0e518a6b86f2c6f32dfb30b99c067071ed5cd4
[2] 
https://salsa.debian.org/emacsen-team/clojure-mode/-/commit/48fbd64f041d7ea103bce6c6bb0996d80303ed4d
[3] 
https://salsa.debian.org/emacsen-team/clojure-mode/-/commit/27b4687a873aef80213e502f0838463aa7f28a58
[4] https://mentors.debian.net/package/clojure-mode/

Attachment: signature.asc
Description: PGP signature

Reply via email to