Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
mercurial-devel
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
8
Issues
8
List
Boards
Labels
Service Desk
Milestones
Merge Requests
19
Merge Requests
19
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
octobus
mercurial-devel
Commits
84a0102c05c7
Commit
4b49f3be
authored
Jan 21, 2020
by
Augie Fackler
Browse files
Options
Browse Files
Download
Plain Diff
merge to stable for 5.3 release freeze
--HG-- branch : stable
parents
61881b170140
ff396501e841
Changes
541
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
541 changed files
with
24680 additions
and
10636 deletions
+24680
-10636
.arcconfig
.arcconfig
+1
-0
.hgignore
.hgignore
+1
-0
Makefile
Makefile
+3
-2
contrib/automation/hgautomation/aws.py
contrib/automation/hgautomation/aws.py
+1
-1
contrib/automation/hgautomation/windows.py
contrib/automation/hgautomation/windows.py
+2
-2
contrib/check-code.py
contrib/check-code.py
+3
-3
contrib/check-commit
contrib/check-commit
+20
-8
contrib/clang-format-ignorelist
contrib/clang-format-ignorelist
+6
-97
contrib/dumprevlog
contrib/dumprevlog
+6
-3
contrib/examples/fix.hgrc
contrib/examples/fix.hgrc
+8
-3
contrib/fuzz/FuzzedDataProvider.h
contrib/fuzz/FuzzedDataProvider.h
+368
-0
contrib/fuzz/Makefile
contrib/fuzz/Makefile
+61
-116
contrib/fuzz/bdiff.cc
contrib/fuzz/bdiff.cc
+11
-16
contrib/fuzz/dirs.cc
contrib/fuzz/dirs.cc
+4
-5
contrib/fuzz/dirs_corpus.py
contrib/fuzz/dirs_corpus.py
+29
-0
contrib/fuzz/dirstate.cc
contrib/fuzz/dirstate.cc
+4
-5
contrib/fuzz/dirstate_corpus.py
contrib/fuzz/dirstate_corpus.py
+1
-1
contrib/fuzz/fm1readmarkers.cc
contrib/fuzz/fm1readmarkers.cc
+4
-5
contrib/fuzz/fncache.cc
contrib/fuzz/fncache.cc
+9
-18
contrib/fuzz/fuzzutil.cc
contrib/fuzz/fuzzutil.cc
+0
-27
contrib/fuzz/fuzzutil.h
contrib/fuzz/fuzzutil.h
+0
-10
contrib/fuzz/jsonescapeu8fast.cc
contrib/fuzz/jsonescapeu8fast.cc
+5
-7
contrib/fuzz/manifest.cc
contrib/fuzz/manifest.cc
+4
-5
contrib/fuzz/mpatch.cc
contrib/fuzz/mpatch.cc
+5
-13
contrib/fuzz/mpatch_corpus.py
contrib/fuzz/mpatch_corpus.py
+292
-276
contrib/fuzz/pyutil.cc
contrib/fuzz/pyutil.cc
+31
-4
contrib/fuzz/pyutil.h
contrib/fuzz/pyutil.h
+6
-0
contrib/fuzz/revlog.cc
contrib/fuzz/revlog.cc
+4
-5
contrib/fuzz/revlog_corpus.py
contrib/fuzz/revlog_corpus.py
+3
-6
contrib/fuzz/standalone_fuzz_target_runner.cc
contrib/fuzz/standalone_fuzz_target_runner.cc
+45
-0
contrib/fuzz/xdiff.cc
contrib/fuzz/xdiff.cc
+13
-18
contrib/hg-ssh
contrib/hg-ssh
+22
-8
contrib/hgclient.py
contrib/hgclient.py
+1
-1
contrib/hgperf
contrib/hgperf
+25
-10
contrib/hgweb.fcgi
contrib/hgweb.fcgi
+6
-3
contrib/import-checker.py
contrib/import-checker.py
+2
-0
contrib/packaging/docker/ubuntu.template
contrib/packaging/docker/ubuntu.template
+3
-2
contrib/packaging/hg-docker
contrib/packaging/hg-docker
+28
-15
contrib/packaging/hgpackaging/cli.py
contrib/packaging/hgpackaging/cli.py
+153
-0
contrib/packaging/hgpackaging/inno.py
contrib/packaging/hgpackaging/inno.py
+84
-6
contrib/packaging/hgpackaging/py2exe.py
contrib/packaging/hgpackaging/py2exe.py
+74
-0
contrib/packaging/hgpackaging/util.py
contrib/packaging/hgpackaging/util.py
+60
-0
contrib/packaging/hgpackaging/wix.py
contrib/packaging/hgpackaging/wix.py
+213
-74
contrib/packaging/inno/build.py
contrib/packaging/inno/build.py
+0
-60
contrib/packaging/inno/mercurial.iss
contrib/packaging/inno/mercurial.iss
+12
-54
contrib/packaging/inno/modpath.iss
contrib/packaging/inno/modpath.iss
+29
-73
contrib/packaging/inno/readme.rst
contrib/packaging/inno/readme.rst
+8
-8
contrib/packaging/inno/requirements.txt
contrib/packaging/inno/requirements.txt
+1
-79
contrib/packaging/packaging.py
contrib/packaging/packaging.py
+74
-0
contrib/packaging/requirements.txt
contrib/packaging/requirements.txt
+39
-0
contrib/packaging/requirements.txt.in
contrib/packaging/requirements.txt.in
+1
-0
contrib/packaging/wix/build.py
contrib/packaging/wix/build.py
+0
-96
contrib/packaging/wix/contrib.wxs
contrib/packaging/wix/contrib.wxs
+0
-43
contrib/packaging/wix/dist.wxs
contrib/packaging/wix/dist.wxs
+0
-15
contrib/packaging/wix/doc.wxs
contrib/packaging/wix/doc.wxs
+0
-50
contrib/packaging/wix/guids.wxi
contrib/packaging/wix/guids.wxi
+0
-40
contrib/packaging/wix/help.wxs
contrib/packaging/wix/help.wxs
+0
-65
contrib/packaging/wix/i18n.wxs
contrib/packaging/wix/i18n.wxs
+0
-26
contrib/packaging/wix/locale.wxs
contrib/packaging/wix/locale.wxs
+0
-34
contrib/packaging/wix/mercurial.wxs
contrib/packaging/wix/mercurial.wxs
+9
-33
contrib/packaging/wix/readme.rst
contrib/packaging/wix/readme.rst
+7
-7
contrib/packaging/wix/requirements.txt
contrib/packaging/wix/requirements.txt
+13
-13
contrib/packaging/wix/requirements.txt.in
contrib/packaging/wix/requirements.txt.in
+2
-2
contrib/packaging/wix/templates.wxs
contrib/packaging/wix/templates.wxs
+0
-251
contrib/perf.py
contrib/perf.py
+57
-25
contrib/python-zstandard/NEWS.rst
contrib/python-zstandard/NEWS.rst
+20
-1
contrib/python-zstandard/README.rst
contrib/python-zstandard/README.rst
+1
-1
contrib/python-zstandard/c-ext/python-zstandard.h
contrib/python-zstandard/c-ext/python-zstandard.h
+1
-1
contrib/python-zstandard/make_cffi.py
contrib/python-zstandard/make_cffi.py
+104
-86
contrib/python-zstandard/setup.py
contrib/python-zstandard/setup.py
+44
-38
contrib/python-zstandard/setup_zstd.py
contrib/python-zstandard/setup_zstd.py
+120
-106
contrib/python-zstandard/tests/common.py
contrib/python-zstandard/tests/common.py
+44
-32
contrib/python-zstandard/tests/test_buffer_util.py
contrib/python-zstandard/tests/test_buffer_util.py
+69
-58
contrib/python-zstandard/tests/test_compressor.py
contrib/python-zstandard/tests/test_compressor.py
+423
-388
contrib/python-zstandard/tests/test_compressor_fuzzing.py
contrib/python-zstandard/tests/test_compressor_fuzzing.py
+381
-256
contrib/python-zstandard/tests/test_data_structures.py
contrib/python-zstandard/tests/test_data_structures.py
+68
-55
contrib/python-zstandard/tests/test_data_structures_fuzzing.py
...ib/python-zstandard/tests/test_data_structures_fuzzing.py
+79
-50
contrib/python-zstandard/tests/test_decompressor.py
contrib/python-zstandard/tests/test_decompressor.py
+395
-336
contrib/python-zstandard/tests/test_decompressor_fuzzing.py
contrib/python-zstandard/tests/test_decompressor_fuzzing.py
+213
-122
contrib/python-zstandard/tests/test_estimate_sizes.py
contrib/python-zstandard/tests/test_estimate_sizes.py
+3
-3
contrib/python-zstandard/tests/test_module_attributes.py
contrib/python-zstandard/tests/test_module_attributes.py
+47
-46
contrib/python-zstandard/tests/test_train_dictionary.py
contrib/python-zstandard/tests/test_train_dictionary.py
+25
-22
contrib/python-zstandard/zstandard/__init__.py
contrib/python-zstandard/zstandard/__init__.py
+28
-18
contrib/python-zstandard/zstandard/cffi.py
contrib/python-zstandard/zstandard/cffi.py
+625
-525
contrib/python-zstandard/zstd.c
contrib/python-zstandard/zstd.c
+1
-1
contrib/python-zstandard/zstd/common/bitstream.h
contrib/python-zstandard/zstd/common/bitstream.h
+3
-2
contrib/python-zstandard/zstd/common/compiler.h
contrib/python-zstandard/zstd/common/compiler.h
+14
-2
contrib/python-zstandard/zstd/common/fse.h
contrib/python-zstandard/zstd/common/fse.h
+1
-1
contrib/python-zstandard/zstd/common/fse_decompress.c
contrib/python-zstandard/zstd/common/fse_decompress.c
+2
-0
contrib/python-zstandard/zstd/common/mem.h
contrib/python-zstandard/zstd/common/mem.h
+73
-0
contrib/python-zstandard/zstd/common/pool.c
contrib/python-zstandard/zstd/common/pool.c
+7
-3
contrib/python-zstandard/zstd/common/threading.c
contrib/python-zstandard/zstd/common/threading.c
+46
-1
contrib/python-zstandard/zstd/common/threading.h
contrib/python-zstandard/zstd/common/threading.h
+32
-1
contrib/python-zstandard/zstd/common/zstd_internal.h
contrib/python-zstandard/zstd/common/zstd_internal.h
+32
-55
contrib/python-zstandard/zstd/compress/zstd_compress.c
contrib/python-zstandard/zstd/compress/zstd_compress.c
+633
-436
contrib/python-zstandard/zstd/compress/zstd_compress_internal.h
...b/python-zstandard/zstd/compress/zstd_compress_internal.h
+54
-12
contrib/python-zstandard/zstd/compress/zstd_compress_literals.c
...b/python-zstandard/zstd/compress/zstd_compress_literals.c
+10
-5
contrib/python-zstandard/zstd/compress/zstd_compress_literals.h
...b/python-zstandard/zstd/compress/zstd_compress_literals.h
+1
-1
contrib/python-zstandard/zstd/compress/zstd_compress_sequences.c
.../python-zstandard/zstd/compress/zstd_compress_sequences.c
+3
-3
contrib/python-zstandard/zstd/compress/zstd_compress_sequences.h
.../python-zstandard/zstd/compress/zstd_compress_sequences.h
+1
-1
contrib/python-zstandard/zstd/compress/zstd_cwksp.h
contrib/python-zstandard/zstd/compress/zstd_cwksp.h
+535
-0
contrib/python-zstandard/zstd/compress/zstd_double_fast.c
contrib/python-zstandard/zstd/compress/zstd_double_fast.c
+9
-9
contrib/python-zstandard/zstd/compress/zstd_fast.c
contrib/python-zstandard/zstd/compress/zstd_fast.c
+30
-39
contrib/python-zstandard/zstd/compress/zstd_lazy.c
contrib/python-zstandard/zstd/compress/zstd_lazy.c
+5
-5
contrib/python-zstandard/zstd/compress/zstd_ldm.c
contrib/python-zstandard/zstd/compress/zstd_ldm.c
+4
-4
contrib/python-zstandard/zstd/compress/zstd_opt.c
contrib/python-zstandard/zstd/compress/zstd_opt.c
+1
-1
contrib/python-zstandard/zstd/compress/zstdmt_compress.c
contrib/python-zstandard/zstd/compress/zstdmt_compress.c
+32
-26
contrib/python-zstandard/zstd/decompress/huf_decompress.c
contrib/python-zstandard/zstd/decompress/huf_decompress.c
+2
-0
contrib/python-zstandard/zstd/decompress/zstd_decompress.c
contrib/python-zstandard/zstd/decompress/zstd_decompress.c
+14
-16
contrib/python-zstandard/zstd/decompress/zstd_decompress_block.c
.../python-zstandard/zstd/decompress/zstd_decompress_block.c
+144
-146
contrib/python-zstandard/zstd/deprecated/zbuff.h
contrib/python-zstandard/zstd/deprecated/zbuff.h
+6
-5
contrib/python-zstandard/zstd/dictBuilder/cover.c
contrib/python-zstandard/zstd/dictBuilder/cover.c
+2
-2
contrib/python-zstandard/zstd/dictBuilder/zdict.c
contrib/python-zstandard/zstd/dictBuilder/zdict.c
+1
-1
contrib/python-zstandard/zstd/zstd.h
contrib/python-zstandard/zstd/zstd.h
+161
-59
contrib/python3-ratchet.py
contrib/python3-ratchet.py
+1
-1
contrib/relnotes
contrib/relnotes
+3
-0
contrib/simplemerge
contrib/simplemerge
+37
-22
contrib/testparseutil.py
contrib/testparseutil.py
+6
-6
contrib/undumprevlog
contrib/undumprevlog
+6
-7
contrib/vagrant/Vagrantfile
contrib/vagrant/Vagrantfile
+2
-2
contrib/win32/ReadMe.html
contrib/win32/ReadMe.html
+1
-2
contrib/win32/mercurial.ini
contrib/win32/mercurial.ini
+1
-1
doc/Makefile
doc/Makefile
+2
-2
doc/docchecker
doc/docchecker
+16
-8
doc/gendoc.py
doc/gendoc.py
+2
-6
doc/runrst
doc/runrst
+13
-8
hg
hg
+12
-5
hgdemandimport/demandimportpy2.py
hgdemandimport/demandimportpy2.py
+8
-8
hgdemandimport/demandimportpy3.py
hgdemandimport/demandimportpy3.py
+79
-32
hgext/absorb.py
hgext/absorb.py
+1
-1
hgext/acl.py
hgext/acl.py
+5
-5
hgext/beautifygraph.py
hgext/beautifygraph.py
+1
-1
hgext/blackbox.py
hgext/blackbox.py
+1
-1
hgext/bookflow.py
hgext/bookflow.py
+1
-1
hgext/bugzilla.py
hgext/bugzilla.py
+1
-2
hgext/censor.py
hgext/censor.py
+3
-0
hgext/churn.py
hgext/churn.py
+3
-3
hgext/commitextras.py
hgext/commitextras.py
+2
-2
hgext/convert/common.py
hgext/convert/common.py
+2
-2
hgext/convert/convcmd.py
hgext/convert/convcmd.py
+31
-26
hgext/convert/cvs.py
hgext/convert/cvs.py
+1
-3
hgext/convert/cvsps.py
hgext/convert/cvsps.py
+4
-6
hgext/convert/gnuarch.py
hgext/convert/gnuarch.py
+5
-5
hgext/convert/monotone.py
hgext/convert/monotone.py
+2
-2
hgext/convert/p4.py
hgext/convert/p4.py
+3
-3
hgext/convert/subversion.py
hgext/convert/subversion.py
+6
-6
hgext/extdiff.py
hgext/extdiff.py
+12
-11
hgext/fastannotate/commands.py
hgext/fastannotate/commands.py
+6
-6
hgext/fastannotate/context.py
hgext/fastannotate/context.py
+5
-3
hgext/fastannotate/support.py
hgext/fastannotate/support.py
+0
-1
hgext/fix.py
hgext/fix.py
+29
-42
hgext/fsmonitor/__init__.py
hgext/fsmonitor/__init__.py
+5
-3
hgext/fsmonitor/pywatchman/capabilities.py
hgext/fsmonitor/pywatchman/capabilities.py
+1
-3
hgext/fsmonitor/pywatchman/pybser.py
hgext/fsmonitor/pywatchman/pybser.py
+0
-1
hgext/fsmonitor/watchmanclient.py
hgext/fsmonitor/watchmanclient.py
+2
-2
hgext/githelp.py
hgext/githelp.py
+7
-7
hgext/gpg.py
hgext/gpg.py
+3
-3
hgext/graphlog.py
hgext/graphlog.py
+1
-1
hgext/hgk.py
hgext/hgk.py
+12
-12
hgext/highlight/__init__.py
hgext/highlight/__init__.py
+1
-1
hgext/histedit.py
hgext/histedit.py
+53
-37
hgext/infinitepush/__init__.py
hgext/infinitepush/__init__.py
+5
-5
hgext/infinitepush/common.py
hgext/infinitepush/common.py
+1
-1
hgext/infinitepush/store.py
hgext/infinitepush/store.py
+6
-4
hgext/journal.py
hgext/journal.py
+3
-3
hgext/keyword.py
hgext/keyword.py
+4
-4
hgext/largefiles/lfcommands.py
hgext/largefiles/lfcommands.py
+3
-3
hgext/largefiles/lfutil.py
hgext/largefiles/lfutil.py
+15
-8
hgext/largefiles/overrides.py
hgext/largefiles/overrides.py
+22
-31
hgext/largefiles/proto.py
hgext/largefiles/proto.py
+3
-3
hgext/largefiles/reposetup.py
hgext/largefiles/reposetup.py
+50
-67
hgext/lfs/__init__.py
hgext/lfs/__init__.py
+26
-4
hgext/lfs/blobstore.py
hgext/lfs/blobstore.py
+41
-22
hgext/lfs/wireprotolfsserver.py
hgext/lfs/wireprotolfsserver.py
+27
-27
hgext/lfs/wrapper.py
hgext/lfs/wrapper.py
+26
-7
hgext/mq.py
hgext/mq.py
+42
-35
hgext/narrow/__init__.py
hgext/narrow/__init__.py
+6
-6
hgext/narrow/narrowbundle2.py
hgext/narrow/narrowbundle2.py
+4
-4
hgext/narrow/narrowcommands.py
hgext/narrow/narrowcommands.py
+8
-7
hgext/narrow/narrowwirepeer.py
hgext/narrow/narrowwirepeer.py
+5
-5
hgext/notify.py
hgext/notify.py
+13
-13
hgext/patchbomb.py
hgext/patchbomb.py
+52
-71
hgext/phabricator.py
hgext/phabricator.py
+184
-38
hgext/rebase.py
hgext/rebase.py
+74
-122
hgext/record.py
hgext/record.py
+4
-4
hgext/releasenotes.py
hgext/releasenotes.py
+3
-7
hgext/remotefilelog/__init__.py
hgext/remotefilelog/__init__.py
+16
-20
hgext/remotefilelog/basepack.py
hgext/remotefilelog/basepack.py
+10
-10
hgext/remotefilelog/basestore.py
hgext/remotefilelog/basestore.py
+6
-6
hgext/remotefilelog/contentstore.py
hgext/remotefilelog/contentstore.py
+2
-2
hgext/remotefilelog/debugcommands.py
hgext/remotefilelog/debugcommands.py
+10
-10
hgext/remotefilelog/fileserverclient.py
hgext/remotefilelog/fileserverclient.py
+7
-5
hgext/remotefilelog/historypack.py
hgext/remotefilelog/historypack.py
+4
-4
hgext/remotefilelog/metadatastore.py
hgext/remotefilelog/metadatastore.py
+2
-2
hgext/remotefilelog/remotefilectx.py
hgext/remotefilelog/remotefilectx.py
+11
-11
hgext/remotefilelog/repack.py
hgext/remotefilelog/repack.py
+8
-8
hgext/remotefilelog/shallowbundle.py
hgext/remotefilelog/shallowbundle.py
+1
-1
hgext/remotefilelog/shallowutil.py
hgext/remotefilelog/shallowutil.py
+5
-5
hgext/schemes.py
hgext/schemes.py
+1
-1
hgext/share.py
hgext/share.py
+1
-1
hgext/sparse.py
hgext/sparse.py
+5
-5
hgext/split.py
hgext/split.py
+9
-27
hgext/sqlitestore.py
hgext/sqlitestore.py
+100
-100
hgext/transplant.py
hgext/transplant.py
+15
-17
hgext/uncommit.py
hgext/uncommit.py
+4
-3
hgext/zeroconf/Zeroconf.py
hgext/zeroconf/Zeroconf.py
+3
-3
hgext/zeroconf/__init__.py
hgext/zeroconf/__init__.py
+18
-18
hgweb.cgi
hgweb.cgi
+6
-3
i18n/hggettext
i18n/hggettext
+17
-9
i18n/polib.py
i18n/polib.py
+0
-12
i18n/posplit
i18n/posplit
+9
-4
mercurial/ancestor.py
mercurial/ancestor.py
+4
-4
mercurial/archival.py
mercurial/archival.py
+9
-7
mercurial/bookmarks.py
mercurial/bookmarks.py
+19
-14
mercurial/branchmap.py
mercurial/branchmap.py
+31
-7
mercurial/bundle2.py
mercurial/bundle2.py
+15
-11
mercurial/bundlerepo.py
mercurial/bundlerepo.py
+6
-7
mercurial/cext/dirs.c
mercurial/cext/dirs.c
+23
-1
mercurial/cext/manifest.c
mercurial/cext/manifest.c
+6
-6
mercurial/cext/parsers.c
mercurial/cext/parsers.c
+1
-1
mercurial/cext/revlog.c
mercurial/cext/revlog.c
+50
-9
mercurial/changegroup.py
mercurial/changegroup.py
+8
-8
mercurial/changelog.py
mercurial/changelog.py
+14
-117
mercurial/chgserver.py
mercurial/chgserver.py
+41
-6
mercurial/cmdutil.py
mercurial/cmdutil.py
+168
-69
mercurial/color.py
mercurial/color.py
+20
-17
mercurial/commands.py
mercurial/commands.py
+92
-80
mercurial/commandserver.py
mercurial/commandserver.py
+4
-4
mercurial/config.py
mercurial/config.py
+1
-1
mercurial/configitems.py
mercurial/configitems.py
+12
-0
mercurial/context.py
mercurial/context.py
+108
-37
mercurial/copies.py
mercurial/copies.py
+144
-33
mercurial/crecord.py
mercurial/crecord.py
+53
-59
mercurial/dagparser.py
mercurial/dagparser.py
+12
-4
mercurial/debugcommands.py
mercurial/debugcommands.py
+81
-58
mercurial/defaultrc/__init__.py
mercurial/defaultrc/__init__.py
+0
-0
mercurial/defaultrc/mergetools.rc
mercurial/defaultrc/mergetools.rc
+0
-0
mercurial/dirstate.py
mercurial/dirstate.py
+93
-76
mercurial/discovery.py
mercurial/discovery.py
+1
-1
mercurial/dispatch.py
mercurial/dispatch.py
+12
-8
mercurial/encoding.py
mercurial/encoding.py
+62
-13
mercurial/error.py
mercurial/error.py
+1
-1
mercurial/exchange.py
mercurial/exchange.py
+49
-35
mercurial/exchangev2.py
mercurial/exchangev2.py
+2
-2
mercurial/extensions.py
mercurial/extensions.py
+9
-7
mercurial/fancyopts.py
mercurial/fancyopts.py
+1
-1
mercurial/filemerge.py
mercurial/filemerge.py
+6
-6
mercurial/fileset.py
mercurial/fileset.py
+8
-7
mercurial/graphmod.py
mercurial/graphmod.py
+22
-21
mercurial/hbisect.py
mercurial/hbisect.py
+10
-0
mercurial/help.py
mercurial/help.py
+9
-7
mercurial/helptext/__init__.py
mercurial/helptext/__init__.py
+0
-0
mercurial/helptext/bundlespec.txt
mercurial/helptext/bundlespec.txt
+0
-0
mercurial/helptext/color.txt
mercurial/helptext/color.txt
+0
-0
mercurial/helptext/common.txt
mercurial/helptext/common.txt
+0
-0
mercurial/helptext/config.txt
mercurial/helptext/config.txt
+26
-19
mercurial/helptext/dates.txt
mercurial/helptext/dates.txt
+0
-0
mercurial/helptext/deprecated.txt
mercurial/helptext/deprecated.txt
+0
-0
mercurial/helptext/diffs.txt
mercurial/helptext/diffs.txt
+0
-0
mercurial/helptext/environment.txt
mercurial/helptext/environment.txt
+3
-0
mercurial/helptext/extensions.txt
mercurial/helptext/extensions.txt
+0
-0
mercurial/helptext/filesets.txt
mercurial/helptext/filesets.txt
+0
-0
mercurial/helptext/flags.txt
mercurial/helptext/flags.txt
+0
-0
mercurial/helptext/glossary.txt
mercurial/helptext/glossary.txt
+0
-0
mercurial/helptext/hg-ssh.8.txt
mercurial/helptext/hg-ssh.8.txt
+0
-0
mercurial/helptext/hg.1.txt
mercurial/helptext/hg.1.txt
+0
-0
mercurial/helptext/hgignore.5.txt
mercurial/helptext/hgignore.5.txt
+0
-0
mercurial/helptext/hgignore.txt
mercurial/helptext/hgignore.txt
+0
-0
mercurial/helptext/hgrc.5.txt
mercurial/helptext/hgrc.5.txt
+0
-0
mercurial/helptext/hgweb.txt
mercurial/helptext/hgweb.txt
+1
-1
mercurial/helptext/internals/__init__.py
mercurial/helptext/internals/__init__.py
+0
-0
mercurial/helptext/internals/bundle2.txt
mercurial/helptext/internals/bundle2.txt
+0
-0
mercurial/helptext/internals/bundles.txt
mercurial/helptext/internals/bundles.txt
+0
-0
mercurial/helptext/internals/cbor.txt
mercurial/helptext/internals/cbor.txt
+0
-0
mercurial/helptext/internals/censor.txt
mercurial/helptext/internals/censor.txt
+0
-0
mercurial/helptext/internals/changegroups.txt
mercurial/helptext/internals/changegroups.txt
+0
-0
mercurial/helptext/internals/config.txt
mercurial/helptext/internals/config.txt
+0
-0
mercurial/helptext/internals/extensions.txt
mercurial/helptext/internals/extensions.txt
+0
-0
mercurial/helptext/internals/linelog.txt
mercurial/helptext/internals/linelog.txt
+0
-0
mercurial/helptext/internals/mergestate.txt
mercurial/helptext/internals/mergestate.txt
+0
-0
mercurial/helptext/internals/requirements.txt
mercurial/helptext/internals/requirements.txt
+0
-0
mercurial/helptext/internals/revlogs.txt
mercurial/helptext/internals/revlogs.txt
+0
-0
mercurial/helptext/internals/wireprotocol.txt
mercurial/helptext/internals/wireprotocol.txt
+0
-0
mercurial/helptext/internals/wireprotocolrpc.txt
mercurial/helptext/internals/wireprotocolrpc.txt
+0
-0
mercurial/helptext/internals/wireprotocolv2.txt
mercurial/helptext/internals/wireprotocolv2.txt
+0
-0
mercurial/helptext/merge-tools.txt
mercurial/helptext/merge-tools.txt
+0
-0
mercurial/helptext/pager.txt
mercurial/helptext/pager.txt
+0
-0
mercurial/helptext/patterns.txt
mercurial/helptext/patterns.txt
+0
-0
mercurial/helptext/phases.txt
mercurial/helptext/phases.txt
+0
-0
mercurial/helptext/revisions.txt
mercurial/helptext/revisions.txt
+0
-0
mercurial/helptext/scripting.txt
mercurial/helptext/scripting.txt
+8
-0
mercurial/helptext/subrepos.txt
mercurial/helptext/subrepos.txt
+0
-0
mercurial/helptext/templates.txt
mercurial/helptext/templates.txt
+0
-0
mercurial/helptext/urls.txt
mercurial/helptext/urls.txt
+0
-0
mercurial/hg.py
mercurial/hg.py
+3
-4
mercurial/hgweb/__init__.py
mercurial/hgweb/__init__.py
+9
-9
mercurial/hgweb/common.py
mercurial/hgweb/common.py
+1
-3
mercurial/hgweb/hgwebdir_mod.py
mercurial/hgweb/hgwebdir_mod.py
+3
-2
mercurial/hgweb/server.py
mercurial/hgweb/server.py
+49
-50
mercurial/hgweb/webcommands.py
mercurial/hgweb/webcommands.py
+0
-1
mercurial/hgweb/webutil.py
mercurial/hgweb/webutil.py
+9
-1
mercurial/hgweb/wsgicgi.py
mercurial/hgweb/wsgicgi.py
+16
-16
mercurial/hgweb/wsgiheaders.py
mercurial/hgweb/wsgiheaders.py
+2
-2
mercurial/hook.py
mercurial/hook.py
+4
-3
mercurial/httppeer.py
mercurial/httppeer.py
+16
-16
mercurial/i18n.py
mercurial/i18n.py
+8
-11
mercurial/interfaces/dirstate.py
mercurial/interfaces/dirstate.py
+1
-1
mercurial/interfaces/repository.py
mercurial/interfaces/repository.py
+4
-2
mercurial/keepalive.py
mercurial/keepalive.py
+8
-8
mercurial/linelog.py
mercurial/linelog.py
+14
-8
mercurial/localrepo.py
mercurial/localrepo.py
+113
-47
mercurial/lock.py
mercurial/lock.py
+21
-12
mercurial/logcmdutil.py
mercurial/logcmdutil.py
+24
-8
mercurial/lsprof.py
mercurial/lsprof.py
+3
-3
mercurial/mail.py
mercurial/mail.py
+75
-41
mercurial/manifest.py
mercurial/manifest.py
+9
-4
mercurial/match.py
mercurial/match.py
+50
-62
mercurial/mdiff.py
mercurial/mdiff.py
+5
-2
mercurial/merge.py
mercurial/merge.py
+23
-19
mercurial/obsolete.py
mercurial/obsolete.py
+13
-11
mercurial/obsutil.py
mercurial/obsutil.py
+5
-5
mercurial/parser.py
mercurial/parser.py
+8
-7
mercurial/patch.py
mercurial/patch.py
+22
-13
mercurial/pathutil.py
mercurial/pathutil.py
+64
-0
mercurial/phases.py
mercurial/phases.py
+43
-22
mercurial/policy.py
mercurial/policy.py
+26
-26
mercurial/posix.py
mercurial/posix.py
+8
-5
mercurial/profiling.py
mercurial/profiling.py
+4
-4
mercurial/pure/charencode.py
mercurial/pure/charencode.py
+1
-1
mercurial/pure/osutil.py
mercurial/pure/osutil.py
+4
-4
mercurial/pure/parsers.py
mercurial/pure/parsers.py
+50
-2
mercurial/pvec.py
mercurial/pvec.py
+7
-6
mercurial/pycompat.py
mercurial/pycompat.py
+23
-6
mercurial/rcutil.py
mercurial/rcutil.py
+18
-11
mercurial/repair.py
mercurial/repair.py
+7
-4
mercurial/repoview.py
mercurial/repoview.py
+147
-13
mercurial/revlog.py
mercurial/revlog.py
+104
-73
mercurial/revlogutils/__init__.py
mercurial/revlogutils/__init__.py
+8
-0
mercurial/revlogutils/nodemap.py
mercurial/revlogutils/nodemap.py
+15
-0
mercurial/revlogutils/sidedata.py
mercurial/revlogutils/sidedata.py
+5
-5
mercurial/revset.py
mercurial/revset.py
+11
-14
mercurial/scmposix.py
mercurial/scmposix.py
+2
-2
mercurial/scmutil.py
mercurial/scmutil.py
+44
-63
mercurial/scmwindows.py
mercurial/scmwindows.py
+34
-18
mercurial/setdiscovery.py
mercurial/setdiscovery.py
+1
-1
mercurial/shelve.py
mercurial/shelve.py
+0
-2
mercurial/simplemerge.py
mercurial/simplemerge.py
+13
-1
mercurial/smartset.py
mercurial/smartset.py
+4
-4
mercurial/sparse.py
mercurial/sparse.py
+3
-3
mercurial/sslutil.py
mercurial/sslutil.py
+17
-18
mercurial/state.py
mercurial/state.py
+11
-0
mercurial/statichttprepo.py
mercurial/statichttprepo.py
+1
-1
mercurial/statprof.py
mercurial/statprof.py
+35
-35
mercurial/store.py
mercurial/store.py
+3
-3
mercurial/subrepo.py
mercurial/subrepo.py
+76
-62
mercurial/tags.py
mercurial/tags.py
+13
-3
mercurial/templatefilters.py
mercurial/templatefilters.py
+3
-3
mercurial/templatefuncs.py
mercurial/templatefuncs.py
+2
-4
mercurial/templater.py
mercurial/templater.py
+9
-3
mercurial/templates/json/map
mercurial/templates/json/map
+7
-2
mercurial/templateutil.py
mercurial/templateutil.py
+4
-2
mercurial/testing/revlog.py
mercurial/testing/revlog.py
+38
-0
mercurial/testing/storage.py
mercurial/testing/storage.py
+13
-13
mercurial/thirdparty/sha1dc/LICENSE.txt
mercurial/thirdparty/sha1dc/LICENSE.txt
+30
-0
mercurial/thirdparty/sha1dc/README.md
mercurial/thirdparty/sha1dc/README.md
+145
-0
mercurial/thirdparty/sha1dc/cext.c
mercurial/thirdparty/sha1dc/cext.c
+212
-0
mercurial/thirdparty/sha1dc/lib/sha1.c
mercurial/thirdparty/sha1dc/lib/sha1.c
+1911
-0
mercurial/thirdparty/sha1dc/lib/sha1.h
mercurial/thirdparty/sha1dc/lib/sha1.h
+117
-0
mercurial/thirdparty/sha1dc/lib/ubc_check.c
mercurial/thirdparty/sha1dc/lib/ubc_check.c
+374
-0
mercurial/thirdparty/sha1dc/lib/ubc_check.h
mercurial/thirdparty/sha1dc/lib/ubc_check.h
+57
-0
mercurial/transaction.py
mercurial/transaction.py
+16
-7
mercurial/ui.py
mercurial/ui.py
+75
-32
mercurial/unionrepo.py
mercurial/unionrepo.py
+3
-3
mercurial/upgrade.py
mercurial/upgrade.py
+21
-15
mercurial/url.py
mercurial/url.py
+8
-8
mercurial/urllibcompat.py
mercurial/urllibcompat.py
+2
-2
mercurial/util.py
mercurial/util.py
+180
-222
mercurial/utils/cborutil.py
mercurial/utils/cborutil.py
+9
-9
mercurial/utils/compression.py
mercurial/utils/compression.py
+2
-3
mercurial/utils/dateutil.py
mercurial/utils/dateutil.py
+5
-2
mercurial/utils/hashutil.py
mercurial/utils/hashutil.py
+10
-0
mercurial/utils/procutil.py
mercurial/utils/procutil.py
+41
-34
mercurial/utils/resourceutil.py
mercurial/utils/resourceutil.py
+84
-0
mercurial/utils/storageutil.py
mercurial/utils/storageutil.py
+3
-3
mercurial/utils/stringutil.py
mercurial/utils/stringutil.py
+3
-3
mercurial/verify.py
mercurial/verify.py
+7
-4
mercurial/vfs.py
mercurial/vfs.py
+32
-13
mercurial/win32.py
mercurial/win32.py
+66
-66
mercurial/windows.py
mercurial/windows.py
+22
-26
mercurial/wireprotoframing.py
mercurial/wireprotoframing.py
+12
-14
mercurial/wireprototypes.py
mercurial/wireprototypes.py
+1
-1
mercurial/wireprotov1peer.py
mercurial/wireprotov1peer.py
+4
-4
mercurial/wireprotov1server.py
mercurial/wireprotov1server.py
+1
-1
mercurial/wireprotov2peer.py
mercurial/wireprotov2peer.py
+1
-1
mercurial/wireprotov2server.py
mercurial/wireprotov2server.py
+2
-2
mercurial/worker.py
mercurial/worker.py
+2
-2
relnotes/next
relnotes/next
+21
-0
rust/Cargo.lock
rust/Cargo.lock
+84
-0
rust/README.rst
rust/README.rst
+34
-60
rust/chg/src/attachio.rs
rust/chg/src/attachio.rs
+36
-19
rust/chg/src/clientext.rs
rust/chg/src/clientext.rs
+25
-17
rust/chg/src/locator.rs
rust/chg/src/locator.rs
+21
-11
rust/chg/src/main.rs
rust/chg/src/main.rs
+19
-17
rust/chg/src/message.rs
rust/chg/src/message.rs
+30
-14
rust/chg/src/procutil.rs
rust/chg/src/procutil.rs
+1
-1
rust/chg/src/runcommand.rs
rust/chg/src/runcommand.rs
+29
-21
rust/chg/src/uihandler.rs
rust/chg/src/uihandler.rs
+7
-6
rust/hg-core/Cargo.toml
rust/hg-core/Cargo.toml
+2
-1
rust/hg-core/src/dirstate.rs
rust/hg-core/src/dirstate.rs
+8
-4
rust/hg-core/src/dirstate/dirs_multiset.rs
rust/hg-core/src/dirstate/dirs_multiset.rs
+59
-42
rust/hg-core/src/dirstate/dirstate_map.rs
rust/hg-core/src/dirstate/dirstate_map.rs
+39
-27
rust/hg-core/src/dirstate/parsers.rs
rust/hg-core/src/dirstate/parsers.rs
+14
-15
rust/hg-core/src/dirstate/status.rs
rust/hg-core/src/dirstate/status.rs
+249
-191
rust/hg-core/src/discovery.rs
rust/hg-core/src/discovery.rs
+9
-8
rust/hg-core/src/filepatterns.rs
rust/hg-core/src/filepatterns.rs
+5
-4
rust/hg-core/src/lib.rs
rust/hg-core/src/lib.rs
+26
-33
rust/hg-core/src/matchers.rs
rust/hg-core/src/matchers.rs
+179
-0
rust/hg-core/src/revlog.rs
rust/hg-core/src/revlog.rs
+38
-0
rust/hg-core/src/utils.rs
rust/hg-core/src/utils.rs
+20
-0
rust/hg-core/src/utils/files.rs
rust/hg-core/src/utils/files.rs
+1
-1
rust/hg-core/src/utils/hg_path.rs
rust/hg-core/src/utils/hg_path.rs
+76
-2
rust/hg-core/src/utils/path.rs
rust/hg-core/src/utils/path.rs
+314
-0
rust/hg-cpython/src/ancestors.rs
rust/hg-cpython/src/ancestors.rs
+5
-3
rust/hg-cpython/src/cindex.rs
rust/hg-cpython/src/cindex.rs
+45
-14
rust/hg-cpython/src/dagops.rs
rust/hg-cpython/src/dagops.rs
+4
-4
rust/hg-cpython/src/dirstate.rs
rust/hg-cpython/src/dirstate.rs
+3
-3
rust/hg-cpython/src/dirstate/copymap.rs
rust/hg-cpython/src/dirstate/copymap.rs
+3
-3
rust/hg-cpython/src/dirstate/dirs_multiset.rs
rust/hg-cpython/src/dirstate/dirs_multiset.rs
+27
-10
rust/hg-cpython/src/dirstate/dirstate_map.rs
rust/hg-cpython/src/dirstate/dirstate_map.rs
+34
-16
rust/hg-cpython/src/dirstate/status.rs
rust/hg-cpython/src/dirstate/status.rs
+70
-23
rust/hg-cpython/src/discovery.rs
rust/hg-cpython/src/discovery.rs
+3
-1
rust/hg-cpython/src/filepatterns.rs
rust/hg-cpython/src/filepatterns.rs
+0
-1
rust/hg-cpython/src/lib.rs
rust/hg-cpython/src/lib.rs
+2
-0
rust/hg-cpython/src/parsers.rs
rust/hg-cpython/src/parsers.rs
+5
-6
rust/hg-cpython/src/ref_sharing.rs
rust/hg-cpython/src/ref_sharing.rs
+283
-170
rust/hg-cpython/src/revlog.rs
rust/hg-cpython/src/revlog.rs
+235
-0
rust/hgcli/README.rst
rust/hgcli/README.rst
+58
-0
rust/hgcli/build.rs
rust/hgcli/build.rs
+4
-5
rust/hgcli/src/main.rs
rust/hgcli/src/main.rs
+2
-2
setup.py
setup.py
+49
-38
tests/f
tests/f
+84
-47
tests/fakedirstatewritetime.py
tests/fakedirstatewritetime.py
+2
-2
tests/hghave
tests/hghave
+15
-6
tests/hghave.py
tests/hghave.py
+41
-1
tests/phabricator/accept-4564.json
tests/phabricator/accept-4564.json
+141
-0
tests/phabricator/accept-7913.json
tests/phabricator/accept-7913.json
+141
-0
tests/phabricator/phab-conduit.json
tests/phabricator/phab-conduit.json
+73
-0
tests/phabricator/phabread-4480.json
tests/phabricator/phabread-4480.json
+209
-0
tests/phabricator/phabread-conduit-error.json
tests/phabricator/phabread-conduit-error.json
+73
-0
tests/phabricator/phabread-str-time.json
tests/phabricator/phabread-str-time.json
+209
-0
tests/phabricator/phabsend-comment-created.json
tests/phabricator/phabsend-comment-created.json
+617
-0
tests/phabricator/phabsend-comment-updated.json
tests/phabricator/phabsend-comment-updated.json
+549
-0
tests/phabricator/phabsend-create-alpha.json
tests/phabricator/phabsend-create-alpha.json
+617
-0
tests/phabricator/phabsend-create-public.json
tests/phabricator/phabsend-create-public.json
+957
-0
tests/phabricator/phabsend-skipped.json
tests/phabricator/phabsend-skipped.json
+141
-0
tests/phabricator/phabsend-update-alpha-create-beta.json
tests/phabricator/phabsend-update-alpha-create-beta.json
+1028
-0
tests/pullext.py
tests/pullext.py
+4
-4
tests/run-tests.py
tests/run-tests.py
+34
-14
tests/simplestorerepo.py
tests/simplestorerepo.py
+3
-3
tests/test-amend-subrepo.t
tests/test-amend-subrepo.t
+31
-0
tests/test-amend.t
tests/test-amend.t
+32
-2
tests/test-archive.t
tests/test-archive.t
+2
-2
tests/test-blackbox.t
tests/test-blackbox.t
+9
-2
tests/test-bookmarks.t
tests/test-bookmarks.t
+27
-6
tests/test-byteify-strings.t
tests/test-byteify-strings.t
+1
-1
tests/test-cbor.py
tests/test-cbor.py
+1
-1
tests/test-censor.t
tests/test-censor.t
+27
-0
tests/test-check-code.t
tests/test-check-code.t
+9
-2
tests/test-check-config.t
tests/test-check-config.t
+1
-1
tests/test-check-format.t
tests/test-check-format.t
+1
-1
tests/test-check-py3-compat.t
tests/test-check-py3-compat.t
+4
-3
tests/test-check-pyflakes.t
tests/test-check-pyflakes.t
+1
-0
tests/test-check-rust-format.t
tests/test-check-rust-format.t
+9
-0
tests/test-check-shbang.t
tests/test-check-shbang.t
+1
-0
tests/test-chg.t
tests/test-chg.t
+26
-2
tests/test-commit-interactive-curses.t
tests/test-commit-interactive-curses.t
+27
-8
tests/test-completion.t
tests/test-completion.t
+1
-1
tests/test-config-env.py
tests/test-config-env.py
+3
-1
tests/test-conflict.t
tests/test-conflict.t
+9
-1
tests/test-contrib-perf.t
tests/test-contrib-perf.t
+1
-0
tests/test-demandimport.py
tests/test-demandimport.py
+6
-2
tests/test-dirs.py
tests/test-dirs.py
+27
-0
tests/test-docker-packaging.t
tests/test-docker-packaging.t
+1
-1
tests/test-doctest.py
tests/test-doctest.py
+1
-0
tests/test-extdiff.t
tests/test-extdiff.t
+28
-0
tests/test-fileset.t
tests/test-fileset.t
+4
-4
tests/test-fix.t
tests/test-fix.t
+269
-5
tests/test-flagprocessor.t
tests/test-flagprocessor.t
+2
-1
tests/test-fuzz-targets.t
tests/test-fuzz-targets.t
+24
-6
tests/test-graft-interrupted.t
tests/test-graft-interrupted.t
+771
-0
tests/test-graft-rename.t
tests/test-graft-rename.t
+724
-0
tests/test-graft.t
tests/test-graft.t
+27
-1548
tests/test-hashutil.py
tests/test-hashutil.py
+80
-0
tests/test-hgrc.t
tests/test-hgrc.t
+13
-3
tests/test-hgweb-json.t
tests/test-hgweb-json.t
+145
-0
tests/test-highlight.t
tests/test-highlight.t
+4
-2
tests/test-histedit-obsolete.t
tests/test-histedit-obsolete.t
+1
-1
tests/test-hook.t
tests/test-hook.t
+2
-0
tests/test-import.t
tests/test-import.t
+43
-0
tests/test-imports-checker.t
tests/test-imports-checker.t
+6
-0
tests/test-install.t
tests/test-install.t
+1
-74
tests/test-issue1175.t
tests/test-issue1175.t
+0
-1
tests/test-largefiles-misc.t
tests/test-largefiles-misc.t
+1
-1
tests/test-lfs-serve-access.t
tests/test-lfs-serve-access.t
+15
-11
tests/test-lfs.t
tests/test-lfs.t
+69
-1
tests/test-linelog.py
tests/test-linelog.py
+1
-1
tests/test-lock.py
tests/test-lock.py
+1
-1
tests/test-log-linerange.t
tests/test-log-linerange.t
+109
-3
tests/test-manifest.py
tests/test-manifest.py
+15
-8
tests/test-manifest.t
tests/test-manifest.t
+100
-0
tests/test-match.py
tests/test-match.py
+179
-58
tests/test-merge-default.t
tests/test-merge-default.t
+17
-2
tests/test-merge-tools.t
tests/test-merge-tools.t
+3
-0
tests/test-parseindex2.py
tests/test-parseindex2.py
+29
-1
tests/test-phabricator.t
tests/test-phabricator.t
+224
-0
tests/test-phases.t
tests/test-phases.t
+46
-1
tests/test-rebase-collapse.t
tests/test-rebase-collapse.t
+13
-1
tests/test-rebase-inmemory.t
tests/test-rebase-inmemory.t
+65
-7
tests/test-rebase-obsolete.t
tests/test-rebase-obsolete.t
+3
-3
tests/test-rebase-parameters.t
tests/test-rebase-parameters.t
+5
-5
tests/test-rebase-scenario-global.t
tests/test-rebase-scenario-global.t
+9
-8
tests/test-releasenotes-formatting.t
tests/test-releasenotes-formatting.t
+2
-2
tests/test-remotefilelog-datapack.py
tests/test-remotefilelog-datapack.py
+1
-1
tests/test-remotefilelog-histpack.py
tests/test-remotefilelog-histpack.py
+1
-1
tests/test-remotefilelog-prefetch.t
tests/test-remotefilelog-prefetch.t
+33
-0
tests/test-repair-strip.t
tests/test-repair-strip.t
+2
-2
tests/test-repo-filters-tiptoe.t
tests/test-repo-filters-tiptoe.t
+146
-0
tests/test-rust-ancestor.py
tests/test-rust-ancestor.py
+14
-29
tests/test-rust-revlog.py
tests/test-rust-revlog.py
+60
-0
tests/test-shelve.t
tests/test-shelve.t
+10
-0
tests/test-split.t
tests/test-split.t
+3
-3
tests/test-status.t
tests/test-status.t
+9
-0
tests/test-subrepo-svn.t
tests/test-subrepo-svn.t
+14
-8
tests/test-template-functions.t
tests/test-template-functions.t
+15
-0
tests/test-transplant.t
tests/test-transplant.t
+2
-2
tests/test-trusted.py.out
tests/test-trusted.py.out
+1
-1
tests/test-unamend.t
tests/test-unamend.t
+8
-0
tests/test-uncommit.t
tests/test-uncommit.t
+2
-2
tests/test-update-branches.t
tests/test-update-branches.t
+79
-0
tests/test-worker.t
tests/test-worker.t
+4
-0
tests/test-wsgirequest.py
tests/test-wsgirequest.py
+36
-39
No files found.
.arcconfig
View file @
84a0102c05c7
{
"conduit_uri": "https://phab.mercurial-scm.org/api",
"phabricator.uri": "https://phab.mercurial-scm.org/",
"repository.callsign": "HG",
"arc.land.onto.default": "@",
"base": "hg:.^"
...
...
.hgignore
View file @
84a0102c05c7
...
...
@@ -51,6 +51,7 @@ tags
cscope.*
.idea/*
.asv/*
.pytype/*
i18n/hg.pot
locale/*/LC_MESSAGES/hg.mo
hgext/__index__.py
...
...
Makefile
View file @
84a0102c05c7
...
...
@@ -11,7 +11,7 @@ HGPYTHONS ?= $(HGROOT)/build/pythons
PURE
=
PYFILESCMD
=
find mercurial hgext doc
-name
'*.py'
PYFILES
:=
$(
shell
$(PYFILESCMD)
)
DOCFILES
=
mercurial/help/
*
.txt
DOCFILES
=
mercurial/help
text
/
*
.txt
export
LANGUAGE
=
C
export
LC_ALL
=
C
TESTFLAGS
?=
$(
shell
echo
$$
HGTESTFLAGS
)
...
...
@@ -189,7 +189,8 @@ packaging_targets := \
docker-centos6
\
docker-centos7
\
docker-centos8
\
docker-debian-jessie
\
docker-debian-bullseye
\
docker-debian-buster
\
docker-debian-stretch
\
docker-fedora
\
docker-ubuntu-trusty
\
...
...
contrib/automation/hgautomation/aws.py
View file @
84a0102c05c7
...
...
@@ -59,7 +59,7 @@ DEBIAN_ACCOUNT_ID_2 = '136693071363'
UBUNTU_ACCOUNT_ID
=
'099720109477'
WINDOWS_BASE_IMAGE_NAME
=
'Windows_Server-2019-English-Full-Base-2019.
07.12
'
WINDOWS_BASE_IMAGE_NAME
=
'Windows_Server-2019-English-Full-Base-2019.
11.13
'
KEY_PAIRS
=
{
...
...
contrib/automation/hgautomation/windows.py
View file @
84a0102c05c7
...
...
@@ -71,7 +71,7 @@ Write-Output "updated Mercurial working directory to {revision}"
BUILD_INNO
=
r
'''
Set-Location C:\hgdev\src
$python = "C:\hgdev\python27-{arch}\python.exe"
C:\hgdev\python37-x64\python.exe contrib\packaging\
inno\build.py
--python $python
C:\hgdev\python37-x64\python.exe contrib\packaging\
packaging.py inno
--python $python
if ($LASTEXITCODE -ne 0) {{
throw "process exited non-0: $LASTEXITCODE"
}}
...
...
@@ -88,7 +88,7 @@ if ($LASTEXITCODE -ne 0) {{
BUILD_WIX
=
r
'''
Set-Location C:\hgdev\src
$python = "C:\hgdev\python27-{arch}\python.exe"
C:\hgdev\python37-x64\python.exe contrib\packaging\
wix\build.py
--python $python {extra_args}
C:\hgdev\python37-x64\python.exe contrib\packaging\
packaging.py wix
--python $python {extra_args}
if ($LASTEXITCODE -ne 0) {{
throw "process exited non-0: $LASTEXITCODE"
}}
...
...
contrib/check-code.py
View file @
84a0102c05c7
...
...
@@ -281,10 +281,10 @@ for i in [0, 1]:
for
tp
in
testpats
[
i
]:
p
=
tp
[
0
]
m
=
tp
[
1
]
if
p
.
startswith
(
r
'^'
):
p
=
r
"^ [$>] (%s)"
%
p
[
1
:]
if
p
.
startswith
(
'^'
):
p
=
"^ [$>] (%s)"
%
p
[
1
:]
else
:
p
=
r
"^ [$>] .*(%s)"
%
p
p
=
"^ [$>] .*(%s)"
%
p
utestpats
[
i
].
append
((
p
,
m
)
+
tp
[
2
:])
# don't transform the following rules:
...
...
contrib/check-commit
View file @
84a0102c05c7
...
...
@@ -27,32 +27,42 @@ beforepatch = afterheader + r"(?!\n(?!@@))"
errors
=
[
(
beforepatch
+
r
".*[(]bc[)]"
,
"(BC) needs to be uppercase"
),
(
beforepatch
+
r
".*[(]issue \d\d\d"
,
"no space allowed between issue and number"
),
(
beforepatch
+
r
".*[(]issue \d\d\d"
,
"no space allowed between issue and number"
,
),
(
beforepatch
+
r
".*[(]bug(\d|\s)"
,
"use (issueDDDD) instead of bug"
),
(
commitheader
+
r
"# User [^@\n]+\n"
,
"username is not an email address"
),
(
commitheader
+
r
"(?!merge with )[^#]\S+[^:] "
,
"summary line doesn't start with 'topic: '"
),
(
commitheader
+
r
"(?!merge with )[^#]\S+[^:] "
,
"summary line doesn't start with 'topic: '"
,
),
(
afterheader
+
r
"[A-Z][a-z]\S+"
,
"don't capitalize summary lines"
),
(
afterheader
+
r
"^\S+: *[A-Z][a-z]\S+"
,
"don't capitalize summary lines"
),
(
afterheader
+
r
"\S*[^A-Za-z0-9-_]\S*: "
,
"summary keyword should be most user-relevant one-word command or topic"
),
(
afterheader
+
r
"\S*[^A-Za-z0-9-_]\S*: "
,
"summary keyword should be most user-relevant one-word command or topic"
,
),
(
afterheader
+
r
".*\.\s*\n"
,
"don't add trailing period on summary line"
),
(
afterheader
+
r
".{79,}"
,
"summary line too long (limit is 78)"
),
]
word
=
re
.
compile
(
r
'\S'
)
def
nonempty
(
first
,
second
):
if
word
.
search
(
first
):
return
first
return
second
def
checkcommit
(
commit
,
node
=
None
):
exitcode
=
0
printed
=
node
is
None
hits
=
[]
signtag
=
(
afterheader
+
r
'Added (tag [^ ]+|signature) for changeset [a-f0-9]{12}'
)
signtag
=
(
afterheader
+
r
'Added (tag [^ ]+|signature) for changeset [a-f0-9]{12}'
)
if
re
.
search
(
signtag
,
commit
):
return
0
for
exp
,
msg
in
errors
:
...
...
@@ -84,9 +94,11 @@ def checkcommit(commit, node=None):
return
exitcode
def
readcommit
(
node
):
return
os
.
popen
(
"hg export %s"
%
node
).
read
()
if
__name__
==
"__main__"
:
exitcode
=
0
node
=
os
.
environ
.
get
(
"HG_NODE"
)
...
...
contrib/clang-format-ignorelist
View file @
84a0102c05c7
...
...
@@ -3,100 +3,9 @@
mercurial/cext/manifest.c
mercurial/cext/osutil.c
# Vendored code that we should never format:
contrib/python-zstandard/c-ext/bufferutil.c
contrib/python-zstandard/c-ext/compressionchunker.c
contrib/python-zstandard/c-ext/compressiondict.c
contrib/python-zstandard/c-ext/compressionparams.c
contrib/python-zstandard/c-ext/compressionreader.c
contrib/python-zstandard/c-ext/compressionwriter.c
contrib/python-zstandard/c-ext/compressobj.c
contrib/python-zstandard/c-ext/compressor.c
contrib/python-zstandard/c-ext/compressoriterator.c
contrib/python-zstandard/c-ext/constants.c
contrib/python-zstandard/c-ext/decompressionreader.c
contrib/python-zstandard/c-ext/decompressionwriter.c
contrib/python-zstandard/c-ext/decompressobj.c
contrib/python-zstandard/c-ext/decompressor.c
contrib/python-zstandard/c-ext/decompressoriterator.c
contrib/python-zstandard/c-ext/frameparams.c
contrib/python-zstandard/c-ext/python-zstandard.h
contrib/python-zstandard/zstd.c
contrib/python-zstandard/zstd/common/bitstream.h
contrib/python-zstandard/zstd/common/compiler.h
contrib/python-zstandard/zstd/common/cpu.h
contrib/python-zstandard/zstd/common/debug.c
contrib/python-zstandard/zstd/common/debug.h
contrib/python-zstandard/zstd/common/entropy_common.c
contrib/python-zstandard/zstd/common/error_private.c
contrib/python-zstandard/zstd/common/error_private.h
contrib/python-zstandard/zstd/common/fse_decompress.c
contrib/python-zstandard/zstd/common/fse.h
contrib/python-zstandard/zstd/common/huf.h
contrib/python-zstandard/zstd/common/mem.h
contrib/python-zstandard/zstd/common/pool.c
contrib/python-zstandard/zstd/common/pool.h
contrib/python-zstandard/zstd/common/threading.c
contrib/python-zstandard/zstd/common/threading.h
contrib/python-zstandard/zstd/common/xxhash.c
contrib/python-zstandard/zstd/common/xxhash.h
contrib/python-zstandard/zstd/common/zstd_common.c
contrib/python-zstandard/zstd/common/zstd_errors.h
contrib/python-zstandard/zstd/common/zstd_internal.h
contrib/python-zstandard/zstd/compress/fse_compress.c
contrib/python-zstandard/zstd/compress/hist.c
contrib/python-zstandard/zstd/compress/hist.h
contrib/python-zstandard/zstd/compress/huf_compress.c
contrib/python-zstandard/zstd/compress/zstd_compress.c
contrib/python-zstandard/zstd/compress/zstd_compress_internal.h
contrib/python-zstandard/zstd/compress/zstd_compress_literals.c
contrib/python-zstandard/zstd/compress/zstd_compress_literals.h
contrib/python-zstandard/zstd/compress/zstd_compress_sequences.c
contrib/python-zstandard/zstd/compress/zstd_compress_sequences.h
contrib/python-zstandard/zstd/compress/zstd_double_fast.c
contrib/python-zstandard/zstd/compress/zstd_double_fast.h
contrib/python-zstandard/zstd/compress/zstd_fast.c
contrib/python-zstandard/zstd/compress/zstd_fast.h
contrib/python-zstandard/zstd/compress/zstd_lazy.c
contrib/python-zstandard/zstd/compress/zstd_lazy.h
contrib/python-zstandard/zstd/compress/zstd_ldm.c
contrib/python-zstandard/zstd/compress/zstd_ldm.h
contrib/python-zstandard/zstd/compress/zstdmt_compress.c
contrib/python-zstandard/zstd/compress/zstdmt_compress.h
contrib/python-zstandard/zstd/compress/zstd_opt.c
contrib/python-zstandard/zstd/compress/zstd_opt.h
contrib/python-zstandard/zstd/decompress/huf_decompress.c
contrib/python-zstandard/zstd/decompress/zstd_ddict.c
contrib/python-zstandard/zstd/decompress/zstd_ddict.h
contrib/python-zstandard/zstd/decompress/zstd_decompress_block.c
contrib/python-zstandard/zstd/decompress/zstd_decompress_block.h
contrib/python-zstandard/zstd/decompress/zstd_decompress_internal.h
contrib/python-zstandard/zstd/decompress/zstd_decompress.c
contrib/python-zstandard/zstd/deprecated/zbuff_common.c
contrib/python-zstandard/zstd/deprecated/zbuff_compress.c
contrib/python-zstandard/zstd/deprecated/zbuff_decompress.c
contrib/python-zstandard/zstd/deprecated/zbuff.h
contrib/python-zstandard/zstd/dictBuilder/cover.c
contrib/python-zstandard/zstd/dictBuilder/cover.h
contrib/python-zstandard/zstd/dictBuilder/divsufsort.c
contrib/python-zstandard/zstd/dictBuilder/divsufsort.h
contrib/python-zstandard/zstd/dictBuilder/fastcover.c
contrib/python-zstandard/zstd/dictBuilder/zdict.c
contrib/python-zstandard/zstd/dictBuilder/zdict.h
contrib/python-zstandard/zstd/zstd.h
hgext/fsmonitor/pywatchman/bser.c
mercurial/thirdparty/xdiff/xdiff.h
mercurial/thirdparty/xdiff/xdiffi.c
mercurial/thirdparty/xdiff/xdiffi.h
mercurial/thirdparty/xdiff/xemit.c
mercurial/thirdparty/xdiff/xemit.h
mercurial/thirdparty/xdiff/xhistogram.c
mercurial/thirdparty/xdiff/xinclude.h
mercurial/thirdparty/xdiff/xmacros.h
mercurial/thirdparty/xdiff/xmerge.c
mercurial/thirdparty/xdiff/xpatience.c
mercurial/thirdparty/xdiff/xprepare.c
mercurial/thirdparty/xdiff/xprepare.h
mercurial/thirdparty/xdiff/xtypes.h
mercurial/thirdparty/xdiff/xutils.c
mercurial/thirdparty/xdiff/xutils.h
mercurial/thirdparty/zope/interface/_zope_interface_coptimizations.c
syntax: glob
contrib/python-zstandard/**.c
contrib/python-zstandard/**.h
hgext/fsmonitor/pywatchman/**.c
mercurial/thirdparty/**.c
mercurial/thirdparty/**.h
contrib/dumprevlog
View file @
84a0102c05c7
...
...
@@ -11,23 +11,26 @@ from mercurial import (
pycompat
,
revlog
,
)
from
mercurial.utils
import
(
procutil
,
)
from
mercurial.utils
import
procutil
for
fp
in
(
sys
.
stdin
,
sys
.
stdout
,
sys
.
stderr
):
procutil
.
setbinary
(
fp
)
def
binopen
(
path
,
mode
=
b
'rb'
):
if
b
'b'
not
in
mode
:
mode
=
mode
+
b
'b'
return
open
(
path
,
pycompat
.
sysstr
(
mode
))
binopen
.
options
=
{}
def
printb
(
data
,
end
=
b
'
\n
'
):
sys
.
stdout
.
flush
()
pycompat
.
stdout
.
write
(
data
+
end
)
for
f
in
sys
.
argv
[
1
:]:
r
=
revlog
.
revlog
(
binopen
,
encoding
.
strtolocal
(
f
))
print
(
"file:"
,
f
)
...
...
contrib/examples/fix.hgrc
View file @
84a0102c05c7
[fix]
clang-format:command = clang-format --style file
-i
clang-format:pattern =
(**.c or **.cc or **.h) and not "listfil
e:contrib/clang-format-ignorelist"
clang-format:command = clang-format --style file
clang-format:pattern =
set:(**.c or **.cc or **.h) and not "includ
e:contrib/clang-format-ignorelist"
rustfmt:command = rustfmt
{rootpath}
rustfmt:command = rustfmt
+nightly
rustfmt:pattern = set:**.rs
black:command = black --config=black.toml -
black:pattern = set:**.py - mercurial/thirdparty/** - "contrib/python-zstandard/**"
# Mercurial doesn't have any Go code, but if we did this is how we
# would configure `hg fix` for Go:
go:command = gofmt
go:pattern = set:**.go
contrib/fuzz/FuzzedDataProvider.h
0 → 100644
View file @
84a0102c05c7
//===- FuzzedDataProvider.h - Utility header for fuzz targets ---*- C++ -* ===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// A single header library providing an utility class to break up an array of
// bytes. Whenever run on the same input, provides the same output, as long as
// its methods are called in the same order, with the same arguments.
//===----------------------------------------------------------------------===//
#ifndef LLVM_FUZZER_FUZZED_DATA_PROVIDER_H_
#define LLVM_FUZZER_FUZZED_DATA_PROVIDER_H_
#include <algorithm>
#include <climits>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <initializer_list>
#include <string>
#include <type_traits>
#include <utility>
#include <vector>
// In addition to the comments below, the API is also briefly documented at
// https://github.com/google/fuzzing/blob/master/docs/split-inputs.md#fuzzed-data-provider
class
FuzzedDataProvider
{
public:
// |data| is an array of length |size| that the FuzzedDataProvider wraps
// to provide more granular access. |data| must outlive the
// FuzzedDataProvider.
FuzzedDataProvider
(
const
uint8_t
*
data
,
size_t
size
)
:
data_ptr_
(
data
),
remaining_bytes_
(
size
)
{
}
~
FuzzedDataProvider
()
=
default
;
// Returns a std::vector containing |num_bytes| of input data. If fewer
// than |num_bytes| of data remain, returns a shorter std::vector
// containing all of the data that's left. Can be used with any byte
// sized type, such as char, unsigned char, uint8_t, etc.
template
<
typename
T
>
std
::
vector
<
T
>
ConsumeBytes
(
size_t
num_bytes
)
{
num_bytes
=
std
::
min
(
num_bytes
,
remaining_bytes_
);
return
ConsumeBytes
<
T
>
(
num_bytes
,
num_bytes
);
}
// Similar to |ConsumeBytes|, but also appends the terminator value at
// the end of the resulting vector. Useful, when a mutable
// null-terminated C-string is needed, for example. But that is a rare
// case. Better avoid it, if possible, and prefer using |ConsumeBytes|
// or |ConsumeBytesAsString| methods.
template
<
typename
T
>
std
::
vector
<
T
>
ConsumeBytesWithTerminator
(
size_t
num_bytes
,
T
terminator
=
0
)
{
num_bytes
=
std
::
min
(
num_bytes
,
remaining_bytes_
);
std
::
vector
<
T
>
result
=
ConsumeBytes
<
T
>
(
num_bytes
+
1
,
num_bytes
);
result
.
back
()
=
terminator
;
return
result
;
}
// Returns a std::string containing |num_bytes| of input data. Using
// this and
// |.c_str()| on the resulting string is the best way to get an
// immutable null-terminated C string. If fewer than |num_bytes| of data
// remain, returns a shorter std::string containing all of the data
// that's left.
std
::
string
ConsumeBytesAsString
(
size_t
num_bytes
)
{
static_assert
(
sizeof
(
std
::
string
::
value_type
)
==
sizeof
(
uint8_t
),
"ConsumeBytesAsString cannot convert the data to "
"a string."
);
num_bytes
=
std
::
min
(
num_bytes
,
remaining_bytes_
);
std
::
string
result
(
reinterpret_cast
<
const
std
::
string
::
value_type
*>
(
data_ptr_
),
num_bytes
);
Advance
(
num_bytes
);
return
result
;
}
// Returns a number in the range [min, max] by consuming bytes from the
// input data. The value might not be uniformly distributed in the given
// range. If there's no input data left, always returns |min|. |min|
// must be less than or equal to |max|.
template
<
typename
T
>
T
ConsumeIntegralInRange
(
T
min
,
T
max
)
{
static_assert
(
std
::
is_integral
<
T
>::
value
,
"An integral type is required."
);
static_assert
(
sizeof
(
T
)
<=
sizeof
(
uint64_t
),
"Unsupported integral type."
);
if
(
min
>
max
)
abort
();
// Use the biggest type possible to hold the range and the
// result.
uint64_t
range
=
static_cast
<
uint64_t
>
(
max
)
-
min
;
uint64_t
result
=
0
;
size_t
offset
=
0
;
while
(
offset
<
sizeof
(
T
)
*
CHAR_BIT
&&
(
range
>>
offset
)
>
0
&&
remaining_bytes_
!=
0
)
{
// Pull bytes off the end of the seed data.
// Experimentally, this seems to allow the fuzzer to
// more easily explore the input space. This makes
// sense, since it works by modifying inputs that caused
// new code to run, and this data is often used to
// encode length of data read by |ConsumeBytes|.
// Separating out read lengths makes it easier modify
// the contents of the data that is actually read.
--
remaining_bytes_
;
result
=
(
result
<<
CHAR_BIT
)
|
data_ptr_
[
remaining_bytes_
];
offset
+=
CHAR_BIT
;
}
// Avoid division by 0, in case |range + 1| results in overflow.
if
(
range
!=
std
::
numeric_limits
<
decltype
(
range
)
>::
max
())