sapling/contrib
Jun Wu 26b5601cf3 dirstate: respect gitignore
Summary:
Use the new gitignore matcher powered by Rust.

The hgignore matcher has some laziness, but is not tree-aware - with N
"hgignore" files loaded, it needs O(N) time to match.  The gitignore matcher
is tree-aware and backed by native code with decent time complexity.

We have been maintaining a translation script that collects all gitignores,
generate hgignore files with very long regexp for them. That script has
issues with sparse recently. This diff allows us to remove those generated
hgignore files from the repo.

Note: fsmonitor state does not contain ignored files. And ignore
invalidation is generally broken in fsmonitor (it only checks top-level
.hgignore). That means, once a file is ignored, it cannot be "unignored" by
just removing the matched pattern from ".gitignore". The file has to be
"touched" or so.

Reviewed By: markbt

Differential Revision: D7319608

fbshipit-source-id: 1763544aedb44676413efb6d14ffd3917ed3b1cd
2018-04-13 21:51:40 -07:00
..
benchmarks perf: add historical support of ui.load() 2016-12-15 12:17:08 +01:00
builddeb_fb contrib: move builddeb to contrib/builddeb_fb/ 2018-01-09 16:44:27 -08:00
chg chg: do not start servers with --traceback 2018-04-13 21:51:09 -07:00
debian build: "make deb" failed when the base path contained spaces 2017-10-11 01:47:00 +02:00
docker docker: try to follow the best practices for writing Dockerfiles 2017-10-01 01:02:22 +02:00
hgsh backout of e4cb9628354c 2011-01-27 11:15:08 +01:00
hgsubversion/tools hgsuversion: move docs and tools 2018-01-10 16:20:15 -08:00
macosx packaging: update book URL in Mac and Windows READMEs 2017-10-20 13:54:51 -05:00
plan9 urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
python-zstandard zstd: vendor python-zstandard 0.8.1 2017-04-08 14:33:20 -07:00
vagrant vagrant: update to official Debian 8.1 base box 2015-09-02 11:52:24 -05:00
vim spelling: fixes of non-dictionary words 2016-10-17 23:16:55 +02:00
win32 packaging: update book URL in Mac and Windows READMEs 2017-10-20 13:54:51 -05:00
wix hgweb: implement json-graph 2017-12-07 17:18:29 +08:00
xdiff xdiff: add a binary utility that runs xdiff 2018-04-13 21:51:20 -07:00
all-revsets.txt spelling: fixes of non-dictionary words 2016-10-17 23:16:55 +02:00
asv.conf.json perf: add asv benchmarks 2016-09-29 10:16:34 +02:00
base-revsets.txt contrib: introduce an all-revsets.txt file 2015-06-16 22:15:30 -07:00
bash_completion bashcompletion: allow skipping completion for 'hg status' 2016-09-26 10:47:37 +02:00
bdiff-torture.py flake8: enable F821 check 2018-04-13 21:51:09 -07:00
build-linux-wheels.sh contrib: make build-linux-wheels.sh executable 2017-07-19 13:45:06 -04:00
builddeb build: "make deb" failed when the base path contained spaces 2017-10-11 01:47:00 +02:00
buildrpm build: build deb/rpm independently on config/extensions in the host system 2017-10-17 22:46:08 +02:00
casesmash.py casesmash: use absolute_import 2016-03-06 02:25:50 +05:30
check-code.py hg: fix tests on OSX 2018-04-13 21:51:24 -07:00
check-config.py check-config: mention the file and line of the error 2017-07-18 06:27:36 -07:00
check-py3-compat.py check: check modules in hgdemandimport 2017-05-21 13:44:26 -07:00
clang-format-blacklist xdiff: vendor xdiff library from git 2018-04-13 21:51:20 -07:00
debugcmdserver.py debugcmdserver: use absolute_import and print_function 2016-03-06 03:06:09 +05:30
dirstatenonnormalcheck.py dirstate: move nonnormal and otherparent sets to dirstatemap 2017-10-05 11:34:41 -07:00
dockerdeb dockerdeb: pass the rest of the args to the builder script 2016-04-23 12:47:57 -07:00
dockerlib.sh docker: pass proxy arguments to docker process 2017-07-27 13:44:15 +02:00
dockerrpm docker: pass proxy arguments to docker process 2017-07-27 13:44:15 +02:00
dumprevlog py3: make contrib/dumprevlog use print_function 2016-05-13 02:16:32 +05:30
editmerge editmerge: dequote other use of $ED 2015-10-19 21:36:12 -07:00
editmergeps.bat contrib: run editmergeps.ps1 from the same location as editmergeps.bat 2017-05-30 05:56:48 -07:00
editmergeps.ps1 contrib: remove unnecessary debug output from editmergeps.ps1 2017-05-30 06:22:14 -07:00
fixpax.py fixpax: use absolute_import and print_function 2016-03-06 03:10:17 +05:30
genosxversion.py osx: new script for generating OS X package versions 2017-07-24 20:38:09 -04:00
git-sl contrib: move builddeb to contrib/builddeb_fb/ 2018-01-09 16:44:27 -08:00
hg-new-workdir scripts: move fb-hgext/scripts/ to contrib/ 2018-01-09 16:22:02 -08:00
hg-ssh serve: move hg-ssh readonly logic into hg serve 2018-01-03 05:35:56 -08:00
hg-test-mode.el hg-test-mode: make exit code highlight work again 2014-08-12 12:53:23 -05:00
hgclient.py test-commandserver: handle cStringIO.StringIO/io.StringIO divergence 2016-04-06 20:34:34 +00:00
hggitperf.py hggit: internalize extension 2018-01-09 06:08:01 -08:00
hgk hgk: display committer name when set by hg-git 2015-04-03 22:44:25 +02:00
hgperf dispatch: move initialization of sys.std* files 2017-10-02 07:18:24 +01:00
hgweb.fcgi mq: add a warning about uncommitted changes for qfinish 2011-11-10 15:40:34 -06:00
hgweb.wsgi urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
import-checker.py dirstate: respect gitignore 2018-04-13 21:51:40 -07:00
lint.py contrib: move git-sl 2018-01-09 16:30:14 -08:00
linux-wheel-centos5-blacklist packaging: add make target for linux wheels 2017-04-25 16:50:01 +02:00
logo-droplets.svg logo: clean up source file with scour 2010-04-05 14:33:41 -05:00
Makefile.python contrib: disable SSLv3_method() to build old Python with recent libssl 2015-11-07 16:31:04 +09:00
memory.py atexit: switch to home-grown implementation 2017-04-11 14:54:12 -07:00
mercurial.el en-us: penalize 2012-08-17 13:58:19 -07:00
mercurial.spec rpms: add chg 2017-07-27 16:09:26 +02:00
mq.el Remove FSF mailing address from GPL headers 2012-01-06 16:27:13 +01:00
packagelib.sh build: build deb/rpm independently on config/extensions in the host system 2017-10-17 22:46:08 +02:00
perf.py flake8: enable F821 check 2018-04-13 21:51:09 -07:00
phabricator.py phabricator: add a config to use curl for communication 2017-09-01 12:13:17 -07:00
pylintrc codingstyle: remove trailing spaces in various text files 2013-04-17 03:40:18 +02:00
python3-ratchet.py contrib: add a ratchet for tests in Python 3 2017-06-15 11:00:29 -04:00
python3-whitelist py3: add 32 new tests passing to the whitelist 2017-12-10 05:41:05 +05:30
python-hook-examples.py contrib: python-hook-examples use absolute_import 2016-03-16 04:13:28 +05:30
revsetbenchmarks.py py3: make contrib/revsetbenchmarks.py not import symbols from stdlib modules 2016-05-14 14:23:04 +09:00
scm-prompt.sh Do not probe the home directory because autofs 2018-04-13 21:50:59 -07:00
showstack.py showstack: use absolute_import 2016-03-13 01:59:18 +05:30
simplemerge context: add arbitraryfilectx, which can represent files outside the workdir 2017-09-01 11:52:20 -07:00
synthrepo.py flake8: enable F821 check 2018-04-13 21:51:09 -07:00
tcsh_completion contrib: update tcsh_completion for Mercurial 1.8 2011-03-01 07:28:20 +01:00
tcsh_completion_build.sh contrib: update tcsh_completion for Mercurial 1.8 2011-03-01 07:28:20 +01:00
traceprof.py flake8: enable F821 check 2018-04-13 21:51:09 -07:00
undumprevlog undumprevlog: update to valid Python 3 syntax 2017-08-22 12:58:51 -04:00
unit.py scripts: move fb-hgext/scripts/ to contrib/ 2018-01-09 16:22:02 -08:00
utils.py scripts: move fb-hgext/scripts/ to contrib/ 2018-01-09 16:22:02 -08:00
with-hg-dev hg: remove facebook-hg-rpms related code 2018-04-13 21:51:20 -07:00
xml.rnc Added RelaxNG schema for hg log XML output format 2009-12-30 02:44:37 +01:00
zsh_completion zsh_completion: add '--partial' flag to completions for 'import' (issue5618) 2017-07-12 10:11:02 +02:00