##// END OF EJS Templates
py3: use print_function in test-batching.py
Robert Stanca -
r28732:e2b11859 default
parent child Browse files
Show More
@@ -1,183 +1,183
1 1 # test-batching.py - tests for transparent command batching
2 2 #
3 3 # Copyright 2011 Peter Arrenbrecht <peter@arrenbrecht.ch>
4 4 #
5 5 # This software may be used and distributed according to the terms of the
6 6 # GNU General Public License version 2 or any later version.
7 7
8 from __future__ import absolute_import
8 from __future__ import absolute_import, print_function
9 9 from mercurial.peer import (
10 10 localbatch,
11 11 batchable,
12 12 future,
13 13 )
14 14 from mercurial.wireproto import (
15 15 remotebatch,
16 16 )
17 17
18 18 # equivalent of repo.repository
19 19 class thing(object):
20 20 def hello(self):
21 21 return "Ready."
22 22
23 23 # equivalent of localrepo.localrepository
24 24 class localthing(thing):
25 25 def foo(self, one, two=None):
26 26 if one:
27 27 return "%s and %s" % (one, two,)
28 28 return "Nope"
29 29 def bar(self, b, a):
30 30 return "%s und %s" % (b, a,)
31 31 def greet(self, name=None):
32 32 return "Hello, %s" % name
33 33 def batch(self):
34 34 '''Support for local batching.'''
35 35 return localbatch(self)
36 36
37 37 # usage of "thing" interface
38 38 def use(it):
39 39
40 40 # Direct call to base method shared between client and server.
41 print it.hello()
41 print(it.hello())
42 42
43 43 # Direct calls to proxied methods. They cause individual roundtrips.
44 print it.foo("Un", two="Deux")
45 print it.bar("Eins", "Zwei")
44 print(it.foo("Un", two="Deux"))
45 print(it.bar("Eins", "Zwei"))
46 46
47 47 # Batched call to a couple of (possibly proxied) methods.
48 48 batch = it.batch()
49 49 # The calls return futures to eventually hold results.
50 50 foo = batch.foo(one="One", two="Two")
51 51 foo2 = batch.foo(None)
52 52 bar = batch.bar("Eins", "Zwei")
53 53 # We can call non-batchable proxy methods, but the break the current batch
54 54 # request and cause additional roundtrips.
55 55 greet = batch.greet(name="John Smith")
56 56 # We can also add local methods into the mix, but they break the batch too.
57 57 hello = batch.hello()
58 58 bar2 = batch.bar(b="Uno", a="Due")
59 59 # Only now are all the calls executed in sequence, with as few roundtrips
60 60 # as possible.
61 61 batch.submit()
62 62 # After the call to submit, the futures actually contain values.
63 print foo.value
64 print foo2.value
65 print bar.value
66 print greet.value
67 print hello.value
68 print bar2.value
63 print(foo.value)
64 print(foo2.value)
65 print(bar.value)
66 print(greet.value)
67 print(hello.value)
68 print(bar2.value)
69 69
70 70 # local usage
71 71 mylocal = localthing()
72 print
73 print "== Local"
72 print()
73 print("== Local")
74 74 use(mylocal)
75 75
76 76 # demo remoting; mimicks what wireproto and HTTP/SSH do
77 77
78 78 # shared
79 79
80 80 def escapearg(plain):
81 81 return (plain
82 82 .replace(':', '::')
83 83 .replace(',', ':,')
84 84 .replace(';', ':;')
85 85 .replace('=', ':='))
86 86 def unescapearg(escaped):
87 87 return (escaped
88 88 .replace(':=', '=')
89 89 .replace(':;', ';')
90 90 .replace(':,', ',')
91 91 .replace('::', ':'))
92 92
93 93 # server side
94 94
95 95 # equivalent of wireproto's global functions
96 96 class server(object):
97 97 def __init__(self, local):
98 98 self.local = local
99 99 def _call(self, name, args):
100 100 args = dict(arg.split('=', 1) for arg in args)
101 101 return getattr(self, name)(**args)
102 102 def perform(self, req):
103 print "REQ:", req
103 print("REQ:", req)
104 104 name, args = req.split('?', 1)
105 105 args = args.split('&')
106 106 vals = dict(arg.split('=', 1) for arg in args)
107 107 res = getattr(self, name)(**vals)
108 print " ->", res
108 print(" ->", res)
109 109 return res
110 110 def batch(self, cmds):
111 111 res = []
112 112 for pair in cmds.split(';'):
113 113 name, args = pair.split(':', 1)
114 114 vals = {}
115 115 for a in args.split(','):
116 116 if a:
117 117 n, v = a.split('=')
118 118 vals[n] = unescapearg(v)
119 119 res.append(escapearg(getattr(self, name)(**vals)))
120 120 return ';'.join(res)
121 121 def foo(self, one, two):
122 122 return mangle(self.local.foo(unmangle(one), unmangle(two)))
123 123 def bar(self, b, a):
124 124 return mangle(self.local.bar(unmangle(b), unmangle(a)))
125 125 def greet(self, name):
126 126 return mangle(self.local.greet(unmangle(name)))
127 127 myserver = server(mylocal)
128 128
129 129 # local side
130 130
131 131 # equivalent of wireproto.encode/decodelist, that is, type-specific marshalling
132 132 # here we just transform the strings a bit to check we're properly en-/decoding
133 133 def mangle(s):
134 134 return ''.join(chr(ord(c) + 1) for c in s)
135 135 def unmangle(s):
136 136 return ''.join(chr(ord(c) - 1) for c in s)
137 137
138 138 # equivalent of wireproto.wirerepository and something like http's wire format
139 139 class remotething(thing):
140 140 def __init__(self, server):
141 141 self.server = server
142 142 def _submitone(self, name, args):
143 143 req = name + '?' + '&'.join(['%s=%s' % (n, v) for n, v in args])
144 144 return self.server.perform(req)
145 145 def _submitbatch(self, cmds):
146 146 req = []
147 147 for name, args in cmds:
148 148 args = ','.join(n + '=' + escapearg(v) for n, v in args)
149 149 req.append(name + ':' + args)
150 150 req = ';'.join(req)
151 151 res = self._submitone('batch', [('cmds', req,)])
152 152 return res.split(';')
153 153
154 154 def batch(self):
155 155 return remotebatch(self)
156 156
157 157 @batchable
158 158 def foo(self, one, two=None):
159 159 if not one:
160 160 yield "Nope", None
161 161 encargs = [('one', mangle(one),), ('two', mangle(two),)]
162 162 encresref = future()
163 163 yield encargs, encresref
164 164 yield unmangle(encresref.value)
165 165
166 166 @batchable
167 167 def bar(self, b, a):
168 168 encresref = future()
169 169 yield [('b', mangle(b),), ('a', mangle(a),)], encresref
170 170 yield unmangle(encresref.value)
171 171
172 172 # greet is coded directly. It therefore does not support batching. If it
173 173 # does appear in a batch, the batch is split around greet, and the call to
174 174 # greet is done in its own roundtrip.
175 175 def greet(self, name=None):
176 176 return unmangle(self._submitone('greet', [('name', mangle(name),)]))
177 177
178 178 # demo remote usage
179 179
180 180 myproxy = remotething(myserver)
181 print
182 print "== Remote"
181 print()
182 print("== Remote")
183 183 use(myproxy)
@@ -1,273 +1,271
1 1 #require test-repo
2 2
3 3 $ cd "$TESTDIR"/..
4 4
5 5 $ hg files 'set:(**.py)' | sed 's|\\|/|g' | xargs python contrib/check-py3-compat.py
6 6 doc/check-seclevel.py not using absolute_import
7 7 doc/gendoc.py not using absolute_import
8 8 doc/hgmanpage.py not using absolute_import
9 9 hgext/color.py not using absolute_import
10 10 hgext/eol.py not using absolute_import
11 11 hgext/extdiff.py not using absolute_import
12 12 hgext/factotum.py not using absolute_import
13 13 hgext/fetch.py not using absolute_import
14 14 hgext/fsmonitor/pywatchman/__init__.py not using absolute_import
15 15 hgext/fsmonitor/pywatchman/__init__.py requires print_function
16 16 hgext/fsmonitor/pywatchman/capabilities.py not using absolute_import
17 17 hgext/fsmonitor/pywatchman/pybser.py not using absolute_import
18 18 hgext/gpg.py not using absolute_import
19 19 hgext/graphlog.py not using absolute_import
20 20 hgext/hgcia.py not using absolute_import
21 21 hgext/hgk.py not using absolute_import
22 22 hgext/highlight/__init__.py not using absolute_import
23 23 hgext/highlight/highlight.py not using absolute_import
24 24 hgext/histedit.py not using absolute_import
25 25 hgext/largefiles/__init__.py not using absolute_import
26 26 hgext/largefiles/basestore.py not using absolute_import
27 27 hgext/largefiles/lfcommands.py not using absolute_import
28 28 hgext/largefiles/lfutil.py not using absolute_import
29 29 hgext/largefiles/localstore.py not using absolute_import
30 30 hgext/largefiles/overrides.py not using absolute_import
31 31 hgext/largefiles/proto.py not using absolute_import
32 32 hgext/largefiles/remotestore.py not using absolute_import
33 33 hgext/largefiles/reposetup.py not using absolute_import
34 34 hgext/largefiles/uisetup.py not using absolute_import
35 35 hgext/largefiles/wirestore.py not using absolute_import
36 36 hgext/mq.py not using absolute_import
37 37 hgext/rebase.py not using absolute_import
38 38 hgext/share.py not using absolute_import
39 39 hgext/win32text.py not using absolute_import
40 40 i18n/check-translation.py not using absolute_import
41 41 i18n/polib.py not using absolute_import
42 42 setup.py not using absolute_import
43 43 tests/heredoctest.py requires print_function
44 44 tests/killdaemons.py not using absolute_import
45 45 tests/md5sum.py not using absolute_import
46 46 tests/mockblackbox.py not using absolute_import
47 47 tests/printenv.py not using absolute_import
48 48 tests/readlink.py not using absolute_import
49 49 tests/readlink.py requires print_function
50 50 tests/revlog-formatv0.py not using absolute_import
51 51 tests/run-tests.py not using absolute_import
52 52 tests/sitecustomize.py not using absolute_import
53 53 tests/svn-safe-append.py not using absolute_import
54 54 tests/svnxml.py not using absolute_import
55 55 tests/test-atomictempfile.py not using absolute_import
56 tests/test-batching.py requires print_function
57 56 tests/test-bdiff.py not using absolute_import
58 57 tests/test-bdiff.py requires print_function
59 58 tests/test-context.py not using absolute_import
60 59 tests/test-context.py requires print_function
61 60 tests/test-demandimport.py not using absolute_import
62 61 tests/test-demandimport.py requires print_function
63 62 tests/test-doctest.py not using absolute_import
64 63 tests/test-duplicateoptions.py not using absolute_import
65 64 tests/test-duplicateoptions.py requires print_function
66 65 tests/test-filecache.py not using absolute_import
67 66 tests/test-filecache.py requires print_function
68 67 tests/test-filelog.py not using absolute_import
69 68 tests/test-filelog.py requires print_function
70 69 tests/test-hg-parseurl.py not using absolute_import
71 70 tests/test-hg-parseurl.py requires print_function
72 71 tests/test-hgweb-auth.py not using absolute_import
73 72 tests/test-hgweb-auth.py requires print_function
74 73 tests/test-hgwebdir-paths.py not using absolute_import
75 74 tests/test-hybridencode.py not using absolute_import
76 75 tests/test-hybridencode.py requires print_function
77 76 tests/test-lrucachedict.py not using absolute_import
78 77 tests/test-lrucachedict.py requires print_function
79 78 tests/test-manifest.py not using absolute_import
80 79 tests/test-minirst.py not using absolute_import
81 80 tests/test-minirst.py requires print_function
82 81 tests/test-parseindex2.py not using absolute_import
83 82 tests/test-parseindex2.py requires print_function
84 83 tests/test-pathencode.py not using absolute_import
85 84 tests/test-pathencode.py requires print_function
86 85 tests/test-propertycache.py not using absolute_import
87 86 tests/test-propertycache.py requires print_function
88 87 tests/test-revlog-ancestry.py not using absolute_import
89 88 tests/test-revlog-ancestry.py requires print_function
90 89 tests/test-run-tests.py not using absolute_import
91 90 tests/test-simplemerge.py not using absolute_import
92 91 tests/test-status-inprocess.py not using absolute_import
93 92 tests/test-status-inprocess.py requires print_function
94 93 tests/test-symlink-os-yes-fs-no.py not using absolute_import
95 94 tests/test-trusted.py not using absolute_import
96 95 tests/test-trusted.py requires print_function
97 96 tests/test-ui-color.py not using absolute_import
98 97 tests/test-url.py not using absolute_import
99 98
100 99 #if py3exe
101 100 $ hg files 'set:(**.py)' | sed 's|\\|/|g' | xargs $PYTHON3 contrib/check-py3-compat.py
102 101 contrib/check-code.py: invalid syntax: (unicode error) 'unicodeescape' codec can't decode bytes in position *-*: malformed \N character escape (<unknown>, line *) (glob)
103 102 doc/hgmanpage.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
104 103 hgext/acl.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
105 104 hgext/automv.py: error importing module: <SyntaxError> invalid syntax (commands.py, line *) (line *) (glob)
106 105 hgext/blackbox.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
107 106 hgext/bugzilla.py: error importing module: <ImportError> No module named 'urlparse' (line *) (glob)
108 107 hgext/censor.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
109 108 hgext/chgserver.py: error importing module: <ImportError> No module named 'SocketServer' (line *) (glob)
110 109 hgext/children.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
111 110 hgext/churn.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
112 111 hgext/clonebundles.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
113 112 hgext/color.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
114 113 hgext/convert/bzr.py: error importing module: <SystemError> Parent module 'hgext.convert' not loaded, cannot perform relative import (line *) (glob)
115 114 hgext/convert/common.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
116 115 hgext/convert/convcmd.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
117 116 hgext/convert/cvs.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
118 117 hgext/convert/cvsps.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
119 118 hgext/convert/darcs.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
120 119 hgext/convert/filemap.py: error importing module: <SystemError> Parent module 'hgext.convert' not loaded, cannot perform relative import (line *) (glob)
121 120 hgext/convert/git.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
122 121 hgext/convert/gnuarch.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
123 122 hgext/convert/hg.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
124 123 hgext/convert/monotone.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
125 124 hgext/convert/p*.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
126 125 hgext/convert/subversion.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
127 126 hgext/convert/transport.py: error importing module: <ImportError> No module named 'svn.client' (line *) (glob)
128 127 hgext/eol.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
129 128 hgext/extdiff.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
130 129 hgext/factotum.py: error importing: <ImportError> No module named 'cStringIO' (error at url.py:*) (glob)
131 130 hgext/fetch.py: error importing module: <SyntaxError> invalid syntax (commands.py, line *) (line *) (glob)
132 131 hgext/fsmonitor/state.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
133 132 hgext/fsmonitor/watchmanclient.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
134 133 hgext/gpg.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
135 134 hgext/graphlog.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
136 135 hgext/hgcia.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
137 136 hgext/hgk.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
138 137 hgext/highlight/highlight.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
139 138 hgext/histedit.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
140 139 hgext/keyword.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
141 140 hgext/largefiles/basestore.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
142 141 hgext/largefiles/lfcommands.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
143 142 hgext/largefiles/lfutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
144 143 hgext/largefiles/localstore.py: error importing module: <ImportError> No module named 'lfutil' (line *) (glob)
145 144 hgext/largefiles/overrides.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
146 145 hgext/largefiles/proto.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
147 146 hgext/largefiles/remotestore.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
148 147 hgext/largefiles/reposetup.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
149 148 hgext/largefiles/uisetup.py: error importing module: <SyntaxError> invalid syntax (archival.py, line *) (line *) (glob)
150 149 hgext/largefiles/wirestore.py: error importing module: <ImportError> No module named 'lfutil' (line *) (glob)
151 150 hgext/mq.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
152 151 hgext/notify.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
153 152 hgext/pager.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
154 153 hgext/patchbomb.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
155 154 hgext/purge.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
156 155 hgext/rebase.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
157 156 hgext/record.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
158 157 hgext/relink.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
159 158 hgext/schemes.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
160 159 hgext/share.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
161 160 hgext/shelve.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
162 161 hgext/strip.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
163 162 hgext/transplant.py: error importing: <SyntaxError> invalid syntax (bundle*.py, line *) (error at bundlerepo.py:*) (glob)
164 163 hgext/win*text.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
165 164 mercurial/archival.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
166 165 mercurial/bookmarks.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
167 166 mercurial/branchmap.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:*) (glob)
168 167 mercurial/bundle*.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
169 168 mercurial/bundlerepo.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
170 169 mercurial/byterange.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
171 170 mercurial/changegroup.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:*) (glob)
172 171 mercurial/changelog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
173 172 mercurial/cmdutil.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
174 173 mercurial/commands.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
175 174 mercurial/commandserver.py: error importing module: <ImportError> No module named 'SocketServer' (line *) (glob)
176 175 mercurial/config.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
177 176 mercurial/context.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
178 177 mercurial/copies.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
179 178 mercurial/crecord.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
180 179 mercurial/destutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
181 180 mercurial/dirstate.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
182 181 mercurial/discovery.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
183 182 mercurial/dispatch.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
184 183 mercurial/exchange.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
185 184 mercurial/extensions.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
186 185 mercurial/filelog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
187 186 mercurial/filemerge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
188 187 mercurial/fileset.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
189 188 mercurial/formatter.py: error importing module: <ImportError> No module named 'cPickle' (line *) (glob)
190 189 mercurial/graphmod.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
191 190 mercurial/help.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
192 191 mercurial/hg.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
193 192 mercurial/hgweb/common.py: error importing module: <ImportError> No module named 'BaseHTTPServer' (line *) (glob)
194 193 mercurial/hgweb/hgweb_mod.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
195 194 mercurial/hgweb/hgwebdir_mod.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
196 195 mercurial/hgweb/protocol.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
197 196 mercurial/hgweb/request.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
198 197 mercurial/hgweb/server.py: error importing module: <ImportError> No module named 'BaseHTTPServer' (line *) (glob)
199 198 mercurial/hgweb/webcommands.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
200 199 mercurial/hgweb/webutil.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
201 200 mercurial/hgweb/wsgicgi.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line *) (glob)
202 201 mercurial/hook.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
203 202 mercurial/httpclient/_readers.py: error importing module: <ImportError> No module named 'httplib' (line *) (glob)
204 203 mercurial/httpconnection.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
205 204 mercurial/httppeer.py: error importing module: <ImportError> No module named 'httplib' (line *) (glob)
206 205 mercurial/keepalive.py: error importing module: <ImportError> No module named 'httplib' (line *) (glob)
207 206 mercurial/localrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
208 207 mercurial/lock.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
209 208 mercurial/mail.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
210 209 mercurial/manifest.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
211 210 mercurial/match.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
212 211 mercurial/mdiff.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
213 212 mercurial/merge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
214 213 mercurial/minirst.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
215 214 mercurial/namespaces.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:*) (glob)
216 215 mercurial/obsolete.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
217 216 mercurial/patch.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
218 217 mercurial/pathutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
219 218 mercurial/peer.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
220 219 mercurial/pure/mpatch.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
221 220 mercurial/pure/parsers.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
222 221 mercurial/pushkey.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
223 222 mercurial/pvec.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
224 223 mercurial/registrar.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
225 224 mercurial/repair.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
226 225 mercurial/repoview.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
227 226 mercurial/revlog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
228 227 mercurial/revset.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
229 228 mercurial/scmutil.py: error importing module: <ImportError> No module named 'Queue' (line *) (glob)
230 229 mercurial/scmwindows.py: error importing module: <ImportError> No module named '_winreg' (line *) (glob)
231 230 mercurial/similar.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
232 231 mercurial/simplemerge.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
233 232 mercurial/sshpeer.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
234 233 mercurial/sshserver.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
235 234 mercurial/sslutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
236 235 mercurial/statichttprepo.py: error importing module: <ImportError> No module named 'urllib2' (line *) (glob)
237 236 mercurial/store.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
238 237 mercurial/streamclone.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:*) (glob)
239 238 mercurial/subrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:*) (glob)
240 239 mercurial/tagmerge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
241 240 mercurial/tags.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
242 241 mercurial/templatefilters.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
243 242 mercurial/templatekw.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:*) (glob)
244 243 mercurial/templater.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
245 244 mercurial/transaction.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
246 245 mercurial/ui.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
247 246 mercurial/unionrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
248 247 mercurial/url.py: error importing module: <ImportError> No module named 'cStringIO' (line *) (glob)
249 248 mercurial/util.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:*) (glob)
250 249 mercurial/verify.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:*) (glob)
251 250 mercurial/win*.py: error importing module: <ImportError> No module named 'msvcrt' (line *) (glob)
252 251 mercurial/windows.py: error importing module: <ImportError> No module named '_winreg' (line *) (glob)
253 252 mercurial/wireproto.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
254 253 tests/readlink.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
255 tests/test-batching.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
256 254 tests/test-bdiff.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
257 255 tests/test-context.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
258 256 tests/test-demandimport.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
259 257 tests/test-duplicateoptions.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
260 258 tests/test-filecache.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
261 259 tests/test-filelog.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
262 260 tests/test-hg-parseurl.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
263 261 tests/test-hgweb-auth.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
264 262 tests/test-hybridencode.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
265 263 tests/test-lrucachedict.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
266 264 tests/test-minirst.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
267 265 tests/test-parseindex*.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
268 266 tests/test-propertycache.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
269 267 tests/test-revlog-ancestry.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
270 268 tests/test-status-inprocess.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
271 269 tests/test-trusted.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
272 270
273 271 #endif
General Comments 0
You need to be logged in to leave comments. Login now