Yuya Nishihara avatar Yuya Nishihara committed 32d6f01

move code for strip_init to common place

Comments (0)

Files changed (1)

hgext/fixfrozenexts.py

 def _libpath():
     return os.path.join(os.path.dirname(sys.executable), 'library.zip')
 
-def _listzippedexts(zf, strip_init):
+def _listzippedexts(zf):
     """list up extensions in library.zip"""
     exts = {}
     for path in zf.namelist():
         name = m.group(1)
         if name in extensions._order or name == '__init__':
             continue
-        if strip_init and m.group(2):
-            path = path.rstrip('/__init__.pyo')
 
         exts[name] = path
 
     return exts
 
 @_cached
-def _disabledzippedpaths(strip_init=False):
+def _disabledzippedpaths():
     zf = zipfile.ZipFile(_libpath())
     try:
-        return _listzippedexts(zf, strip_init)
+        return _listzippedexts(zf)
     finally:
         zf.close()
 
 def _disabledpaths(orig, strip_init=False):
-    return _disabledzippedpaths(strip_init)
+    exts = _disabledzippedpaths()
+    if not strip_init:
+        return exts
+
+    for name, path in exts.iteritems():
+        if path.find('/__init__.py'):
+            exts[name] = os.path.dirname(path)
+    return exts
 
 def _extractzippeddoc(zf, path):
     """extract docstring from zipped *.pyo"""
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.