#20884: line buffering in sage-logger causes "hang" due to invisible prompt when
installing experimental packages
-------------------------------------+-------------------------------------
Reporter: mkoeppe | Owner:
Type: defect | Status: new
Priority: critical | Milestone: sage-7.3
Component: build | Resolution:
Keywords: | Merged in:
Authors: Erik Bray | Reviewers: Dima Pasechnik,
| Matthias Koeppe
Report Upstream: N/A | Work issues:
Branch: u/embray/disable- | Commit:
exp-pkg-prompt | 705573623266f1017aa4a433e816c0e878960836
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by embray):
Replying to [comment:70 leif]:
> If the sage-logger ''did'' print incomplete lines (such as a prompt from
`read`), this would just mess up other output where `echo -n` is used,
especially from `configure`. We'd (again) end up with (now ''wrongly''
prefixed!) lines like for example
Point taken on this--I didn't believe this would happen as I did't think
`make` would interleave the output of individual commands but it
definitely can if it's waiting for output for some command, as is wont to
happen with `configure`. Though if you `make` is new enough (>=4.0) you
can enable this behavior with `-Oline`.
That said, this isn't just an issue with sage-logger. This can happen
even without it, and also happened with the previous version of the logger
before I added the prefixing (and the line-buffering that came with it).
I do agree with Volker and others though that there's no reason for user
input prompts in make. So I'll go with my proposed solution above and
move the prompt entirely to the top-level user interface, and that will
simplify this whole matter greatly.
I would still propose keeping my Python implementation of sage-logger
because why not? I can change it to be line-based instead of character-
based and that should actually make it faster than the current version by
a bit, I think.
--
Ticket URL: <https://trac.sagemath.org/ticket/20884#comment:75>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.