sapling/eden/scm/contrib/chg
Jun Wu 34d8dca79a dispatch: run command in non-main thread
Summary:
This extends the Ctrl+C special handling from edenapi to the entire Python
command so Ctrl+C should be able to exit the program even if it's running
some blocking Rust functions.

`edenapi` no longer needs to spawn threads for fetching.

Reviewed By: singhsrb

Differential Revision: D23759710

fbshipit-source-id: cbaaa8e5f93d8d74a8692117a00d9de20646d232
2020-09-18 18:47:24 -07:00
..
chg.1 Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
chg.c dispatch: run command in non-main thread 2020-09-18 18:47:24 -07:00
hgclient.c py3: chg: fix compatibility 2020-02-03 18:26:57 -08:00
hgclient.h Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
Makefile Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
procutil.c Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
procutil.h Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
README Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
util.c Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00
util.h Move fb-mercurial sources into an eden/scm subdirectory. 2019-11-13 16:04:48 -08:00

cHg
===

A fast client for Mercurial command server running on Unix.

Install:

 $ make
 $ make install

Usage:

 $ chg help                 # show help of Mercurial
 $ alias hg=chg             # replace hg command
 $ chg --kill-chg-daemon    # terminate background server

Environment variables:

Although cHg tries to update environment variables, some of them cannot be
changed after spawning the server. The following variables are specially
handled:

 * configuration files are reloaded automatically by default.
 * CHGHG or HG specifies the path to the hg executable spawned as the
   background command server.

The following variables are available for testing:

 * CHGDEBUG enables debug messages.
 * CHGSOCKNAME specifies the socket path of the background cmdserver.
 * CHGTIMEOUT specifies how many seconds chg will wait before giving up
   connecting to a cmdserver. If it is 0, chg will wait forever. Default: 60