Mercurial > hg
annotate contrib/casesmash.py @ 35710:5cd60b0587a8
evolution: make reporting of new unstable changesets optional
This makes it possible to turn off the reporting of unstable
changesets (e.g. "1 new orphan changesets"), just in case it's too
slow for some users. Anyone who's been using the evolve extension has
already been accepting the cost of the reporting, so this is just for
the few users who have turned on obsmarkers but not been using the
evolve extension (as I believe Facebook has).
Differential Revision: https://phab.mercurial-scm.org/D1868
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Sun, 14 Jan 2018 00:02:40 -0800 |
parents | 42a7301fb4d5 |
children | 2372284d9457 |
rev | line source |
---|---|
28351
42a7301fb4d5
casesmash: use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19378
diff
changeset
|
1 from __future__ import absolute_import |
42a7301fb4d5
casesmash: use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19378
diff
changeset
|
2 import __builtin__ |
42a7301fb4d5
casesmash: use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19378
diff
changeset
|
3 import os |
42a7301fb4d5
casesmash: use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19378
diff
changeset
|
4 from mercurial import ( |
42a7301fb4d5
casesmash: use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19378
diff
changeset
|
5 util, |
42a7301fb4d5
casesmash: use absolute_import
Pulkit Goyal <7895pulkit@gmail.com>
parents:
19378
diff
changeset
|
6 ) |
14730 | 7 |
8 def lowerwrap(scope, funcname): | |
9 f = getattr(scope, funcname) | |
10 def wrap(fname, *args, **kwargs): | |
11 d, base = os.path.split(fname) | |
12 try: | |
13 files = os.listdir(d or '.') | |
19378
9de689d20230
cleanup: drop unused variables and an unused import
Simon Heimberg <simohe@besonet.ch>
parents:
19322
diff
changeset
|
14 except OSError: |
14730 | 15 files = [] |
16 if base in files: | |
17 return f(fname, *args, **kwargs) | |
18 for fn in files: | |
19 if fn.lower() == base.lower(): | |
20 return f(os.path.join(d, fn), *args, **kwargs) | |
21 return f(fname, *args, **kwargs) | |
22 scope.__dict__[funcname] = wrap | |
23 | |
24 def normcase(path): | |
25 return path.lower() | |
26 | |
27 os.path.normcase = normcase | |
28 | |
29 for f in 'file open'.split(): | |
30 lowerwrap(__builtin__, f) | |
31 | |
32 for f in "chmod chown open lstat stat remove unlink".split(): | |
33 lowerwrap(os, f) | |
34 | |
35 for f in "exists lexists".split(): | |
36 lowerwrap(os.path, f) | |
37 | |
38 lowerwrap(util, 'posixfile') |