##// END OF EJS Templates
merge with stable
Martin von Zweigbergk -
r32245:3a755652 merge default
parent child Browse files
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" KeyPath="yes" />
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 -t "{author|email}"
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.fingerprints=%s)\n') % (
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, 40)]))
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.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)
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.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)
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.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)
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.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)
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.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)
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