Show More
@@ -40,7 +40,7 b'' | |||
|
40 | 40 | <Directory Id="help.internaldir" Name="internals"> |
|
41 | 41 | <Component Id="help.internals" Guid="$(var.help.internals.guid)" Win64='$(var.IsX64)'> |
|
42 | 42 | <File Id="internals.bundles.txt" Name="bundles.txt" KeyPath="yes" /> |
|
43 |
<File Id="internals.censor.txt" Name="censor.txt" |
|
|
43 | <File Id="internals.censor.txt" Name="censor.txt" /> | |
|
44 | 44 | <File Id="internals.changegroups.txt" Name="changegroups.txt" /> |
|
45 | 45 | <File Id="internals.requirements.txt" Name="requirements.txt" /> |
|
46 | 46 | <File Id="internals.revlogs.txt" Name="revlogs.txt" /> |
@@ -133,7 +133,7 b' def churn(ui, repo, *pats, **opts):' | |||
|
133 | 133 | Examples:: |
|
134 | 134 | |
|
135 | 135 | # display count of changed lines for every committer |
|
136 |
hg churn - |
|
|
136 | hg churn -T "{author|email}" | |
|
137 | 137 | |
|
138 | 138 | # display daily activity graph |
|
139 | 139 | hg churn -f "%H" -s -c |
@@ -21,6 +21,7 b' from mercurial import (' | |||
|
21 | 21 | cmdutil, |
|
22 | 22 | commands, |
|
23 | 23 | copies, |
|
24 | debugcommands, | |
|
24 | 25 | exchange, |
|
25 | 26 | extensions, |
|
26 | 27 | filemerge, |
@@ -39,6 +40,11 b' from . import (' | |||
|
39 | 40 | ) |
|
40 | 41 | |
|
41 | 42 | def uisetup(ui): |
|
43 | # TODO: debugcommands should use a separate command table | |
|
44 | # Side-effect of accessing is debugcommands module is guaranteed to be | |
|
45 | # imported and commands.table is populated. | |
|
46 | debugcommands.command | |
|
47 | ||
|
42 | 48 | # Disable auto-status for some commands which assume that all |
|
43 | 49 | # files in the result are under Mercurial's control |
|
44 | 50 |
@@ -155,7 +155,8 b" funcs = '''os.path.join os.path.split os" | |||
|
155 | 155 | # These functions are required to be called with local encoded string |
|
156 | 156 | # because they expects argument is local encoded string and cause |
|
157 | 157 | # problem with unicode string. |
|
158 |
rfuncs = '''mercurial.encoding.upper mercurial.encoding.lower |
|
|
158 | rfuncs = '''mercurial.encoding.upper mercurial.encoding.lower | |
|
159 | mercurial.pycompat.bytestr''' | |
|
159 | 160 | |
|
160 | 161 | # List of Windows specific functions to be wrapped. |
|
161 | 162 | winfuncs = '''os.path.splitunc''' |
@@ -2308,7 +2308,9 b' def _dograft(ui, repo, *revs, **opts):' | |||
|
2308 | 2308 | # check ancestors for earlier grafts |
|
2309 | 2309 | ui.debug('scanning for duplicate grafts\n') |
|
2310 | 2310 | |
|
2311 | for rev in repo.changelog.findmissingrevs(revs, [crev]): | |
|
2311 | # The only changesets we can be sure doesn't contain grafts of any | |
|
2312 | # revs, are the ones that are common ancestors of *all* revs: | |
|
2313 | for rev in repo.revs('only(%d,ancestor(%ld))', crev, revs): | |
|
2312 | 2314 | ctx = repo[rev] |
|
2313 | 2315 | n = ctx.extra().get('source') |
|
2314 | 2316 | if n in ids: |
@@ -70,7 +70,7 b' 6. If a program named ``hgmerge`` can be' | |||
|
70 | 70 | 7. If the file to be merged is not binary and is not a symlink, then |
|
71 | 71 | internal ``:merge`` is used. |
|
72 | 72 | |
|
73 | 8. The merge of the file fails and must be resolved before commit. | |
|
73 | 8. Otherwise, ``:prompt`` is used. | |
|
74 | 74 | |
|
75 | 75 | .. note:: |
|
76 | 76 |
@@ -825,7 +825,7 b' def validatesocket(sock):' | |||
|
825 | 825 | 'remove the old one from [hostfingerprints] ' |
|
826 | 826 | 'to upgrade to a more secure SHA-256 ' |
|
827 | 827 | 'fingerprint: ' |
|
828 |
'%s |
|
|
828 | '%s:fingerprints=%s)\n') % ( | |
|
829 | 829 | host, host, nicefingerprint)) |
|
830 | 830 | return |
|
831 | 831 |
@@ -247,7 +247,7 b' def gethgversion():' | |||
|
247 | 247 | return (int(m.group(1)), int(m.group(2))) |
|
248 | 248 | |
|
249 | 249 | @checkvers("hg", "Mercurial >= %s", |
|
250 |
list([(1.0 * x) / 10 for x in range(9, |
|
|
250 | list([(1.0 * x) / 10 for x in range(9, 99)])) | |
|
251 | 251 | def has_hg_range(v): |
|
252 | 252 | major, minor = v.split('.')[0:2] |
|
253 | 253 | return gethgversion() >= (int(major), int(minor)) |
@@ -1307,4 +1307,48 b' Graft a change into a new file previousl' | |||
|
1307 | 1307 | $ hg status --change . |
|
1308 | 1308 | M b/x |
|
1309 | 1309 | |
|
1310 | Prepare for test of skipped changesets and how merges can influence it: | |
|
1311 | ||
|
1312 | $ hg merge -q -r 1 --tool :local | |
|
1313 | $ hg ci -m m | |
|
1314 | $ echo xx >> b/x | |
|
1315 | $ hg ci -m xx | |
|
1316 | ||
|
1317 | $ hg log -G -T '{rev} {desc|firstline}' | |
|
1318 | @ 7 xx | |
|
1319 | | | |
|
1320 | o 6 m | |
|
1321 | |\ | |
|
1322 | | o 5 y | |
|
1323 | | | | |
|
1324 | +---o 4 y | |
|
1325 | | | | |
|
1326 | | o 3 x | |
|
1327 | | | | |
|
1328 | | o 2 b | |
|
1329 | | | | |
|
1330 | o | 1 x | |
|
1331 | |/ | |
|
1332 | o 0 a | |
|
1333 | ||
|
1334 | Grafting of plain changes correctly detects that 3 and 5 should be skipped: | |
|
1335 | ||
|
1336 | $ hg up -qCr 4 | |
|
1337 | $ hg graft --tool :local -r 2::5 | |
|
1338 | skipping already grafted revision 3:ca093ca2f1d9 (was grafted from 1:13ec5badbf2a) | |
|
1339 | skipping already grafted revision 5:43e9eb70dab0 (was grafted from 4:6c9a1289e5f1) | |
|
1340 | grafting 2:42127f193bcd "b" | |
|
1341 | ||
|
1342 | Extending the graft range to include a (skipped) merge of 3 will not prevent us from | |
|
1343 | also detecting that both 3 and 5 should be skipped: | |
|
1344 | ||
|
1345 | $ hg up -qCr 4 | |
|
1346 | $ hg graft --tool :local -r 2::7 | |
|
1347 | skipping ungraftable merge revision 6 | |
|
1348 | skipping already grafted revision 3:ca093ca2f1d9 (was grafted from 1:13ec5badbf2a) | |
|
1349 | skipping already grafted revision 5:43e9eb70dab0 (was grafted from 4:6c9a1289e5f1) | |
|
1350 | grafting 2:42127f193bcd "b" | |
|
1351 | grafting 7:d3c3f2b38ecc "xx" | |
|
1352 | note: graft of 7:d3c3f2b38ecc created no changes to commit | |
|
1353 | ||
|
1310 | 1354 | $ cd .. |
@@ -1831,7 +1831,7 b' Test dynamic list of merge tools only sh' | |||
|
1831 | 1831 | but it will by default not be used for symlinks and binary files. |
|
1832 | 1832 | 7. If the file to be merged is not binary and is not a symlink, then |
|
1833 | 1833 | internal ":merge" is used. |
|
1834 | 8. The merge of the file fails and must be resolved before commit. | |
|
1834 | 8. Otherwise, ":prompt" is used. | |
|
1835 | 1835 | |
|
1836 | 1836 | Note: |
|
1837 | 1837 | After selecting a merge program, Mercurial will by default attempt to |
@@ -372,7 +372,7 b' Fingerprints' | |||
|
372 | 372 | - works without cacerts (hostfingerprints) |
|
373 | 373 | $ hg -R copy-pull id https://localhost:$HGPORT/ --insecure --config hostfingerprints.localhost=ec:d8:7c:d6:b3:86:d0:4f:c1:b8:b4:1c:9d:8f:5e:16:8e:ef:1c:03 |
|
374 | 374 | warning: connecting to localhost using legacy security technology (TLS 1.0); see https://mercurial-scm.org/wiki/SecureConnections for more info (?) |
|
375 |
(SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost |
|
|
375 | (SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost:fingerprints=sha256:20:de:b3:ad:b4:cd:a5:42:f0:74:41:1c:a2:70:1e:da:6e:c0:5c:16:9e:e7:22:0f:f1:b7:e5:6e:e4:92:af:7e) | |
|
376 | 376 | 5fed3813f7f5 |
|
377 | 377 | |
|
378 | 378 | - works without cacerts (hostsecurity) |
@@ -387,7 +387,7 b' Fingerprints' | |||
|
387 | 387 | - multiple fingerprints specified and first matches |
|
388 | 388 | $ hg --config 'hostfingerprints.localhost=ecd87cd6b386d04fc1b8b41c9d8f5e168eef1c03, deadbeefdeadbeefdeadbeefdeadbeefdeadbeef' -R copy-pull id https://localhost:$HGPORT/ --insecure |
|
389 | 389 | warning: connecting to localhost using legacy security technology (TLS 1.0); see https://mercurial-scm.org/wiki/SecureConnections for more info (?) |
|
390 |
(SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost |
|
|
390 | (SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost:fingerprints=sha256:20:de:b3:ad:b4:cd:a5:42:f0:74:41:1c:a2:70:1e:da:6e:c0:5c:16:9e:e7:22:0f:f1:b7:e5:6e:e4:92:af:7e) | |
|
391 | 391 | 5fed3813f7f5 |
|
392 | 392 | |
|
393 | 393 | $ hg --config 'hostsecurity.localhost:fingerprints=sha1:ecd87cd6b386d04fc1b8b41c9d8f5e168eef1c03, sha1:deadbeefdeadbeefdeadbeefdeadbeefdeadbeef' -R copy-pull id https://localhost:$HGPORT/ |
@@ -397,7 +397,7 b' Fingerprints' | |||
|
397 | 397 | - multiple fingerprints specified and last matches |
|
398 | 398 | $ hg --config 'hostfingerprints.localhost=deadbeefdeadbeefdeadbeefdeadbeefdeadbeef, ecd87cd6b386d04fc1b8b41c9d8f5e168eef1c03' -R copy-pull id https://localhost:$HGPORT/ --insecure |
|
399 | 399 | warning: connecting to localhost using legacy security technology (TLS 1.0); see https://mercurial-scm.org/wiki/SecureConnections for more info (?) |
|
400 |
(SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost |
|
|
400 | (SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost:fingerprints=sha256:20:de:b3:ad:b4:cd:a5:42:f0:74:41:1c:a2:70:1e:da:6e:c0:5c:16:9e:e7:22:0f:f1:b7:e5:6e:e4:92:af:7e) | |
|
401 | 401 | 5fed3813f7f5 |
|
402 | 402 | |
|
403 | 403 | $ hg --config 'hostsecurity.localhost:fingerprints=sha1:deadbeefdeadbeefdeadbeefdeadbeefdeadbeef, sha1:ecd87cd6b386d04fc1b8b41c9d8f5e168eef1c03' -R copy-pull id https://localhost:$HGPORT/ |
@@ -429,7 +429,7 b' Fingerprints' | |||
|
429 | 429 | - ignores that certificate doesn't match hostname |
|
430 | 430 | $ hg -R copy-pull id https://$LOCALIP:$HGPORT/ --config hostfingerprints.$LOCALIP=ecd87cd6b386d04fc1b8b41c9d8f5e168eef1c03 |
|
431 | 431 | warning: connecting to $LOCALIP using legacy security technology (TLS 1.0); see https://mercurial-scm.org/wiki/SecureConnections for more info (?) |
|
432 |
(SHA-1 fingerprint for $LOCALIP found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: $LOCALIP |
|
|
432 | (SHA-1 fingerprint for $LOCALIP found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: $LOCALIP:fingerprints=sha256:20:de:b3:ad:b4:cd:a5:42:f0:74:41:1c:a2:70:1e:da:6e:c0:5c:16:9e:e7:22:0f:f1:b7:e5:6e:e4:92:af:7e) | |
|
433 | 433 | 5fed3813f7f5 |
|
434 | 434 | |
|
435 | 435 | Ports used by next test. Kill servers. |
@@ -568,7 +568,7 b' Test https with cacert and fingerprint t' | |||
|
568 | 568 | $ http_proxy=http://localhost:$HGPORT1/ hg -R copy-pull pull https://localhost:$HGPORT/ --config hostfingerprints.localhost=ecd87cd6b386d04fc1b8b41c9d8f5e168eef1c03 --trace |
|
569 | 569 | pulling from https://*:$HGPORT/ (glob) |
|
570 | 570 | warning: connecting to localhost using legacy security technology (TLS 1.0); see https://mercurial-scm.org/wiki/SecureConnections for more info (?) |
|
571 |
(SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost |
|
|
571 | (SHA-1 fingerprint for localhost found in legacy [hostfingerprints] section; if you trust this fingerprint, set the following config value in [hostsecurity] and remove the old one from [hostfingerprints] to upgrade to a more secure SHA-256 fingerprint: localhost:fingerprints=sha256:20:de:b3:ad:b4:cd:a5:42:f0:74:41:1c:a2:70:1e:da:6e:c0:5c:16:9e:e7:22:0f:f1:b7:e5:6e:e4:92:af:7e) | |
|
572 | 572 | searching for changes |
|
573 | 573 | no changes found |
|
574 | 574 |
@@ -212,6 +212,25 b' Test display of largefiles in hgweb' | |||
|
212 | 212 | $ killdaemons.py |
|
213 | 213 | #endif |
|
214 | 214 | |
|
215 | Test largefiles can be loaded in hgweb (wrapcommand() shouldn't fail) | |
|
216 | ||
|
217 | $ cat <<EOF > "$TESTTMP/hgweb.cgi" | |
|
218 | > #!/usr/bin/env python | |
|
219 | > from mercurial import demandimport; demandimport.enable() | |
|
220 | > from mercurial.hgweb import hgweb | |
|
221 | > from mercurial.hgweb import wsgicgi | |
|
222 | > application = hgweb('.', 'test repo') | |
|
223 | > wsgicgi.launch(application) | |
|
224 | > EOF | |
|
225 | ||
|
226 | $ PATH_INFO='/' \ | |
|
227 | > QUERY_STRING='' \ | |
|
228 | > REQUEST_METHOD='GET' \ | |
|
229 | > SCRIPT_NAME='' \ | |
|
230 | > SERVER_NAME='localhost' \ | |
|
231 | > SERVER_PORT='80' \ | |
|
232 | > python "$TESTTMP/hgweb.cgi" > /dev/null | |
|
233 | ||
|
215 | 234 | Test archiving the various revisions. These hit corner cases known with |
|
216 | 235 | archiving. |
|
217 | 236 |
General Comments 0
You need to be logged in to leave comments.
Login now