Read about our upcoming Code of Conduct on this issue

This instance will be upgraded to Heptapod 0.28.1 on 2022-01-26 at 16:00 UTC+1 (a few minutes of down time)

  • Yuya Nishihara's avatar
    chgserver: backport py3 buffered I/O workarounds from procutil · b56feaa9b520
    Yuya Nishihara authored
    I've recently switched to new machine and I found chg's stdout is fully
    buffered.
    
    Even though chg server is a daemon process, it inherits the environment
    where the chg client originally forked the server. This means the server's
    stdout might have been wrapped by LineBufferedWrapper. That's why we need
    to do wrap/unwrap in both ways.
    
    The "if" condition in _restoreio() looks weird, but I'm not willing to
    clean things up because stdio behavior is fundamentally different between
    py2 and py3, and py2 support will be dropped anyway.
    b56feaa9b520
procutil.py 22.9 KB