##// END OF EJS Templates
tests: look for additional pip warning variant...
Gregory Szorc -
r43276:d6f34ceb default
parent child Browse files
Show More
@@ -1,278 +1,280 b''
1 1 hg debuginstall
2 2 $ hg debuginstall
3 3 checking encoding (ascii)...
4 4 checking Python executable (*) (glob)
5 5 checking Python version (2.*) (glob) (no-py3 !)
6 6 checking Python version (3.*) (glob) (py3 !)
7 7 checking Python lib (.*[Ll]ib.*)... (re)
8 8 checking Python security support (*) (glob)
9 9 TLS 1.2 not supported by Python install; network connections lack modern security (?)
10 10 SNI not supported by Python install; may have connectivity issues with some servers (?)
11 11 checking Mercurial version (*) (glob)
12 12 checking Mercurial custom build (*) (glob)
13 13 checking module policy (*) (glob)
14 14 checking installed modules (*mercurial)... (glob)
15 15 checking registered compression engines (*zlib*) (glob)
16 16 checking available compression engines (*zlib*) (glob)
17 17 checking available compression engines for wire protocol (*zlib*) (glob)
18 18 checking "re2" regexp engine \((available|missing)\) (re)
19 19 checking templates (*mercurial?templates)... (glob)
20 20 checking default template (*mercurial?templates?map-cmdline.default) (glob)
21 21 checking commit editor... (*) (glob)
22 22 checking username (test)
23 23 no problems detected
24 24
25 25 hg debuginstall JSON
26 26 $ hg debuginstall -Tjson | sed 's|\\\\|\\|g'
27 27 [
28 28 {
29 29 "compengines": ["bz2", "bz2truncated", "none", "zlib"*], (glob)
30 30 "compenginesavail": ["bz2", "bz2truncated", "none", "zlib"*], (glob)
31 31 "compenginesserver": [*"zlib"*], (glob)
32 32 "defaulttemplate": "*mercurial?templates?map-cmdline.default", (glob)
33 33 "defaulttemplateerror": null,
34 34 "defaulttemplatenotfound": "default",
35 35 "editor": "*", (glob)
36 36 "editornotfound": false,
37 37 "encoding": "ascii",
38 38 "encodingerror": null,
39 39 "extensionserror": null, (no-pure !)
40 40 "hgmodulepolicy": "*", (glob)
41 41 "hgmodules": "*mercurial", (glob)
42 42 "hgver": "*", (glob)
43 43 "hgverextra": "*", (glob)
44 44 "problems": 0,
45 45 "pythonexe": "*", (glob)
46 46 "pythonlib": "*", (glob)
47 47 "pythonsecurity": [*], (glob)
48 48 "pythonver": "*.*.*", (glob)
49 49 "re2": (true|false), (re)
50 50 "templatedirs": "*mercurial?templates", (glob)
51 51 "username": "test",
52 52 "usernameerror": null,
53 53 "vinotfound": false
54 54 }
55 55 ]
56 56
57 57 hg debuginstall with no username
58 58 $ HGUSER= hg debuginstall
59 59 checking encoding (ascii)...
60 60 checking Python executable (*) (glob)
61 61 checking Python version (2.*) (glob) (no-py3 !)
62 62 checking Python version (3.*) (glob) (py3 !)
63 63 checking Python lib (.*[Ll]ib.*)... (re)
64 64 checking Python security support (*) (glob)
65 65 TLS 1.2 not supported by Python install; network connections lack modern security (?)
66 66 SNI not supported by Python install; may have connectivity issues with some servers (?)
67 67 checking Mercurial version (*) (glob)
68 68 checking Mercurial custom build (*) (glob)
69 69 checking module policy (*) (glob)
70 70 checking installed modules (*mercurial)... (glob)
71 71 checking registered compression engines (*zlib*) (glob)
72 72 checking available compression engines (*zlib*) (glob)
73 73 checking available compression engines for wire protocol (*zlib*) (glob)
74 74 checking "re2" regexp engine \((available|missing)\) (re)
75 75 checking templates (*mercurial?templates)... (glob)
76 76 checking default template (*mercurial?templates?map-cmdline.default) (glob)
77 77 checking commit editor... (*) (glob)
78 78 checking username...
79 79 no username supplied
80 80 (specify a username in your configuration file)
81 81 1 problems detected, please check your install!
82 82 [1]
83 83
84 84 hg debuginstall with invalid encoding
85 85 $ HGENCODING=invalidenc hg debuginstall | grep encoding
86 86 checking encoding (invalidenc)...
87 87 unknown encoding: invalidenc
88 88
89 89 exception message in JSON
90 90
91 91 $ HGENCODING=invalidenc HGUSER= hg debuginstall -Tjson | grep error
92 92 "defaulttemplateerror": null,
93 93 "encodingerror": "unknown encoding: invalidenc",
94 94 "extensionserror": null, (no-pure !)
95 95 "usernameerror": "no username supplied",
96 96
97 97 path variables are expanded (~ is the same as $TESTTMP)
98 98 $ mkdir tools
99 99 $ touch tools/testeditor.exe
100 100 #if execbit
101 101 $ chmod 755 tools/testeditor.exe
102 102 #endif
103 103 $ HGEDITOR="~/tools/testeditor.exe" hg debuginstall
104 104 checking encoding (ascii)...
105 105 checking Python executable (*) (glob)
106 106 checking Python version (2.*) (glob) (no-py3 !)
107 107 checking Python version (3.*) (glob) (py3 !)
108 108 checking Python lib (.*[Ll]ib.*)... (re)
109 109 checking Python security support (*) (glob)
110 110 TLS 1.2 not supported by Python install; network connections lack modern security (?)
111 111 SNI not supported by Python install; may have connectivity issues with some servers (?)
112 112 checking Mercurial version (*) (glob)
113 113 checking Mercurial custom build (*) (glob)
114 114 checking module policy (*) (glob)
115 115 checking installed modules (*mercurial)... (glob)
116 116 checking registered compression engines (*zlib*) (glob)
117 117 checking available compression engines (*zlib*) (glob)
118 118 checking available compression engines for wire protocol (*zlib*) (glob)
119 119 checking "re2" regexp engine \((available|missing)\) (re)
120 120 checking templates (*mercurial?templates)... (glob)
121 121 checking default template (*mercurial?templates?map-cmdline.default) (glob)
122 122 checking commit editor... ($TESTTMP/tools/testeditor.exe)
123 123 checking username (test)
124 124 no problems detected
125 125
126 126 print out the binary post-shlexsplit in the error message when commit editor is
127 127 not found (this is intentionally using backslashes to mimic a windows usecase).
128 128 $ HGEDITOR="c:\foo\bar\baz.exe -y -z" hg debuginstall
129 129 checking encoding (ascii)...
130 130 checking Python executable (*) (glob)
131 131 checking Python version (2.*) (glob) (no-py3 !)
132 132 checking Python version (3.*) (glob) (py3 !)
133 133 checking Python lib (.*[Ll]ib.*)... (re)
134 134 checking Python security support (*) (glob)
135 135 TLS 1.2 not supported by Python install; network connections lack modern security (?)
136 136 SNI not supported by Python install; may have connectivity issues with some servers (?)
137 137 checking Mercurial version (*) (glob)
138 138 checking Mercurial custom build (*) (glob)
139 139 checking module policy (*) (glob)
140 140 checking installed modules (*mercurial)... (glob)
141 141 checking registered compression engines (*zlib*) (glob)
142 142 checking available compression engines (*zlib*) (glob)
143 143 checking available compression engines for wire protocol (*zlib*) (glob)
144 144 checking "re2" regexp engine \((available|missing)\) (re)
145 145 checking templates (*mercurial?templates)... (glob)
146 146 checking default template (*mercurial?templates?map-cmdline.default) (glob)
147 147 checking commit editor... (c:\foo\bar\baz.exe) (windows !)
148 148 Can't find editor 'c:\foo\bar\baz.exe' in PATH (windows !)
149 149 checking commit editor... (c:foobarbaz.exe) (no-windows !)
150 150 Can't find editor 'c:foobarbaz.exe' in PATH (no-windows !)
151 151 (specify a commit editor in your configuration file)
152 152 checking username (test)
153 153 1 problems detected, please check your install!
154 154 [1]
155 155
156 156 debuginstall extension support
157 157 $ hg debuginstall --config extensions.fsmonitor= --config fsmonitor.watchman_exe=false | grep atchman
158 158 fsmonitor checking for watchman binary... (false)
159 159 watchman binary missing or broken: warning: Watchman unavailable: watchman exited with code 1
160 160 Verify the json works too:
161 161 $ hg debuginstall --config extensions.fsmonitor= --config fsmonitor.watchman_exe=false -Tjson | grep atchman
162 162 "fsmonitor-watchman": "false",
163 163 "fsmonitor-watchman-error": "warning: Watchman unavailable: watchman exited with code 1",
164 164
165 165
166 166 #if test-repo
167 167 $ . "$TESTDIR/helpers-testrepo.sh"
168 168
169 169 $ cat >> wixxml.py << EOF
170 170 > import os
171 171 > import subprocess
172 172 > import sys
173 173 > import xml.etree.ElementTree as ET
174 174 > from mercurial import pycompat
175 175 >
176 176 > # MSYS mangles the path if it expands $TESTDIR
177 177 > testdir = os.environ['TESTDIR']
178 178 > ns = {'wix' : 'http://schemas.microsoft.com/wix/2006/wi'}
179 179 >
180 180 > def directory(node, relpath):
181 181 > '''generator of files in the xml node, rooted at relpath'''
182 182 > dirs = node.findall('./{%(wix)s}Directory' % ns)
183 183 >
184 184 > for d in dirs:
185 185 > for subfile in directory(d, relpath + d.attrib['Name'] + '/'):
186 186 > yield subfile
187 187 >
188 188 > files = node.findall('./{%(wix)s}Component/{%(wix)s}File' % ns)
189 189 >
190 190 > for f in files:
191 191 > yield pycompat.sysbytes(relpath + f.attrib['Name'])
192 192 >
193 193 > def hgdirectory(relpath):
194 194 > '''generator of tracked files, rooted at relpath'''
195 195 > hgdir = "%s/../mercurial" % (testdir)
196 196 > args = ['hg', '--cwd', hgdir, 'files', relpath]
197 197 > proc = subprocess.Popen(args, stdout=subprocess.PIPE,
198 198 > stderr=subprocess.PIPE)
199 199 > output = proc.communicate()[0]
200 200 >
201 201 > for line in output.splitlines():
202 202 > if os.name == 'nt':
203 203 > yield line.replace(pycompat.sysbytes(os.sep), b'/')
204 204 > else:
205 205 > yield line
206 206 >
207 207 > tracked = [f for f in hgdirectory(sys.argv[1])]
208 208 >
209 209 > xml = ET.parse("%s/../contrib/packaging/wix/%s.wxs" % (testdir, sys.argv[1]))
210 210 > root = xml.getroot()
211 211 > dir = root.find('.//{%(wix)s}DirectoryRef' % ns)
212 212 >
213 213 > installed = [f for f in directory(dir, '')]
214 214 >
215 215 > print('Not installed:')
216 216 > for f in sorted(set(tracked) - set(installed)):
217 217 > print(' %s' % pycompat.sysstr(f))
218 218 >
219 219 > print('Not tracked:')
220 220 > for f in sorted(set(installed) - set(tracked)):
221 221 > print(' %s' % pycompat.sysstr(f))
222 222 > EOF
223 223
224 224 $ ( testrepohgenv; "$PYTHON" wixxml.py help )
225 225 Not installed:
226 226 help/common.txt
227 227 help/hg-ssh.8.txt
228 228 help/hg.1.txt
229 229 help/hgignore.5.txt
230 230 help/hgrc.5.txt
231 231 Not tracked:
232 232
233 233 $ ( testrepohgenv; "$PYTHON" wixxml.py templates )
234 234 Not installed:
235 235 Not tracked:
236 236
237 237 #endif
238 238
239 239 #if virtualenv
240 240
241 241 Verify that Mercurial is installable with pip. Note that this MUST be
242 242 the last test in this file, because we do some nasty things to the
243 243 shell environment in order to make the virtualenv work reliably.
244 244
245 245 $ cd $TESTTMP
246 246 Note: --no-site-packages is deprecated, but some places have an
247 247 ancient virtualenv from their linux distro or similar and it's not yet
248 248 the default for them.
249 249 $ unset PYTHONPATH
250 250 $ "$PYTHON" -m virtualenv --no-site-packages --never-download installenv >> pip.log
251 251 DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. (?)
252 DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support (?)
252 253 Note: we use this weird path to run pip and hg to avoid platform differences,
253 254 since it's bin on most platforms but Scripts on Windows.
254 255 $ ./installenv/*/pip install --no-index $TESTDIR/.. >> pip.log
255 256 DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. (?)
257 DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support (?)
256 258 $ ./installenv/*/hg debuginstall || cat pip.log
257 259 checking encoding (ascii)...
258 260 checking Python executable (*) (glob)
259 261 checking Python version (2.*) (glob) (no-py3 !)
260 262 checking Python version (3.*) (glob) (py3 !)
261 263 checking Python lib (*)... (glob)
262 264 checking Python security support (*) (glob)
263 265 TLS 1.2 not supported by Python install; network connections lack modern security (?)
264 266 SNI not supported by Python install; may have connectivity issues with some servers (?)
265 267 checking Mercurial version (*) (glob)
266 268 checking Mercurial custom build (*) (glob)
267 269 checking module policy (*) (glob)
268 270 checking installed modules (*/mercurial)... (glob)
269 271 checking registered compression engines (*) (glob)
270 272 checking available compression engines (*) (glob)
271 273 checking available compression engines for wire protocol (*) (glob)
272 274 checking "re2" regexp engine \((available|missing)\) (re)
273 275 checking templates ($TESTTMP/installenv/*/site-packages/mercurial/templates)... (glob)
274 276 checking default template ($TESTTMP/installenv/*/site-packages/mercurial/templates/map-cmdline.default) (glob)
275 277 checking commit editor... (*) (glob)
276 278 checking username (test)
277 279 no problems detected
278 280 #endif
General Comments 0
You need to be logged in to leave comments. Login now