##// END OF EJS Templates
tests: make tinyproxy.py use print_function
Pulkit Goyal -
r28646:f452c1cf default
parent child Browse files
Show More
@@ -1,308 +1,306 b''
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 contrib/import-checker.py not using absolute_import
7 7 contrib/import-checker.py requires print_function
8 8 doc/check-seclevel.py not using absolute_import
9 9 doc/gendoc.py not using absolute_import
10 10 doc/hgmanpage.py not using absolute_import
11 11 hgext/color.py not using absolute_import
12 12 hgext/eol.py not using absolute_import
13 13 hgext/extdiff.py not using absolute_import
14 14 hgext/factotum.py not using absolute_import
15 15 hgext/fetch.py not using absolute_import
16 16 hgext/fsmonitor/pywatchman/__init__.py not using absolute_import
17 17 hgext/fsmonitor/pywatchman/__init__.py requires print_function
18 18 hgext/fsmonitor/pywatchman/capabilities.py not using absolute_import
19 19 hgext/fsmonitor/pywatchman/pybser.py not using absolute_import
20 20 hgext/gpg.py not using absolute_import
21 21 hgext/graphlog.py not using absolute_import
22 22 hgext/hgcia.py not using absolute_import
23 23 hgext/hgk.py not using absolute_import
24 24 hgext/highlight/__init__.py not using absolute_import
25 25 hgext/highlight/highlight.py not using absolute_import
26 26 hgext/histedit.py not using absolute_import
27 27 hgext/largefiles/__init__.py not using absolute_import
28 28 hgext/largefiles/basestore.py not using absolute_import
29 29 hgext/largefiles/lfcommands.py not using absolute_import
30 30 hgext/largefiles/lfutil.py not using absolute_import
31 31 hgext/largefiles/localstore.py not using absolute_import
32 32 hgext/largefiles/overrides.py not using absolute_import
33 33 hgext/largefiles/proto.py not using absolute_import
34 34 hgext/largefiles/remotestore.py not using absolute_import
35 35 hgext/largefiles/reposetup.py not using absolute_import
36 36 hgext/largefiles/uisetup.py not using absolute_import
37 37 hgext/largefiles/wirestore.py not using absolute_import
38 38 hgext/mq.py not using absolute_import
39 39 hgext/rebase.py not using absolute_import
40 40 hgext/share.py not using absolute_import
41 41 hgext/win32text.py not using absolute_import
42 42 i18n/check-translation.py not using absolute_import
43 43 i18n/polib.py not using absolute_import
44 44 setup.py not using absolute_import
45 45 tests/filterpyflakes.py requires print_function
46 46 tests/generate-working-copy-states.py requires print_function
47 47 tests/get-with-headers.py requires print_function
48 48 tests/heredoctest.py requires print_function
49 49 tests/hypothesishelpers.py not using absolute_import
50 50 tests/hypothesishelpers.py requires print_function
51 51 tests/killdaemons.py not using absolute_import
52 52 tests/md5sum.py not using absolute_import
53 53 tests/mockblackbox.py not using absolute_import
54 54 tests/printenv.py not using absolute_import
55 55 tests/readlink.py not using absolute_import
56 56 tests/readlink.py requires print_function
57 57 tests/revlog-formatv0.py not using absolute_import
58 58 tests/run-tests.py not using absolute_import
59 59 tests/seq.py not using absolute_import
60 60 tests/seq.py requires print_function
61 61 tests/silenttestrunner.py not using absolute_import
62 62 tests/silenttestrunner.py requires print_function
63 63 tests/sitecustomize.py not using absolute_import
64 64 tests/svn-safe-append.py not using absolute_import
65 65 tests/svnxml.py not using absolute_import
66 66 tests/test-ancestor.py requires print_function
67 67 tests/test-atomictempfile.py not using absolute_import
68 68 tests/test-batching.py not using absolute_import
69 69 tests/test-batching.py requires print_function
70 70 tests/test-bdiff.py not using absolute_import
71 71 tests/test-bdiff.py requires print_function
72 72 tests/test-context.py not using absolute_import
73 73 tests/test-context.py requires print_function
74 74 tests/test-demandimport.py not using absolute_import
75 75 tests/test-demandimport.py requires print_function
76 76 tests/test-doctest.py not using absolute_import
77 77 tests/test-duplicateoptions.py not using absolute_import
78 78 tests/test-duplicateoptions.py requires print_function
79 79 tests/test-filecache.py not using absolute_import
80 80 tests/test-filecache.py requires print_function
81 81 tests/test-filelog.py not using absolute_import
82 82 tests/test-filelog.py requires print_function
83 83 tests/test-hg-parseurl.py not using absolute_import
84 84 tests/test-hg-parseurl.py requires print_function
85 85 tests/test-hgweb-auth.py not using absolute_import
86 86 tests/test-hgweb-auth.py requires print_function
87 87 tests/test-hgwebdir-paths.py not using absolute_import
88 88 tests/test-hybridencode.py not using absolute_import
89 89 tests/test-hybridencode.py requires print_function
90 90 tests/test-lrucachedict.py not using absolute_import
91 91 tests/test-lrucachedict.py requires print_function
92 92 tests/test-manifest.py not using absolute_import
93 93 tests/test-minirst.py not using absolute_import
94 94 tests/test-minirst.py requires print_function
95 95 tests/test-parseindex2.py not using absolute_import
96 96 tests/test-parseindex2.py requires print_function
97 97 tests/test-pathencode.py not using absolute_import
98 98 tests/test-pathencode.py requires print_function
99 99 tests/test-propertycache.py not using absolute_import
100 100 tests/test-propertycache.py requires print_function
101 101 tests/test-revlog-ancestry.py not using absolute_import
102 102 tests/test-revlog-ancestry.py requires print_function
103 103 tests/test-run-tests.py not using absolute_import
104 104 tests/test-simplemerge.py not using absolute_import
105 105 tests/test-status-inprocess.py not using absolute_import
106 106 tests/test-status-inprocess.py requires print_function
107 107 tests/test-symlink-os-yes-fs-no.py not using absolute_import
108 108 tests/test-trusted.py not using absolute_import
109 109 tests/test-trusted.py requires print_function
110 110 tests/test-ui-color.py not using absolute_import
111 111 tests/test-ui-color.py requires print_function
112 112 tests/test-ui-config.py not using absolute_import
113 113 tests/test-ui-config.py requires print_function
114 114 tests/test-ui-verbosity.py not using absolute_import
115 115 tests/test-ui-verbosity.py requires print_function
116 116 tests/test-url.py not using absolute_import
117 117 tests/test-url.py requires print_function
118 118 tests/test-walkrepo.py requires print_function
119 119 tests/test-wireproto.py requires print_function
120 tests/tinyproxy.py requires print_function
121 120
122 121 #if py3exe
123 122 $ hg files 'set:(**.py)' | sed 's|\\|/|g' | xargs $PYTHON3 contrib/check-py3-compat.py
124 123 contrib/check-code.py: invalid syntax: (unicode error) 'unicodeescape' codec can't decode bytes in position *-*: malformed \N character escape (<unknown>, line *) (glob)
125 124 contrib/import-checker.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
126 125 doc/hgmanpage.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
127 126 hgext/acl.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
128 127 hgext/automv.py: error importing module: <SyntaxError> invalid syntax (commands.py, line *) (line *) (glob)
129 128 hgext/blackbox.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
130 129 hgext/bugzilla.py: error importing module: <ImportError> No module named 'urlparse' (line 284)
131 130 hgext/censor.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
132 131 hgext/chgserver.py: error importing module: <ImportError> No module named 'SocketServer' (line 43)
133 132 hgext/children.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
134 133 hgext/churn.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
135 134 hgext/clonebundles.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
136 135 hgext/color.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
137 136 hgext/convert/bzr.py: error importing module: <SystemError> Parent module 'hgext.convert' not loaded, cannot perform relative import (line 18)
138 137 hgext/convert/common.py: error importing module: <ImportError> No module named 'cPickle' (line 10)
139 138 hgext/convert/convcmd.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
140 139 hgext/convert/cvs.py: error importing module: <ImportError> No module named 'cStringIO' (line 9)
141 140 hgext/convert/cvsps.py: error importing module: <ImportError> No module named 'cPickle' (line 9)
142 141 hgext/convert/darcs.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
143 142 hgext/convert/filemap.py: error importing module: <SystemError> Parent module 'hgext.convert' not loaded, cannot perform relative import (line 14)
144 143 hgext/convert/git.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
145 144 hgext/convert/gnuarch.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
146 145 hgext/convert/hg.py: error importing module: <ImportError> No module named 'cStringIO' (line 21)
147 146 hgext/convert/monotone.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
148 147 hgext/convert/p4.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
149 148 hgext/convert/subversion.py: error importing module: <ImportError> No module named 'cPickle' (line 6)
150 149 hgext/convert/transport.py: error importing module: <ImportError> No module named 'svn.client' (line 21)
151 150 hgext/eol.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
152 151 hgext/extdiff.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
153 152 hgext/factotum.py: error importing: <ImportError> No module named 'cStringIO' (error at url.py:13)
154 153 hgext/fetch.py: error importing module: <SyntaxError> invalid syntax (commands.py, line *) (line *) (glob)
155 154 hgext/fsmonitor/state.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
156 155 hgext/fsmonitor/watchmanclient.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
157 156 hgext/gpg.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
158 157 hgext/graphlog.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
159 158 hgext/hgcia.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
160 159 hgext/hgk.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
161 160 hgext/highlight/highlight.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
162 161 hgext/histedit.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
163 162 hgext/keyword.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
164 163 hgext/largefiles/basestore.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
165 164 hgext/largefiles/lfcommands.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
166 165 hgext/largefiles/lfutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
167 166 hgext/largefiles/localstore.py: error importing module: <ImportError> No module named 'lfutil' (line 13)
168 167 hgext/largefiles/overrides.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
169 168 hgext/largefiles/proto.py: error importing module: <ImportError> No module named 'urllib2' (line 7)
170 169 hgext/largefiles/remotestore.py: error importing module: <ImportError> No module named 'urllib2' (line 9)
171 170 hgext/largefiles/reposetup.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
172 171 hgext/largefiles/uisetup.py: error importing module: <SyntaxError> invalid syntax (archival.py, line *) (line *) (glob)
173 172 hgext/largefiles/wirestore.py: error importing module: <ImportError> No module named 'lfutil' (line 8)
174 173 hgext/mq.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
175 174 hgext/notify.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
176 175 hgext/pager.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
177 176 hgext/patchbomb.py: error importing module: <ImportError> No module named 'cStringIO' (line 68)
178 177 hgext/purge.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
179 178 hgext/rebase.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
180 179 hgext/record.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
181 180 hgext/relink.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
182 181 hgext/schemes.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
183 182 hgext/share.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
184 183 hgext/shelve.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
185 184 hgext/strip.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
186 185 hgext/transplant.py: error importing: <SyntaxError> invalid syntax (bundle*.py, line *) (error at bundlerepo.py:*) (glob)
187 186 hgext/win32text.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
188 187 mercurial/archival.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
189 188 mercurial/bookmarks.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
190 189 mercurial/branchmap.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:10)
191 190 mercurial/bundle*.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
192 191 mercurial/bundlerepo.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
193 192 mercurial/byterange.py: error importing module: <ImportError> No module named 'urllib2' (line 30)
194 193 mercurial/changegroup.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:10)
195 194 mercurial/changelog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
196 195 mercurial/cmdutil.py: error importing module: <ImportError> No module named 'cStringIO' (line 10)
197 196 mercurial/commands.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
198 197 mercurial/commandserver.py: error importing module: <ImportError> No module named 'SocketServer' (line 10)
199 198 mercurial/config.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
200 199 mercurial/context.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
201 200 mercurial/copies.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
202 201 mercurial/crecord.py: error importing module: <ImportError> No module named 'cStringIO' (line 13)
203 202 mercurial/destutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
204 203 mercurial/dirstate.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
205 204 mercurial/discovery.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
206 205 mercurial/dispatch.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
207 206 mercurial/exchange.py: error importing module: <ImportError> No module named 'urllib2' (line 12)
208 207 mercurial/extensions.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
209 208 mercurial/filelog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
210 209 mercurial/filemerge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
211 210 mercurial/fileset.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
212 211 mercurial/formatter.py: error importing module: <ImportError> No module named 'cPickle' (line 10)
213 212 mercurial/graphmod.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
214 213 mercurial/help.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
215 214 mercurial/hg.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
216 215 mercurial/hgweb/common.py: error importing module: <ImportError> No module named 'BaseHTTPServer' (line 11)
217 216 mercurial/hgweb/hgweb_mod.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line 14)
218 217 mercurial/hgweb/hgwebdir_mod.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line 15)
219 218 mercurial/hgweb/protocol.py: error importing module: <ImportError> No module named 'cStringIO' (line 10)
220 219 mercurial/hgweb/request.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line 15)
221 220 mercurial/hgweb/server.py: error importing module: <ImportError> No module named 'BaseHTTPServer' (line 11)
222 221 mercurial/hgweb/webcommands.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line 16)
223 222 mercurial/hgweb/webutil.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line 16)
224 223 mercurial/hgweb/wsgicgi.py: error importing module: <SystemError> Parent module 'mercurial.hgweb' not loaded, cannot perform relative import (line 16)
225 224 mercurial/hook.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
226 225 mercurial/httpclient/_readers.py: error importing module: <ImportError> No module named 'httplib' (line 36)
227 226 mercurial/httpconnection.py: error importing module: <ImportError> No module named 'urllib2' (line 17)
228 227 mercurial/httppeer.py: error importing module: <ImportError> No module named 'httplib' (line 12)
229 228 mercurial/keepalive.py: error importing module: <ImportError> No module named 'httplib' (line 113)
230 229 mercurial/localrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
231 230 mercurial/lock.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
232 231 mercurial/mail.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
233 232 mercurial/manifest.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
234 233 mercurial/match.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
235 234 mercurial/mdiff.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
236 235 mercurial/merge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
237 236 mercurial/minirst.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
238 237 mercurial/namespaces.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:11)
239 238 mercurial/obsolete.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
240 239 mercurial/patch.py: error importing module: <ImportError> No module named 'cStringIO' (line 11)
241 240 mercurial/pathutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
242 241 mercurial/peer.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
243 242 mercurial/pure/mpatch.py: error importing module: <ImportError> No module named 'cStringIO' (line 10)
244 243 mercurial/pure/parsers.py: error importing module: <ImportError> No module named 'cStringIO' (line 10)
245 244 mercurial/pushkey.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
246 245 mercurial/pvec.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
247 246 mercurial/registrar.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
248 247 mercurial/repair.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
249 248 mercurial/repoview.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
250 249 mercurial/revlog.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
251 250 mercurial/revset.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
252 251 mercurial/scmutil.py: error importing module: <ImportError> No module named 'Queue' (line 10)
253 252 mercurial/scmwindows.py: error importing module: <ImportError> No module named '_winreg' (line 3)
254 253 mercurial/similar.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
255 254 mercurial/simplemerge.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
256 255 mercurial/sshpeer.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
257 256 mercurial/sshserver.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
258 257 mercurial/sslutil.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
259 258 mercurial/statichttprepo.py: error importing module: <ImportError> No module named 'urllib2' (line 15)
260 259 mercurial/store.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
261 260 mercurial/streamclone.py: error importing: <ImportError> No module named 'Queue' (error at scmutil.py:10)
262 261 mercurial/subrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at cmdutil.py:10)
263 262 mercurial/tagmerge.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
264 263 mercurial/tags.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
265 264 mercurial/templatefilters.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:11)
266 265 mercurial/templatekw.py: error importing: <ImportError> No module named 'cStringIO' (error at patch.py:11)
267 266 mercurial/templater.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
268 267 mercurial/transaction.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
269 268 mercurial/ui.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
270 269 mercurial/unionrepo.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
271 270 mercurial/url.py: error importing module: <ImportError> No module named 'cStringIO' (line 13)
272 271 mercurial/util.py: error importing: <ImportError> No module named 'cStringIO' (error at parsers.py:10)
273 272 mercurial/verify.py: error importing: <ImportError> No module named 'cStringIO' (error at mpatch.py:10)
274 273 mercurial/win32.py: error importing module: <ImportError> No module named 'msvcrt' (line 12)
275 274 mercurial/windows.py: error importing module: <ImportError> No module named '_winreg' (line 10)
276 275 mercurial/wireproto.py: error importing module: <SyntaxError> invalid syntax (bundle*.py, line *) (line *) (glob)
277 276 tests/filterpyflakes.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
278 277 tests/generate-working-copy-states.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
279 278 tests/get-with-headers.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
280 279 tests/readlink.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
281 280 tests/seq.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
282 281 tests/silenttestrunner.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
283 282 tests/test-ancestor.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
284 283 tests/test-batching.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
285 284 tests/test-bdiff.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
286 285 tests/test-context.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
287 286 tests/test-demandimport.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
288 287 tests/test-duplicateoptions.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
289 288 tests/test-filecache.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
290 289 tests/test-filelog.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
291 290 tests/test-hg-parseurl.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
292 291 tests/test-hgweb-auth.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
293 292 tests/test-hybridencode.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
294 293 tests/test-lrucachedict.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
295 294 tests/test-minirst.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
296 295 tests/test-parseindex*.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
297 296 tests/test-propertycache.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
298 297 tests/test-revlog-ancestry.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
299 298 tests/test-status-inprocess.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
300 299 tests/test-trusted.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
301 300 tests/test-ui-color.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
302 301 tests/test-ui-config.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
303 302 tests/test-ui-verbosity.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
304 303 tests/test-walkrepo.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
305 304 tests/test-wireproto.py: invalid syntax: invalid syntax (<unknown>, line *) (glob)
306 tests/tinyproxy.py: invalid syntax: Missing parentheses in call to 'print' (<unknown>, line *) (glob)
307 305
308 306 #endif
@@ -1,157 +1,157 b''
1 1 #!/usr/bin/env python
2 2
3 from __future__ import absolute_import
3 from __future__ import absolute_import, print_function
4 4
5 5 __doc__ = """Tiny HTTP Proxy.
6 6
7 7 This module implements GET, HEAD, POST, PUT and DELETE methods
8 8 on BaseHTTPServer, and behaves as an HTTP proxy. The CONNECT
9 9 method is also implemented experimentally, but has not been
10 10 tested yet.
11 11
12 12 Any help will be greatly appreciated. SUZUKI Hisao
13 13 """
14 14
15 15 __version__ = "0.2.1"
16 16
17 17 import BaseHTTPServer
18 18 import os
19 19 import select
20 20 import socket
21 21 import SocketServer
22 22 import urlparse
23 23
24 24 class ProxyHandler (BaseHTTPServer.BaseHTTPRequestHandler):
25 25 __base = BaseHTTPServer.BaseHTTPRequestHandler
26 26 __base_handle = __base.handle
27 27
28 28 server_version = "TinyHTTPProxy/" + __version__
29 29 rbufsize = 0 # self.rfile Be unbuffered
30 30
31 31 def handle(self):
32 32 (ip, port) = self.client_address
33 33 allowed = getattr(self, 'allowed_clients', None)
34 34 if allowed is not None and ip not in allowed:
35 35 self.raw_requestline = self.rfile.readline()
36 36 if self.parse_request():
37 37 self.send_error(403)
38 38 else:
39 39 self.__base_handle()
40 40
41 41 def log_request(self, code='-', size='-'):
42 42 xheaders = [h for h in self.headers.items() if h[0].startswith('x-')]
43 43 self.log_message('"%s" %s %s%s',
44 44 self.requestline, str(code), str(size),
45 45 ''.join([' %s:%s' % h for h in sorted(xheaders)]))
46 46
47 47 def _connect_to(self, netloc, soc):
48 48 i = netloc.find(':')
49 49 if i >= 0:
50 50 host_port = netloc[:i], int(netloc[i + 1:])
51 51 else:
52 52 host_port = netloc, 80
53 print "\t" "connect to %s:%d" % host_port
53 print("\t" "connect to %s:%d" % host_port)
54 54 try: soc.connect(host_port)
55 55 except socket.error as arg:
56 56 try: msg = arg[1]
57 57 except (IndexError, TypeError): msg = arg
58 58 self.send_error(404, msg)
59 59 return 0
60 60 return 1
61 61
62 62 def do_CONNECT(self):
63 63 soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
64 64 try:
65 65 if self._connect_to(self.path, soc):
66 66 self.log_request(200)
67 67 self.wfile.write(self.protocol_version +
68 68 " 200 Connection established\r\n")
69 69 self.wfile.write("Proxy-agent: %s\r\n" % self.version_string())
70 70 self.wfile.write("\r\n")
71 71 self._read_write(soc, 300)
72 72 finally:
73 print "\t" "bye"
73 print("\t" "bye")
74 74 soc.close()
75 75 self.connection.close()
76 76
77 77 def do_GET(self):
78 78 (scm, netloc, path, params, query, fragment) = urlparse.urlparse(
79 79 self.path, 'http')
80 80 if scm != 'http' or fragment or not netloc:
81 81 self.send_error(400, "bad url %s" % self.path)
82 82 return
83 83 soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
84 84 try:
85 85 if self._connect_to(netloc, soc):
86 86 self.log_request()
87 87 soc.send("%s %s %s\r\n" % (
88 88 self.command,
89 89 urlparse.urlunparse(('', '', path, params, query, '')),
90 90 self.request_version))
91 91 self.headers['Connection'] = 'close'
92 92 del self.headers['Proxy-Connection']
93 93 for key_val in self.headers.items():
94 94 soc.send("%s: %s\r\n" % key_val)
95 95 soc.send("\r\n")
96 96 self._read_write(soc)
97 97 finally:
98 print "\t" "bye"
98 print("\t" "bye")
99 99 soc.close()
100 100 self.connection.close()
101 101
102 102 def _read_write(self, soc, max_idling=20):
103 103 iw = [self.connection, soc]
104 104 ow = []
105 105 count = 0
106 106 while True:
107 107 count += 1
108 108 (ins, _, exs) = select.select(iw, ow, iw, 3)
109 109 if exs:
110 110 break
111 111 if ins:
112 112 for i in ins:
113 113 if i is soc:
114 114 out = self.connection
115 115 else:
116 116 out = soc
117 117 try:
118 118 data = i.recv(8192)
119 119 except socket.error:
120 120 break
121 121 if data:
122 122 out.send(data)
123 123 count = 0
124 124 else:
125 print "\t" "idle", count
125 print("\t" "idle", count)
126 126 if count == max_idling:
127 127 break
128 128
129 129 do_HEAD = do_GET
130 130 do_POST = do_GET
131 131 do_PUT = do_GET
132 132 do_DELETE = do_GET
133 133
134 134 class ThreadingHTTPServer (SocketServer.ThreadingMixIn,
135 135 BaseHTTPServer.HTTPServer):
136 136 def __init__(self, *args, **kwargs):
137 137 BaseHTTPServer.HTTPServer.__init__(self, *args, **kwargs)
138 138 a = open("proxy.pid", "w")
139 139 a.write(str(os.getpid()) + "\n")
140 140 a.close()
141 141
142 142 if __name__ == '__main__':
143 143 from sys import argv
144 144 if argv[1:] and argv[1] in ('-h', '--help'):
145 print argv[0], "[port [allowed_client_name ...]]"
145 print(argv[0], "[port [allowed_client_name ...]]")
146 146 else:
147 147 if argv[2:]:
148 148 allowed = []
149 149 for name in argv[2:]:
150 150 client = socket.gethostbyname(name)
151 151 allowed.append(client)
152 print "Accept: %s (%s)" % (client, name)
152 print("Accept: %s (%s)" % (client, name))
153 153 ProxyHandler.allowed_clients = allowed
154 154 del argv[2:]
155 155 else:
156 print "Any clients will be served..."
156 print("Any clients will be served...")
157 157 BaseHTTPServer.test(ProxyHandler, ThreadingHTTPServer)
General Comments 0
You need to be logged in to leave comments. Login now