##// END OF EJS Templates
revisionbranchcache: fall back to slow path if starting readonly (issue4531)...
revisionbranchcache: fall back to slow path if starting readonly (issue4531) Transitioning to Mercurial versions with revision branch cache could be slow as long as all operations were readonly (revset queries) and the cache would be populated but not written back. Instead, fall back to using the consistently slow path when readonly and the cache doesn't exist yet. That avoids the overhead of populating the cache without writing it back. If not readonly, it will still populate all missing entries initially. That avoids repeated writing of the cache file with small updates, and it also makes sure a fully populated cache available for the readonly operations.

File last commit:

r23894:f388ceae default
r24159:5b4ed033 3.3.1 stable
Show More
test-module-imports.t
39 lines | 1.5 KiB | text/troff | Tads3Lexer
/ tests / test-module-imports.t
Matt Mackall
test-module-imports: use test-repo requirement
r23894 #require test-repo
Augie Fackler
test-module-imports: skip on Python < 2.6, since ast is new in 2.6
r20059 This code uses the ast module, which was new in 2.6, so we'll skip
this test on anything earlier.
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c 'import sys ; assert sys.version_info >= (2, 6)' || exit 80
Augie Fackler
test-module-imports: skip on Python < 2.6, since ast is new in 2.6
r20059
Augie Fackler
test-module-imports.t: new test to use the import cycle detector
r20039 $ import_checker="$TESTDIR"/../contrib/import-checker.py
Matt Mackall
test-module-imports: use test-repo requirement
r23894
Augie Fackler
test-module-imports.t: new test to use the import cycle detector
r20039 Run the doctests from the import checker, and make sure
it's working correctly.
$ TERM=dumb
$ export TERM
$ python -m doctest $import_checker
$ cd "$TESTDIR"/..
There are a handful of cases here that require renaming a module so it
doesn't overlap with a stdlib module name. There are also some cycles
here that we should still endeavor to fix, and some cycles will be
hidden by deduplication algorithm in the cycle detector, so fixing
these may expose other cycles.
Simon Heimberg
tests: test-module-imports.t works on windows (with backslash path sep)...
r20395 $ hg locate 'mercurial/**.py' | sed 's-\\-/-g' | xargs python "$import_checker"
Mads Kiilerich
import-checker: show stdlib and relative imports separately...
r20386 mercurial/dispatch.py mixed imports
stdlib: commands
relative: error, extensions, fancyopts, hg, hook, util
mercurial/fileset.py mixed imports
stdlib: parser
relative: error, merge, util
mercurial/revset.py mixed imports
stdlib: parser
relative: discovery, error, hbisect, phases, util
mercurial/templater.py mixed imports
stdlib: parser
Durham Goode
template: add revset() template function...
r20519 relative: config, error, templatefilters, templatekw, util
Mads Kiilerich
import-checker: show stdlib and relative imports separately...
r20386 mercurial/ui.py mixed imports
stdlib: formatter
relative: config, error, scmutil, util
Augie Fackler
itersubrepos: move to scmutil to break a direct import cycle
r20392 Import cycle: mercurial.cmdutil -> mercurial.context -> mercurial.subrepo -> mercurial.cmdutil -> mercurial.cmdutil