Mercurial > hg
annotate contrib/casesmash.py @ 26345:2aa0dde846b4
mq: remove a mutable default argument
Mutable default arguments are know to the state of California to cause bugs. The
underlying function already handle "None" as an option value, so we do not need
to do anything else.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Thu, 24 Sep 2015 00:50:06 -0700 |
parents | 9de689d20230 |
children | 42a7301fb4d5 |
rev | line source |
---|---|
19322
ff1586a3adc5
cleanup: remove unused imports
Simon Heimberg <simohe@besonet.ch>
parents:
14730
diff
changeset
|
1 import os, __builtin__ |
14730 | 2 from mercurial import util |
3 | |
4 def lowerwrap(scope, funcname): | |
5 f = getattr(scope, funcname) | |
6 def wrap(fname, *args, **kwargs): | |
7 d, base = os.path.split(fname) | |
8 try: | |
9 files = os.listdir(d or '.') | |
19378
9de689d20230
cleanup: drop unused variables and an unused import
Simon Heimberg <simohe@besonet.ch>
parents:
19322
diff
changeset
|
10 except OSError: |
14730 | 11 files = [] |
12 if base in files: | |
13 return f(fname, *args, **kwargs) | |
14 for fn in files: | |
15 if fn.lower() == base.lower(): | |
16 return f(os.path.join(d, fn), *args, **kwargs) | |
17 return f(fname, *args, **kwargs) | |
18 scope.__dict__[funcname] = wrap | |
19 | |
20 def normcase(path): | |
21 return path.lower() | |
22 | |
23 os.path.normcase = normcase | |
24 | |
25 for f in 'file open'.split(): | |
26 lowerwrap(__builtin__, f) | |
27 | |
28 for f in "chmod chown open lstat stat remove unlink".split(): | |
29 lowerwrap(os, f) | |
30 | |
31 for f in "exists lexists".split(): | |
32 lowerwrap(os.path, f) | |
33 | |
34 lowerwrap(util, 'posixfile') |