Mercurial > hg
view tests/test-mactext.t @ 38729:9e6afe7fca31
worker: use one pipe per posix worker and select() in parent process
This allows us to pass results larger than PIPE_BUF through the pipes without
interleaving them. This is necessary now because "hg fix" sends file contents
as the result from workers.
Differential Revision: https://phab.mercurial-scm.org/D3960
author | Danny Hooper <hooper@google.com> |
---|---|
date | Mon, 16 Jul 2018 17:52:17 -0700 |
parents | adec6374a0b2 |
children | 5abc47d4ca6b |
line wrap: on
line source
$ cat > unix2mac.py <<EOF > import sys > > for path in sys.argv[1:]: > data = open(path, 'rb').read() > data = data.replace(b'\n', b'\r') > open(path, 'wb').write(data) > EOF $ cat > print.py <<EOF > import sys > print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>')) > EOF $ hg init $ echo '[hooks]' >> .hg/hgrc $ echo 'pretxncommit.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc $ echo 'pretxnchangegroup.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc $ cat .hg/hgrc [hooks] pretxncommit.cr = python:hgext.win32text.forbidcr pretxnchangegroup.cr = python:hgext.win32text.forbidcr $ echo hello > f $ hg add f $ hg ci -m 1 $ $PYTHON unix2mac.py f $ hg ci -m 2 attempt to commit or push text file(s) using CR line endings in dea860dc51ec: f transaction abort! rollback completed abort: pretxncommit.cr hook failed [255] $ hg cat f | $PYTHON print.py hello<LF> $ cat f | $PYTHON print.py hello<CR>