Show More
@@ -0,0 +1,104 b'' | |||
|
1 | # demandimport.py - global demand-loading of modules for Mercurial | |
|
2 | # | |
|
3 | # Copyright 2006 Matt Mackall <mpm@selenic.com> | |
|
4 | # | |
|
5 | # This software may be used and distributed according to the terms | |
|
6 | # of the GNU General Public License, incorporated herein by reference. | |
|
7 | ||
|
8 | ''' | |
|
9 | demandimport - automatic demandloading of modules | |
|
10 | ||
|
11 | To enable this module, do: | |
|
12 | ||
|
13 | import demandimport; demandimport.enable() | |
|
14 | ||
|
15 | Imports of the following forms will be demand-loaded: | |
|
16 | ||
|
17 | import a, b.c | |
|
18 | import a.b as c | |
|
19 | from a import b,c # a will be loaded immediately | |
|
20 | ||
|
21 | These imports will not be delayed: | |
|
22 | ||
|
23 | from a import * | |
|
24 | b = __import__(a) | |
|
25 | ''' | |
|
26 | ||
|
27 | _origimport = __import__ | |
|
28 | ||
|
29 | class _demandmod(object): | |
|
30 | """module demand-loader and proxy""" | |
|
31 | def __init__(self, name, globals, locals): | |
|
32 | if '.' in name: | |
|
33 | head, rest = name.split('.', 1) | |
|
34 | after = [rest] | |
|
35 | else: | |
|
36 | head = name | |
|
37 | after = [] | |
|
38 | self.__dict__["_data"] = (head, globals, locals, after) | |
|
39 | self.__dict__["_module"] = None | |
|
40 | def _extend(self, name): | |
|
41 | """add to the list of submodules to load""" | |
|
42 | self._data[3].append(name) | |
|
43 | def _load(self): | |
|
44 | if not self._module: | |
|
45 | head, globals, locals, after = self._data | |
|
46 | mod = _origimport(head, globals, locals) | |
|
47 | # load submodules | |
|
48 | for x in after: | |
|
49 | hx = x | |
|
50 | if '.' in x: | |
|
51 | hx = x.split('.')[0] | |
|
52 | if not hasattr(mod, hx): | |
|
53 | setattr(mod, hx, _demandmod(x, mod.__dict__, mod.__dict__)) | |
|
54 | # are we in the locals dictionary still? | |
|
55 | if locals and locals.get(head) == self: | |
|
56 | locals[head] = mod | |
|
57 | self.__dict__["_module"] = mod | |
|
58 | def __repr__(self): | |
|
59 | return "<unloaded module '%s'>" % self._data[0] | |
|
60 | def __call__(self, *args, **kwargs): | |
|
61 | raise TypeError("'unloaded module' object is not callable") | |
|
62 | def __getattr__(self, attr): | |
|
63 | self._load() | |
|
64 | return getattr(self._module, attr) | |
|
65 | def __setattr__(self, attr, val): | |
|
66 | self._load() | |
|
67 | setattr(self._module, attr, val) | |
|
68 | ||
|
69 | def _demandimport(name, globals=None, locals=None, fromlist=None): | |
|
70 | if not locals or name in ignore or fromlist == ('*',): | |
|
71 | # these cases we can't really delay | |
|
72 | return _origimport(name, globals, locals, fromlist) | |
|
73 | elif not fromlist: | |
|
74 | # import a [as b] | |
|
75 | if '.' in name: # a.b | |
|
76 | base, rest = name.split('.', 1) | |
|
77 | # if a is already demand-loaded, add b to its submodule list | |
|
78 | if base in locals: | |
|
79 | if isinstance(locals[base], _demandmod): | |
|
80 | locals[base]._extend(rest) | |
|
81 | return locals[base] | |
|
82 | return _demandmod(name, globals, locals) | |
|
83 | else: | |
|
84 | # from a import b,c,d | |
|
85 | mod = _origimport(name, globals, locals) | |
|
86 | # recurse down the module chain | |
|
87 | for comp in name.split('.')[1:]: | |
|
88 | mod = getattr(mod, comp) | |
|
89 | for x in fromlist: | |
|
90 | # set requested submodules for demand load | |
|
91 | if not(hasattr(mod, x)): | |
|
92 | setattr(mod, x, _demandmod(x, mod.__dict__, mod.__dict__)) | |
|
93 | return mod | |
|
94 | ||
|
95 | ignore = [] | |
|
96 | ||
|
97 | def enable(): | |
|
98 | "enable global demand-loading of modules" | |
|
99 | __builtins__["__import__"] = _demandimport | |
|
100 | ||
|
101 | def disable(): | |
|
102 | "disable global demand-loading of modules" | |
|
103 | __builtins__["__import__"] = _origimport | |
|
104 |
@@ -11,10 +11,9 b'' | |||
|
11 | 11 | # |
|
12 | 12 | # <alias email> <actual email> |
|
13 | 13 | |
|
14 | from mercurial.demandload import * | |
|
14 | import time, sys, signal, os | |
|
15 | 15 | from mercurial.i18n import gettext as _ |
|
16 | demandload(globals(), 'time sys signal os') | |
|
17 | demandload(globals(), 'mercurial:hg,mdiff,fancyopts,cmdutil,ui,util,templater,node') | |
|
16 | from mercurial import hg, mdiff, cmdutil, ui, util, templater, node | |
|
18 | 17 | |
|
19 | 18 | def __gather(ui, repo, node1, node2): |
|
20 | 19 | def dirtywork(f, mmap1, mmap2): |
@@ -7,6 +7,5 b'' | |||
|
7 | 7 | # This software may be used and distributed according to the terms |
|
8 | 8 | # of the GNU General Public License, incorporated herein by reference. |
|
9 | 9 | |
|
10 |
|
|
|
11 | ||
|
12 | commands.run() | |
|
10 | import mercurial.commands | |
|
11 | mercurial.commands.run() |
@@ -45,10 +45,10 b'' | |||
|
45 | 45 | # glob pattern = user4, user5 |
|
46 | 46 | # ** = user6 |
|
47 | 47 | |
|
48 | from mercurial.demandload import * | |
|
49 | 48 | from mercurial.i18n import gettext as _ |
|
50 | 49 | from mercurial.node import * |
|
51 | demandload(globals(), 'getpass mercurial:util') | |
|
50 | from mercurial import util | |
|
51 | import getpass | |
|
52 | 52 | |
|
53 | 53 | class checker(object): |
|
54 | 54 | '''acl checker.''' |
@@ -52,10 +52,10 b'' | |||
|
52 | 52 | # [usermap] |
|
53 | 53 | # committer_email = bugzilla_user_name |
|
54 | 54 | |
|
55 | from mercurial.demandload import * | |
|
56 | 55 | from mercurial.i18n import gettext as _ |
|
57 | 56 | from mercurial.node import * |
|
58 | demandload(globals(), 'mercurial:cmdutil,templater,util os re time') | |
|
57 | from mercurial import cmdutil, templater, util | |
|
58 | import os, re, time | |
|
59 | 59 | |
|
60 | 60 | MySQLdb = None |
|
61 | 61 |
@@ -48,10 +48,10 b'' | |||
|
48 | 48 | # needed files, so running the external diff program will actually be |
|
49 | 49 | # pretty fast (at least faster than having to compare the entire tree). |
|
50 | 50 | |
|
51 | from mercurial.demandload import demandload | |
|
52 | 51 | from mercurial.i18n import gettext as _ |
|
53 | 52 | from mercurial.node import * |
|
54 | demandload(globals(), 'mercurial:cmdutil,util os shutil tempfile') | |
|
53 | from mercurial import cmdutil, util | |
|
54 | import os, shutil, tempfile | |
|
55 | 55 | |
|
56 | 56 | def dodiff(ui, repo, diffcmd, diffopts, pats, opts): |
|
57 | 57 | def snapshot_node(files, node): |
@@ -5,10 +5,9 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from mercurial.demandload import * | |
|
9 | 8 | from mercurial.i18n import gettext as _ |
|
10 | 9 | from mercurial.node import * |
|
11 |
|
|
|
10 | from mercurial import commands, hg, node, util | |
|
12 | 11 | |
|
13 | 12 | def fetch(ui, repo, source='default', **opts): |
|
14 | 13 | '''Pull changes from a remote repository, merge new changes if needed. |
@@ -7,8 +7,8 b'' | |||
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | 9 | from mercurial.i18n import gettext as _ |
|
10 | from mercurial.demandload import demandload | |
|
11 | demandload(globals(), "os sys sets mercurial:hg,util,commands,cmdutil") | |
|
10 | from mercurial import hg, util, commands, cmdutil | |
|
11 | import os, sys, sets | |
|
12 | 12 | |
|
13 | 13 | versionstr = "0.0.3" |
|
14 | 14 |
@@ -5,9 +5,8 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from mercurial.demandload import * | |
|
9 | demandload(globals(), 'time sys signal os') | |
|
10 | demandload(globals(), 'mercurial:hg,fancyopts,commands,ui,util,patch,revlog') | |
|
8 | import time, sys, signal, os | |
|
9 | from mercurial import hg, fancyopts, commands, ui, util, patch, revlog | |
|
11 | 10 | |
|
12 | 11 | def difftree(ui, repo, node1=None, node2=None, *files, **opts): |
|
13 | 12 | """diff trees from two commits""" |
@@ -29,11 +29,9 b' remove patch from applied stack ' | |||
|
29 | 29 | refresh contents of top applied patch qrefresh |
|
30 | 30 | ''' |
|
31 | 31 | |
|
32 | from mercurial.demandload import * | |
|
33 | 32 | from mercurial.i18n import gettext as _ |
|
34 | from mercurial import commands | |
|
35 |
|
|
|
36 | demandload(globals(), "mercurial:cmdutil,hg,patch,revlog,util,changegroup") | |
|
33 | from mercurial import commands, cmdutil, hg, patch, revlog, util, changegroup | |
|
34 | import os, sys, re, struct, traceback, errno, bz2 | |
|
37 | 35 | |
|
38 | 36 | commands.norepo += " qclone qversion" |
|
39 | 37 |
@@ -65,11 +65,10 b'' | |||
|
65 | 65 | # if you like, you can put notify config file in repo that users can |
|
66 | 66 | # push changes to, they can manage their own subscriptions. |
|
67 | 67 | |
|
68 | from mercurial.demandload import * | |
|
69 | 68 | from mercurial.i18n import gettext as _ |
|
70 | 69 | from mercurial.node import * |
|
71 |
|
|
|
72 |
|
|
|
70 | from mercurial import patch, cmdutil, templater, util, mail | |
|
71 | import email.Parser, fnmatch, socket, time | |
|
73 | 72 | |
|
74 | 73 | # template for single changeset can include email headers. |
|
75 | 74 | single_template = ''' |
@@ -63,10 +63,9 b'' | |||
|
63 | 63 | # |
|
64 | 64 | # That should be all. Now your patchbomb is on its way out. |
|
65 | 65 | |
|
66 | from mercurial.demandload import * | |
|
67 |
|
|
|
68 |
|
|
|
69 | os errno popen2 socket sys tempfile time''') | |
|
66 | import os, errno, popen2, socket, sys, tempfile, time | |
|
67 | import email.MIMEMultipart, email.MIMEText, email.Utils | |
|
68 | from mercurial import cmdutil, commands, hg, mail, ui, patch | |
|
70 | 69 | from mercurial.i18n import gettext as _ |
|
71 | 70 | from mercurial.node import * |
|
72 | 71 |
@@ -5,11 +5,10 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from mercurial.demandload import * | |
|
9 | 8 | from mercurial.i18n import gettext as _ |
|
10 | demandload(globals(), 'os tempfile') | |
|
11 |
|
|
|
12 | demandload(globals(), 'mercurial:revlog,util') | |
|
9 | import os, tempfile | |
|
10 | from mercurial import bundlerepo, cmdutil, commands, hg, merge, patch, revlog | |
|
11 | from mercurial import util | |
|
13 | 12 | |
|
14 | 13 | '''patch transplanting tool |
|
15 | 14 |
@@ -5,8 +5,7 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import * | |
|
9 | demandload(globals(), "cStringIO changelog errno manifest os tempfile util") | |
|
8 | import cStringIO, changelog, errno, manifest, os, tempfile, util | |
|
10 | 9 | |
|
11 | 10 | # writes to metadata files are ordered. reads: changelog, manifest, |
|
12 | 11 | # normal files. writes: normal files, manifest, changelog. |
@@ -5,10 +5,9 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms of |
|
6 | 6 | # the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import * | |
|
9 | 8 | from i18n import gettext as _ |
|
10 | 9 | from node import * |
|
11 |
|
|
|
10 | import cStringIO, os, stat, tarfile, time, util, zipfile | |
|
12 | 11 | |
|
13 | 12 | def tidyprefix(dest, prefix, suffixes): |
|
14 | 13 | '''choose prefix to use for names in archive. make sure prefix is |
@@ -12,8 +12,7 b' of the GNU General Public License, incor' | |||
|
12 | 12 | |
|
13 | 13 | from node import * |
|
14 | 14 | from i18n import gettext as _ |
|
15 | from demandload import demandload | |
|
16 | demandload(globals(), "changegroup util os struct bz2 tempfile") | |
|
15 | import changegroup, util, os, struct, bz2, tempfile | |
|
17 | 16 | |
|
18 | 17 | import localrepo, changelog, manifest, filelog, revlog |
|
19 | 18 |
@@ -6,9 +6,9 b' changegroup.py - Mercurial changegroup m' | |||
|
6 | 6 | This software may be used and distributed according to the terms |
|
7 | 7 | of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | """ |
|
9 | ||
|
9 | 10 | from i18n import gettext as _ |
|
10 | from demandload import * | |
|
11 | demandload(globals(), "struct os bz2 zlib util tempfile") | |
|
11 | import struct, os, bz2, zlib, util, tempfile | |
|
12 | 12 | |
|
13 | 13 | def getchunk(source): |
|
14 | 14 | """get a chunk from a changegroup""" |
@@ -7,8 +7,7 b'' | |||
|
7 | 7 | |
|
8 | 8 | from revlog import * |
|
9 | 9 | from i18n import gettext as _ |
|
10 | from demandload import demandload | |
|
11 | demandload(globals(), "os time util") | |
|
10 | import os, time, util | |
|
12 | 11 | |
|
13 | 12 | def _string_escape(text): |
|
14 | 13 | """ |
@@ -5,11 +5,9 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import demandload | |
|
9 | 8 | from node import * |
|
10 | 9 | from i18n import gettext as _ |
|
11 | demandload(globals(), 'os sys') | |
|
12 | demandload(globals(), 'mdiff util templater patch') | |
|
10 | import os, sys, mdiff, util, templater, patch | |
|
13 | 11 | |
|
14 | 12 | revrangesep = ':' |
|
15 | 13 |
@@ -5,14 +5,14 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import demandload | |
|
8 | import demandimport; demandimport.enable() | |
|
9 | 9 | from node import * |
|
10 | 10 | from i18n import gettext as _ |
|
11 |
|
|
|
12 |
|
|
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
11 | import bisect, os, re, sys, signal, imp, urllib, pdb, shlex, stat | |
|
12 | import fancyopts, ui, hg, util, lock, revlog, bundlerepo | |
|
13 | import difflib, patch, time, help, mdiff, tempfile | |
|
14 | import traceback, errno, version, atexit | |
|
15 | import archival, changegroup, cmdutil, hgweb.server, sshserver | |
|
16 | 16 | |
|
17 | 17 | class UnknownCommand(Exception): |
|
18 | 18 | """Exception raised if command is not in the command table.""" |
@@ -7,8 +7,7 b'' | |||
|
7 | 7 | |
|
8 | 8 | from node import * |
|
9 | 9 | from i18n import gettext as _ |
|
10 | from demandload import demandload | |
|
11 | demandload(globals(), "ancestor bdiff repo revlog util os") | |
|
10 | import ancestor, bdiff, repo, revlog, util, os | |
|
12 | 11 | |
|
13 | 12 | class changectx(object): |
|
14 | 13 | """A changecontext object makes access to data related to a particular |
@@ -9,8 +9,7 b' of the GNU General Public License, incor' | |||
|
9 | 9 | |
|
10 | 10 | from node import * |
|
11 | 11 | from i18n import gettext as _ |
|
12 | from demandload import * | |
|
13 | demandload(globals(), "struct os time bisect stat strutil util re errno") | |
|
12 | import struct, os, time, bisect, stat, strutil, util, re, errno | |
|
14 | 13 | |
|
15 | 14 | class dirstate(object): |
|
16 | 15 | format = ">cllll" |
@@ -6,8 +6,7 b'' | |||
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | 8 | from revlog import * |
|
9 | from demandload import * | |
|
10 | demandload(globals(), "os") | |
|
9 | import os | |
|
11 | 10 | |
|
12 | 11 | class filelog(revlog): |
|
13 | 12 | def __init__(self, opener, path, defversion=REVLOG_DEFAULT_VERSION): |
@@ -8,10 +8,11 b'' | |||
|
8 | 8 | |
|
9 | 9 | from node import * |
|
10 | 10 | from repo import * |
|
11 | from demandload import * | |
|
12 | 11 | from i18n import gettext as _ |
|
13 |
|
|
|
14 | demandload(globals(), "errno lock os shutil util merge@_merge verify@_verify") | |
|
12 | import localrepo, bundlerepo, httprepo, sshrepo, statichttprepo | |
|
13 | import errno, lock, os, shutil, util | |
|
14 | import merge as _merge | |
|
15 | import verify as _verify | |
|
15 | 16 | |
|
16 | 17 | def _local(path): |
|
17 | 18 | return (os.path.isfile(util.drop_scheme('file', path)) and |
@@ -6,6 +6,11 b'' | |||
|
6 | 6 | # This software may be used and distributed according to the terms |
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | from mercurial.demandload import demandload | |
|
10 | demandload(globals(), "mercurial.hgweb.hgweb_mod:hgweb") | |
|
11 | demandload(globals(), "mercurial.hgweb.hgwebdir_mod:hgwebdir") | |
|
9 | import hgweb_mod, hgwebdir_mod | |
|
10 | ||
|
11 | def hgweb(*args, **kwargs): | |
|
12 | return hgweb_mod.hgweb(*args, **kwargs) | |
|
13 | ||
|
14 | def hgwebdir(*args, **kwargs): | |
|
15 | return hgwebdir_mod.hgwebdir(*args, **kwargs) | |
|
16 |
@@ -7,7 +7,6 b'' | |||
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | 9 | import os, mimetypes |
|
10 | import os.path | |
|
11 | 10 | |
|
12 | 11 | def get_mtime(repo_path): |
|
13 | 12 | store_path = os.path.join(repo_path, ".hg") |
@@ -6,17 +6,13 b'' | |||
|
6 | 6 | # This software may be used and distributed according to the terms |
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | import os | |
|
10 | import os.path | |
|
11 | import mimetypes | |
|
12 | from mercurial.demandload import demandload | |
|
13 | demandload(globals(), "re zlib ConfigParser mimetools cStringIO sys tempfile") | |
|
14 | demandload(globals(), 'urllib bz2') | |
|
15 | demandload(globals(), "mercurial:mdiff,ui,hg,util,archival,streamclone,patch") | |
|
16 | demandload(globals(), "mercurial:revlog,templater") | |
|
17 | demandload(globals(), "mercurial.hgweb.common:get_mtime,staticfile,style_map") | |
|
9 | import os, mimetypes, re, zlib, ConfigParser, mimetools, cStringIO, sys | |
|
10 | import tempfile, urllib, bz2 | |
|
18 | 11 | from mercurial.node import * |
|
19 | 12 | from mercurial.i18n import gettext as _ |
|
13 | from mercurial import mdiff, ui, hg, util, archival, streamclone, patch | |
|
14 | from mercurial import revlog, templater | |
|
15 | from common import get_mtime, staticfile, style_map | |
|
20 | 16 | |
|
21 | 17 | def _up(p): |
|
22 | 18 | if p[0] != "/": |
@@ -6,13 +6,12 b'' | |||
|
6 | 6 | # This software may be used and distributed according to the terms |
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | import os | |
|
10 | from mercurial.demandload import demandload | |
|
11 | demandload(globals(), "mimetools cStringIO") | |
|
12 | demandload(globals(), "mercurial:ui,hg,util,templater") | |
|
13 | demandload(globals(), "mercurial.hgweb.hgweb_mod:hgweb") | |
|
14 | demandload(globals(), "mercurial.hgweb.common:get_mtime,staticfile,style_map") | |
|
9 | from mercurial import demandimport; demandimport.enable() | |
|
10 | import os, mimetools, cStringIO | |
|
15 | 11 | from mercurial.i18n import gettext as _ |
|
12 | from mercurial import ui, hg, util, templater | |
|
13 | from common import get_mtime, staticfile, style_map | |
|
14 | from hgweb_mod import hgweb | |
|
16 | 15 | |
|
17 | 16 | # This is a stopgap |
|
18 | 17 | class hgwebdir(object): |
@@ -6,8 +6,7 b'' | |||
|
6 | 6 | # This software may be used and distributed according to the terms |
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | from mercurial.demandload import demandload | |
|
10 | demandload(globals(), "socket sys cgi os errno") | |
|
9 | import socket, sys, cgi, os, errno | |
|
11 | 10 | from mercurial.i18n import gettext as _ |
|
12 | 11 | |
|
13 | 12 | class wsgiapplication(object): |
@@ -6,11 +6,11 b'' | |||
|
6 | 6 | # This software may be used and distributed according to the terms |
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | from mercurial.demandload import demandload | |
|
10 | import os, sys, errno | |
|
11 | demandload(globals(), "urllib BaseHTTPServer socket SocketServer") | |
|
12 | demandload(globals(), "mercurial:ui,hg,util,templater") | |
|
13 | demandload(globals(), "hgweb_mod:hgweb hgwebdir_mod:hgwebdir request:wsgiapplication") | |
|
9 | import os, sys, errno, urllib, BaseHTTPServer, socket, SocketServer | |
|
10 | from mercurial import ui, hg, util, templater | |
|
11 | from hgweb_mod import hgweb | |
|
12 | from hgwebdir_mod import hgwebdir | |
|
13 | from request import wsgiapplication | |
|
14 | 14 | from mercurial.i18n import gettext as _ |
|
15 | 15 | |
|
16 | 16 | def _splitURI(uri): |
@@ -9,9 +9,8 b'' | |||
|
9 | 9 | from node import * |
|
10 | 10 | from remoterepo import * |
|
11 | 11 | from i18n import gettext as _ |
|
12 | from demandload import * | |
|
13 | demandload(globals(), "hg os urllib urllib2 urlparse zlib util httplib") | |
|
14 | demandload(globals(), "errno keepalive tempfile socket changegroup") | |
|
12 | import hg, os, urllib, urllib2, urlparse, zlib, util, httplib | |
|
13 | import errno, keepalive, tempfile, socket, changegroup | |
|
15 | 14 | |
|
16 | 15 | class passwordmgr(urllib2.HTTPPasswordMgrWithDefaultRealm): |
|
17 | 16 | def __init__(self, ui): |
@@ -7,12 +7,10 b'' | |||
|
7 | 7 | |
|
8 | 8 | from node import * |
|
9 | 9 | from i18n import gettext as _ |
|
10 | from demandload import * | |
|
11 | import repo | |
|
12 | demandload(globals(), "appendfile changegroup") | |
|
13 | demandload(globals(), "changelog dirstate filelog manifest context") | |
|
14 | demandload(globals(), "re lock transaction tempfile stat mdiff errno ui") | |
|
15 | demandload(globals(), "os revlog time util") | |
|
10 | import repo, appendfile, changegroup | |
|
11 | import changelog, dirstate, filelog, manifest, context | |
|
12 | import re, lock, transaction, tempfile, stat, mdiff, errno, ui | |
|
13 | import os, revlog, time, util | |
|
16 | 14 | |
|
17 | 15 | class localrepository(repo.repository): |
|
18 | 16 | capabilities = ('lookup', 'changegroupsubset') |
@@ -5,8 +5,7 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import * | |
|
9 | demandload(globals(), 'errno os socket time util') | |
|
8 | import errno, os, socket, time, util | |
|
10 | 9 | |
|
11 | 10 | class LockException(IOError): |
|
12 | 11 | def __init__(self, errno, strerror, filename, desc): |
@@ -6,8 +6,7 b'' | |||
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | 8 | from i18n import gettext as _ |
|
9 | from demandload import * | |
|
10 | demandload(globals(), "os re smtplib templater util") | |
|
9 | import os, re, smtplib, templater, util | |
|
11 | 10 | |
|
12 | 11 | def _smtp(ui): |
|
13 | 12 | '''send mail using smtp.''' |
@@ -7,9 +7,7 b'' | |||
|
7 | 7 | |
|
8 | 8 | from revlog import * |
|
9 | 9 | from i18n import gettext as _ |
|
10 | from demandload import * | |
|
11 | demandload(globals(), "array bisect struct") | |
|
12 | demandload(globals(), "mdiff") | |
|
10 | import array, bisect, struct, mdiff | |
|
13 | 11 | |
|
14 | 12 | class manifestdict(dict): |
|
15 | 13 | def __init__(self, mapping=None, flags=None): |
@@ -5,9 +5,7 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import demandload | |
|
9 | import bdiff, mpatch | |
|
10 | demandload(globals(), "re struct util") | |
|
8 | import bdiff, mpatch, re, struct, util | |
|
11 | 9 | |
|
12 | 10 | def splitnewlines(text): |
|
13 | 11 | '''like str.splitlines, but only split on newlines.''' |
@@ -7,8 +7,7 b'' | |||
|
7 | 7 | |
|
8 | 8 | from node import * |
|
9 | 9 | from i18n import gettext as _ |
|
10 | from demandload import * | |
|
11 | demandload(globals(), "errno util os tempfile") | |
|
10 | import errno, util, os, tempfile | |
|
12 | 11 | |
|
13 | 12 | def filemerge(repo, fw, fo, wctx, mctx): |
|
14 | 13 | """perform a 3-way merge in the working directory |
@@ -7,8 +7,7 b' This software may be used and distribute' | |||
|
7 | 7 | of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | """ |
|
9 | 9 | |
|
10 | from demandload import demandload | |
|
11 | demandload(globals(), "binascii") | |
|
10 | import binascii | |
|
12 | 11 | |
|
13 | 12 | nullrev = -1 |
|
14 | 13 | nullid = "\0" * 20 |
@@ -5,12 +5,11 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import demandload | |
|
9 | 8 | from i18n import gettext as _ |
|
10 | 9 | from node import * |
|
11 |
|
|
|
12 |
|
|
|
13 | demandload(globals(), "sys tempfile zlib") | |
|
10 | import base85, cmdutil, mdiff, util | |
|
11 | import cStringIO, email.Parser, errno, os, popen2, re, shutil, sha | |
|
12 | import sys, tempfile, zlib | |
|
14 | 13 | |
|
15 | 14 | # helper functions |
|
16 | 15 |
@@ -12,9 +12,8 b' of the GNU General Public License, incor' | |||
|
12 | 12 | |
|
13 | 13 | from node import * |
|
14 | 14 | from i18n import gettext as _ |
|
15 | from demandload import demandload | |
|
16 | demandload(globals(), "binascii changegroup errno ancestor mdiff os") | |
|
17 | demandload(globals(), "sha struct util zlib") | |
|
15 | import binascii, changegroup, errno, ancestor, mdiff, os | |
|
16 | import sha, struct, util, zlib | |
|
18 | 17 | |
|
19 | 18 | # revlog version strings |
|
20 | 19 | REVLOGV0 = 0 |
@@ -8,8 +8,7 b'' | |||
|
8 | 8 | from node import * |
|
9 | 9 | from remoterepo import * |
|
10 | 10 | from i18n import gettext as _ |
|
11 | from demandload import * | |
|
12 | demandload(globals(), "hg os re stat util") | |
|
11 | import hg, os, re, stat, util | |
|
13 | 12 | |
|
14 | 13 | class sshrepository(remoterepository): |
|
15 | 14 | def __init__(self, ui, path, create=0): |
@@ -6,10 +6,9 b'' | |||
|
6 | 6 | # This software may be used and distributed according to the terms |
|
7 | 7 | # of the GNU General Public License, incorporated herein by reference. |
|
8 | 8 | |
|
9 | from demandload import demandload | |
|
10 | 9 | from i18n import gettext as _ |
|
11 | 10 | from node import * |
|
12 |
|
|
|
11 | import os, streamclone, sys, tempfile, util | |
|
13 | 12 | |
|
14 | 13 | class sshserver(object): |
|
15 | 14 | def __init__(self, ui, repo): |
@@ -7,10 +7,9 b'' | |||
|
7 | 7 | # This software may be used and distributed according to the terms |
|
8 | 8 | # of the GNU General Public License, incorporated herein by reference. |
|
9 | 9 | |
|
10 | from demandload import * | |
|
11 | 10 | from i18n import gettext as _ |
|
12 |
|
|
|
13 |
|
|
|
11 | import changelog, filelog, httprangereader | |
|
12 | import repo, localrepo, manifest, os, urllib, urllib2, util | |
|
14 | 13 | |
|
15 | 14 | class rangereader(httprangereader.httprangereader): |
|
16 | 15 | def read(self, size=None): |
@@ -5,9 +5,8 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import demandload | |
|
9 | 8 | from i18n import gettext as _ |
|
10 | demandload(globals(), "os stat util lock") | |
|
9 | import os, stat, util, lock | |
|
11 | 10 | |
|
12 | 11 | # if server supports streaming clone, it advertises "stream" |
|
13 | 12 | # capability with value that is version+flags of repo it is serving. |
@@ -5,10 +5,9 b'' | |||
|
5 | 5 | # This software may be used and distributed according to the terms |
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | from demandload import demandload | |
|
9 | 8 | from i18n import gettext as _ |
|
10 | 9 | from node import * |
|
11 |
|
|
|
10 | import cgi, re, sys, os, time, urllib, util, textwrap | |
|
12 | 11 | |
|
13 | 12 | def parsestring(s, quoted=True): |
|
14 | 13 | '''parse a string using simple c-like syntax. |
@@ -11,9 +11,8 b'' | |||
|
11 | 11 | # This software may be used and distributed according to the terms |
|
12 | 12 | # of the GNU General Public License, incorporated herein by reference. |
|
13 | 13 | |
|
14 | from demandload import demandload | |
|
15 | 14 | from i18n import gettext as _ |
|
16 | demandload(globals(), 'os') | |
|
15 | import os | |
|
17 | 16 | |
|
18 | 17 | class transaction(object): |
|
19 | 18 | def __init__(self, report, opener, journal, after=None): |
@@ -6,9 +6,8 b'' | |||
|
6 | 6 | # of the GNU General Public License, incorporated herein by reference. |
|
7 | 7 | |
|
8 | 8 | from i18n import gettext as _ |
|
9 | from demandload import * | |
|
10 | demandload(globals(), "errno getpass os re socket sys tempfile") | |
|
11 | demandload(globals(), "ConfigParser traceback util") | |
|
9 | import errno, getpass, os, re, socket, sys, tempfile | |
|
10 | import ConfigParser, traceback, util | |
|
12 | 11 | |
|
13 | 12 | def dupconfig(orig): |
|
14 | 13 | new = util.configparser(orig.defaults()) |
@@ -13,9 +13,8 b' platform-specific details from the core.' | |||
|
13 | 13 | """ |
|
14 | 14 | |
|
15 | 15 | from i18n import gettext as _ |
|
16 | from demandload import * | |
|
17 | demandload(globals(), "cStringIO errno getpass popen2 re shutil sys tempfile") | |
|
18 | demandload(globals(), "os threading time calendar ConfigParser locale") | |
|
16 | import cStringIO, errno, getpass, popen2, re, shutil, sys, tempfile | |
|
17 | import os, threading, time, calendar, ConfigParser, locale | |
|
19 | 18 | |
|
20 | 19 | _encoding = os.environ.get("HGENCODING") or locale.getpreferredencoding() \ |
|
21 | 20 | or "ascii" |
@@ -693,7 +692,7 b' def checkfolding(path):' | |||
|
693 | 692 | |
|
694 | 693 | # Platform specific variants |
|
695 | 694 | if os.name == 'nt': |
|
696 | demandload(globals(), "msvcrt") | |
|
695 | import msvcrt | |
|
697 | 696 | nulldev = 'NUL:' |
|
698 | 697 | |
|
699 | 698 | class winstdout: |
@@ -13,10 +13,10 b'' | |||
|
13 | 13 | |
|
14 | 14 | import win32api |
|
15 | 15 | |
|
16 | from demandload import * | |
|
17 | 16 | from i18n import gettext as _ |
|
18 |
|
|
|
19 | demandload(globals(), 'cStringIO win32com.shell:shell,shellcon winerror') | |
|
17 | import errno, os, pywintypes, win32con, win32file, win32process | |
|
18 | import cStringIO, winerror | |
|
19 | from win32com.shell import shell,shellcon | |
|
20 | 20 | |
|
21 | 21 | class WinError: |
|
22 | 22 | winerror_map = { |
@@ -13,8 +13,6 b' import os' | |||
|
13 | 13 | from distutils.core import setup, Extension |
|
14 | 14 | from distutils.command.install_data import install_data |
|
15 | 15 | |
|
16 | # mercurial.packagescan must be the first mercurial module imported | |
|
17 | import mercurial.packagescan | |
|
18 | 16 | import mercurial.version |
|
19 | 17 | |
|
20 | 18 | # py2exe needs to be installed to work |
@@ -35,31 +33,6 b' try:' | |||
|
35 | 33 | except ImportError: |
|
36 | 34 | pass |
|
37 | 35 | |
|
38 | # Due to the use of demandload py2exe is not finding the modules. | |
|
39 | # packagescan.getmodules creates a list of modules included in | |
|
40 | # the mercurial package plus depdent modules. | |
|
41 | from py2exe.build_exe import py2exe as build_exe | |
|
42 | ||
|
43 | class py2exe_for_demandload(build_exe): | |
|
44 | """ overwrites the py2exe command class for getting the build | |
|
45 | directory and for setting the 'includes' option.""" | |
|
46 | def initialize_options(self): | |
|
47 | self.build_lib = None | |
|
48 | build_exe.initialize_options(self) | |
|
49 | def finalize_options(self): | |
|
50 | # Get the build directory, ie. where to search for modules. | |
|
51 | self.set_undefined_options('build', | |
|
52 | ('build_lib', 'build_lib')) | |
|
53 | # Sets the 'includes' option with the list of needed modules | |
|
54 | if not self.includes: | |
|
55 | self.includes = [] | |
|
56 | else: | |
|
57 | self.includes = self.includes.split(',') | |
|
58 | mercurial.packagescan.scan(self.build_lib, 'mercurial') | |
|
59 | mercurial.packagescan.scan(self.build_lib, 'mercurial.hgweb') | |
|
60 | mercurial.packagescan.scan(self.build_lib, 'hgext') | |
|
61 | self.includes += mercurial.packagescan.getmodules() | |
|
62 | build_exe.finalize_options(self) | |
|
63 | 36 | except ImportError: |
|
64 | 37 | py2exe_for_demandload = None |
|
65 | 38 |
|
1 | NO CONTENT: file was removed |
|
1 | NO CONTENT: file was removed |
General Comments 0
You need to be logged in to leave comments.
Login now