Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Commit 137b15a fails X02zlevi test

On Feb 8,  2:45pm, Bart Schaefer wrote:
} Subject: Re: Commit 137b15a fails X02zlevi test
} The problem stems from the same zpty used for all the tests, and there
} is something about the "zletest" function that leaves the zpty in a
} bad state for a subsequent "comptesteval".  Oddly, two "zletest" calls
} in a row do not encounter whatever situation this is.

I've been repeatedly running

    make check TESTNUM=X02

and have decided that it fails nondeterministically.  Sometimes the
slave side of the zpty is able to read parts of its input twice and
other times it is not.  Every now and then it will go through all
tests succeeding and then on the next attempt a random one of the
tests will fail.  It's never the very first test; most often but not
always, it's the first test among the second or later that begins
with a call to "comptesteval".

I've tried:

 - adding "sleep" at various places to try to resolve race conditions;

 - setting BUFFER="" in zle-finish and making sure "zle -R" is called
   before send-break;

 - changing the key binding of zle-finish (and correspondingly the
   character written by zletest) so that comptesteval can't trip
   zle-finish accidentally on end of line;

 - adding "zle -t -r ..." in various places to be sure all output to
   the pty has been consumed between tests.

None of these resolve it.  The last one produces successful tests more
often, but seems to increase the randomness of which test fails the
rest of the time.  I've run out of ideas ...

Messages sorted by: Reverse Date, Date, Thread, Author