sapling/mercurial
Yuya Nishihara f864544d81 subrepo: add config option to reject any subrepo operations (SEC)
This is an alternative workaround for the issue5730.

Perhaps this is the simplest way of disabling subrepo operations. It does
nothing clever, but just aborts if Mercurial starts accessing to a subrepo.

I think Greg's patch is more useful since it allows us to at least check
out the parent repository. However, that would be confusing if the default
is flipped to checkout=False and subrepos are silently ignored.

I don't like the config name 'allowed', but I couldn't get any better name.
2017-11-05 21:22:07 +09:00
..
cext parsers: allow clang-format here 2017-10-16 14:53:57 -04:00
cffi codemod: use pycompat.isdarwin 2017-10-12 23:34:34 -07:00
default.d mergetools.rc: find OSX FileMerge in the new location inside Xcode 4.3 2015-10-16 11:37:34 +02:00
help subrepo: add config option to reject any subrepo operations (SEC) 2017-11-05 21:22:07 +09:00
hgweb diff: also yield file context objects in patch.trydiff() (API) 2017-10-05 21:20:08 +02:00
httpclient httpclient: update to 54868ef054d2 of httpplus 2016-06-27 11:53:50 -04:00
pure codemod: use pycompat.iswindows 2017-10-12 23:30:46 -07:00
templates obsfate: rename obsfate into obsolete in default mapfile 2017-10-19 12:33:53 +02:00
thirdparty thirdparty: vendor attrs 2017-10-01 04:14:16 -07:00
__init__.py python3: don't byte mangle third-party packages 2017-10-01 04:04:18 -07:00
ancestor.py py3: add __bool__ to every class defining __nonzero__ 2017-03-13 12:40:14 -07:00
archival.py archive: add an experimental config to control the metadata file template 2017-07-17 00:49:29 -04:00
bdiff.c bdiff: remove trailing newlines 2017-10-04 10:51:39 -04:00
bdiff.h bdiff: include compat.h in header to define ssize_t 2017-10-13 22:38:24 +09:00
bitmanipulation.h bitmanipulation: reformat with clang-format 2017-10-04 10:52:50 -04:00
bookmarks.py bookmark: add a dedicated txnclose-bookmark hook 2017-10-10 17:53:42 +02:00
branchmap.py branchmap: remove superfluous pass statements 2017-09-30 07:42:59 -04:00
bundle2.py phase: introduce a new 'check:phases' part 2017-10-11 07:13:02 +02:00
bundlerepo.py bundlerepo: update to use new deltaiter api 2017-09-20 09:39:03 -07:00
byterange.py cleanup: use urllibcompat for renamed methods on urllib request objects 2017-10-01 12:14:21 -04:00
changegroup.py devel-warn: add 'warn-' to 'devel.empty-changegroup' config 2017-10-08 21:42:32 +02:00
changelog.py changelog: use a Factory for default value for files 2017-10-02 11:03:53 +01:00
chgserver.py chgserver: do not treat HG as sensitive environ when CHGHG is set 2017-10-18 14:55:39 -07:00
cmdutil.py terse: split on repo separator instead of os.sep (issue5715) 2017-10-27 23:48:38 -04:00
color.py codemod: use pycompat.iswindows 2017-10-12 23:30:46 -07:00
commands.py help: minor copy editing for grammar 2017-10-31 23:09:29 -04:00
commandserver.py style: never use a space before a colon or comma 2017-09-29 15:48:34 +00:00
compat.h encoding: add function to test if a str consists of ASCII characters 2017-04-23 12:59:42 +09:00
config.py config: allow remapping the default section 2017-10-14 17:41:41 +09:00
configitems.py subrepo: add config option to reject any subrepo operations (SEC) 2017-11-05 21:22:07 +09:00
context.py statichttprepo: prevent loading dirstate over HTTP on node lookup (issue5717) 2017-10-25 21:58:03 +09:00
copies.py copies: add a config to limit the number of candidates to check in heuristics 2017-10-10 02:25:03 +05:30
crecord.py editor: use an unambiguous path suffix for editor files 2017-08-30 20:25:56 +00:00
dagop.py revset: optimize "draft() & ::x" pattern 2017-08-28 14:49:00 -07:00
dagparser.py py3: iterate bytes as a byte string in dagparser.py 2017-09-03 15:32:45 +09:00
dagutil.py dagutil: use a listcomp instead of a map() 2017-10-15 00:37:24 -04:00
debugcommands.py codemod: use pycompat.iswindows 2017-10-12 23:30:46 -07:00
destutil.py show: implement "stack" view 2017-07-01 22:38:42 -07:00
dirstate.py dirstate: clean up when restoring identical backups 2017-10-20 05:53:35 -07:00
dirstateguard.py util: add base class for transactional context managers 2017-07-28 22:42:10 -07:00
discovery.py discovery: prevent crash caused by prune marker having no parent data 2017-04-19 23:10:05 +09:00
dispatch.py dispatch: when --pager=no is passed, also disable pager on req.repo.ui 2017-10-09 12:42:28 -07:00
dummycert.pem
encoding.py py3: use 'surrogatepass' error handler to process U+DCxx transparently 2017-09-16 22:55:48 +09:00
error.py error: move patch.PatchError so it can easily implement __bytes__ (API) 2017-09-03 16:45:33 +09:00
exchange.py exchange: propagate the subfunctions return 2017-10-19 21:50:14 +02:00
exewrapper.c exewrapper: format with clang-format 2017-10-04 11:04:18 -04:00
extensions.py extensions: always include traceback when extension setup fails 2017-10-17 10:31:44 -07:00
fancyopts.py py3: slice over bytes to prevent getting it's ascii value 2017-06-25 08:36:51 +05:30
filelog.py python3: replace sorted(<dict>.iterkeys()) with sorted(<dict>) 2017-08-22 20:06:58 -04:00
filemerge.py filemerge: pass a default value to _toolstr (issue5718) 2017-10-26 11:07:06 -07:00
fileset.py help: clarify quotes are needed for filesets.size expressions 2016-09-21 16:33:37 +00:00
formatter.py templater: load aliases from [templatealias] section in map file 2017-10-14 18:06:42 +09:00
graphmod.py log: add a "graphwidth" template variable 2017-08-15 10:15:31 -07:00
hbisect.py bisect: move check_state into the bisect module 2016-08-24 04:25:20 +02:00
help.py internals: copy-edit "register" -> "registrar" in configitem docs 2017-11-01 13:24:08 -05:00
hg.py subrepo: implement 'unshare' for Mercurial subrepos 2017-10-17 22:55:33 -04:00
hook.py hook: add a 'hashook' function to test for hook existence 2017-10-08 13:08:31 +02:00
httpconnection.py cleanup: use urllibcompat for renamed methods on urllib request objects 2017-10-01 12:14:21 -04:00
httppeer.py httppeer: always produce native str header keys and values 2017-10-15 00:03:31 -04:00
i18n.py i18n: cache translated messages per encoding 2017-10-13 21:36:10 +09:00
keepalive.py cleanup: use urllibcompat for renamed methods on urllib request objects 2017-10-01 12:14:21 -04:00
localrepo.py sparse-read: skip gaps too small to be worth splitting 2017-10-18 09:07:48 +02:00
lock.py lock: avoid unintentional lock acquisition at failure of readlock 2017-05-01 19:59:13 +09:00
lsprof.py lsprof: use print function 2016-01-02 11:40:53 -08:00
lsprofcalltree.py lsprofcalltree: use print function 2016-01-02 11:45:29 -08:00
mail.py codemod: register core configitems using a script 2017-07-14 14:22:40 -07:00
manifest.py py3: return False early while checking whether None is a key in lazymanifest 2017-09-30 05:22:22 +05:30
match.py match: remove superfluous pass statements 2017-09-30 07:44:45 -04:00
mdiff.py py3: use '%d' for integers instead of '%s' 2017-10-02 04:48:06 +05:30
merge.py merge: add a config option to disable path conflict checking 2017-10-24 11:14:38 -07:00
mergeutil.py checkunresolved: move to new package to help avoid import cycles 2016-11-21 21:31:45 -05:00
minirst.py python3: use our bytes-only version of cgi.escape everywhere 2017-10-05 14:16:20 -04:00
mpatch.c mpatch: switch alignment of wrapped line from tab to spaces with clang-format 2017-10-04 11:00:04 -04:00
mpatch.h mpatch: reformat function prototypes with clang-format 2017-10-04 10:56:33 -04:00
namespaces.py namespaces: record and expose whether namespace is built-in 2017-06-24 14:52:15 -07:00
node.py node: use byte literals to construct nullid and wdirid 2016-03-12 14:04:57 -08:00
obsolete.py config: also gather effect-flags on experimental.evolution 2017-10-19 17:50:20 +02:00
obsutil.py obsfate: fix obsfate_printer with empty date list 2017-10-18 15:38:51 +02:00
parser.py doctest: use print_function and convert bytes to unicode where needed 2017-09-03 14:56:31 +09:00
patch.py log: add an assertion about fctx not being None in patch.diff() 2017-10-19 15:06:33 +02:00
pathutil.py pathutil: use util.pathto() to calculate relative cwd in canonpath() 2017-11-02 20:35:31 -04:00
peer.py peer: ensure command names are always ascii bytestrs 2017-10-15 00:05:00 -04:00
phases.py phases: pass phase names to hooks instead of internal values 2017-10-18 12:19:53 -05:00
policy.py encoding: add fast path of jsonescape() (issue5533) 2017-04-23 14:47:52 +09:00
posix.py codemod: use pycompat.isdarwin 2017-10-12 23:34:34 -07:00
profiling.py configitems: register the 'profiling.type' config 2017-06-30 03:44:00 +02:00
progress.py configitems: register the 'progress.format' config 2017-10-11 22:53:17 +02:00
pushkey.py pushkey: use absolute_import 2015-08-08 19:57:27 -07:00
pvec.py pvec: use absolute_import 2015-12-21 21:32:58 -08:00
pycompat.py pycompat: define operating system constants 2017-10-12 19:20:04 -07:00
rcutil.py codemod: use pycompat.iswindows 2017-10-12 23:30:46 -07:00
registrar.py registrar: don't i18n ProgrammingError message 2017-10-18 22:10:08 -07:00
repair.py repair: preserve phase also when not using generaldelta (issue5678) 2017-09-14 11:16:57 -07:00
repository.py repository: formalize wire protocol interface 2017-08-13 11:04:42 -07:00
repoview.py repoview: remove incorrect documentation of the function 2017-10-10 23:19:35 +05:30
revlog.py sparse-read: ignore trailing empty revs in each read chunk 2017-10-18 15:28:19 +02:00
revset.py revset: extract a parsefollowlinespattern helper function 2017-10-04 15:27:43 +02:00
revsetlang.py revset: move weight information to predicate 2017-09-01 19:42:09 -07:00
scmposix.py codemod: use pycompat.isdarwin 2017-10-12 23:34:34 -07:00
scmutil.py scmutil: add capability to cleanupnodes to take obsmarker metadata 2017-10-15 14:34:24 +05:30
scmwindows.py pager: use less as a fallback on Unix 2017-04-28 20:51:14 +09:00
selectors2.py selectors2: do not use platform.system() 2017-10-11 17:27:21 -07:00
server.py server: drop executable bit from daemon log file 2017-10-25 21:20:01 +09:00
setdiscovery.py setdiscovery: use iterbatch interface instead of batch 2016-03-01 17:44:41 -05:00
similar.py similar: remove caching from the module level 2017-01-13 11:42:36 -08:00
simplemerge.py simplemerge: remove unused repo parameter 2017-09-01 10:35:43 -07:00
smartset.py py3: fix type of attribute name in smartset.py 2017-09-03 17:14:53 +09:00
sparse.py merge: add merge action 'pr' to rename files during update 2017-10-02 14:05:30 -07:00
sshpeer.py ssh: fix flakey ssh errors on BSD systems 2017-09-11 15:59:18 -07:00
sshserver.py style: never put multiple statements on one line 2017-09-29 15:49:20 +00:00
sslutil.py configitems: register the 'hostsecurity.*:fingerprints' config 2017-10-14 00:29:31 +02:00
statichttprepo.py statichttprepo: do not use platform path separator to build a URL 2017-10-28 17:23:52 +09:00
statprof.py statprof: require input file 2017-01-18 22:45:07 -08:00
store.py py3: iterate bytes as a byte string in store.lowerencode() 2017-09-03 17:28:47 +09:00
streamclone.py codemod: register core configitems using a script 2017-07-14 14:22:40 -07:00
subrepo.py subrepo: add config option to reject any subrepo operations (SEC) 2017-11-05 21:22:07 +09:00
tagmerge.py tagmerge: use workingfilectx to write merged tags 2017-07-11 16:48:15 -07:00
tags.py cachevfs: migration the tags fnode cache to 'cachevfs' 2017-07-15 23:30:25 +02:00
templatefilters.py templatefilters: defend against evil unicode strs in json filter 2017-10-16 22:44:43 -04:00
templatekw.py templatekw: introduce obsfate keyword 2017-10-05 17:42:56 +02:00
templater.py templater: use pycompat.sysbytes to bytes-ify some __name__ attrs 2017-10-17 10:51:43 -04:00
transaction.py util: add base class for transactional context managers 2017-07-28 22:42:10 -07:00
treediscovery.py error: get Abort from 'error' instead of 'util' 2015-10-08 12:55:45 -07:00
txnutil.py txnutil: factor out the logic to read file in according to HG_PENDING 2017-02-21 01:20:59 +09:00
ui.py configitems: relax warning about unwanted default value 2017-10-31 22:37:30 +09:00
unionrepo.py revlog: update signature of dummy addgroup() in bundlerepo and unionrepo 2017-09-15 23:58:45 +09:00
upgrade.py codemod: simplify nested withs 2017-07-13 18:31:35 -07:00
url.py url: add cgi.escape equivalent for bytestrings 2017-10-14 02:57:26 -04:00
urllibcompat.py urllibcompat: move some adapters from pycompat to urllibcompat 2017-10-04 11:58:00 -04:00
util.py codemod: use pycompat.isdarwin 2017-10-12 23:34:34 -07:00
verify.py codemod: register core configitems using a script 2017-07-14 14:22:40 -07:00
vfs.py codemod: use pycompat.iswindows 2017-10-12 23:30:46 -07:00
win32.py win32: work around a WinError problem handling HRESULT types 2017-03-30 00:33:00 -04:00
windows.py ssh: quote parameters using shellquote (SEC) 2017-08-04 23:54:12 -07:00
wireproto.py wireproto: more strkwargs cleanup 2017-10-15 00:39:53 -04:00
worker.py codemod: use pycompat.iswindows 2017-10-12 23:30:46 -07:00