Skip to content
  • Yuya Nishihara's avatar
    rust-chg: add project skeleton · aab43d5861bb
    Yuya Nishihara authored
    This directory will host the reimplementation of cHg in Rust. It will use
    Tokio [1], and tokio-hglib [2] which I wrote for an oxidized CHg, no idea
    if there's such carbon bonding in nature btw.
    
     [1]: https://tokio.rs/
     [2]: https://bitbucket.org/yuja/tokio-hglib/
    
    The reasoning for depending on Tokio is that it will allow us to handle Unix
    signals in a safer way. Well, I believed that until I found a weird function,
    handlestopsignal(), in cHg codebase. It resends the same signal to the same
    process by temporarily masking the handler, which can't be inherently async.
    So the signal handlers will stay in C, which means there isn't actually much
    reason to write async code right now, other than I've already done most of
    the async stuff, and slightly easier pager handling.
    
    The reasoning for the rewrite is that it will eventually be possible to port
    server-side config validation back to the client side, which will reduce
    the complexity of the current daemon management. It will al...
    aab43d5861bb