##// END OF EJS Templates
extensions: register functions always at loading extension (issue5601)...
extensions: register functions always at loading extension (issue5601) Before this patch, functions defined in extensions are registered via extra loaders only in _dispatch(). Therefore, loading extensions in other code paths like below omits registration of functions. - WSGI service - operation across repositories (e.g. subrepo) - test-duplicateoptions.py, using extensions.loadall() directly To register functions always at loading new extension, this patch moves implementation for extra loading from dispatch._dispatch() to extensions.loadall(). AFAIK, only commands module causes cyclic dependency between extensions module, but this patch imports all related modules just before extra loading in loadall(), in order to centralize them. This patch makes extensions.py depend on many other modules, even though extensions.py itself doesn't. It should be avoided if possible, but I don't have any better idea. Some other places like below aren't reasonable for extra loading, IMHO. - specific function in newly added module: existing callers of extensions.loadall() should invoke it, too - hg.repository() or so: no-repo commands aren't covered by this. BTW, this patch removes _loaded.add(name) on relocation, because dispatch._loaded is used only for extraloaders (for similar reason, "exts" variable is removed, too).

File last commit:

r29974:7109d5dd default
r33052:45b0e9d0 default
Show More
test-strict.t
48 lines | 1.5 KiB | text/troff | Tads3Lexer
Nicolas Dumazet
tests: unify test-strict
r12097 $ hg init
$ echo a > a
$ hg ci -Ama
adding a
$ hg an a
0: a
Yuya Nishihara
commands: parse ui.strict config item as bool
r16591 $ hg --config ui.strict=False an a
0: a
Nicolas Dumazet
tests: unify test-strict
r12097 $ echo "[ui]" >> $HGRCPATH
$ echo "strict=True" >> $HGRCPATH
$ hg an a
hg: unknown command 'an'
Mercurial Distributed SCM
basic commands:
Olav Reinert
help: format command and option list help using RST...
r16853 add add the specified files on the next commit
annotate show changeset information by line for each file
clone make a copy of an existing repository
commit commit the specified files or all outstanding changes
diff diff repository (or selected files)
export dump the header and diffs for one or more changesets
forget forget the specified files on the next commit
init create a new repository in the given directory
log show revision history of entire repository or files
anatoly techtonik
merge: be precise about what merged into what in short desc
r23400 merge merge another revision into working directory
Olav Reinert
help: format command and option list help using RST...
r16853 pull pull changes from the specified source
push push changes to the specified destination
remove remove the specified files on the next commit
serve start stand-alone webserver
status show changed files in the working directory
summary summarize working directory state
update update working directory (or switch revisions)
Nicolas Dumazet
tests: unify test-strict
r12097
timeless
help: use single quotes in use warning
r29974 (use 'hg help' for the full list of commands or 'hg -v' for details)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Nicolas Dumazet
tests: unify test-strict
r12097 $ hg annotate a
0: a
should succeed - up is an alias, not an abbreviation
$ hg up
0 files updated, 0 files merged, 0 files removed, 0 files unresolved