##// END OF EJS Templates
sslutil: require TLS 1.1+ when supported...
sslutil: require TLS 1.1+ when supported Currently, Mercurial will use TLS 1.0 or newer when connecting to remote servers, selecting the highest TLS version supported by both peers. On older Pythons, only TLS 1.0 is available. On newer Pythons, TLS 1.1 and 1.2 should be available. Security professionals recommend avoiding TLS 1.0 if possible. PCI DSS 3.1 "strongly encourages" the use of TLS 1.2. Known attacks like BEAST and POODLE exist against TLS 1.0 (although mitigations are available and properly configured servers aren't vulnerable). I asked Eric Rescorla - Mozilla's resident crypto expert - whether Mercurial should drop support for TLS 1.0. His response was "if you can get away with it." Essentially, a number of servers on the Internet don't support TLS 1.1+. This is why web browsers continue to support TLS 1.0 despite desires from security experts. This patch changes Mercurial's default behavior on modern Python versions to require TLS 1.1+, thus avoiding known security issues with TLS 1.0 and making Mercurial more secure by default. Rather than drop TLS 1.0 support wholesale, we still allow TLS 1.0 to be used if configured. This is a compromise solution - ideally we'd disallow TLS 1.0. However, since we're not sure how many Mercurial servers don't support TLS 1.1+ and we're not sure how much user inconvenience this change will bring, I think it is prudent to ship an escape hatch that still allows usage of TLS 1.0. In the default case our users get better security. In the worst case, they are no worse off than before this patch. This patch has no effect when running on Python versions that don't support TLS 1.1+. As the added test shows, connecting to a server that doesn't support TLS 1.1+ will display a warning message with a link to our wiki, where we can guide people to configure their client to allow less secure connections.

File last commit:

r28471:f106913c default
r29560:303e9300 default
Show More
test-convert-svn-encoding.t
144 lines | 5.4 KiB | text/troff | Tads3Lexer
/ tests / test-convert-svn-encoding.t
Matt Mackall
tests: replace exit 80 with #require
r22046 #require svn svn-bindings
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370
Martin Geisler
tests: don't overwrite HGRCPATH...
r13519 $ cat >> $HGRCPATH <<EOF
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 > [extensions]
Mads Kiilerich
check-code: fix check for trailing whitespace on continued lines too...
r17347 > convert =
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 > EOF
$ svnadmin create svn-repo
$ svnadmin load -q svn-repo < "$TESTDIR/svn/encoding.svndump"
Convert while testing all possible outputs
Pierre-Yves David
progress: get the extremely verbose output out of default debug...
r25125 $ hg --debug convert svn-repo A-hg --config progress.debug=1
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 initializing destination A-hg repository
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 run hg sink pre-conversion action
scanning source...
found trunk at 'trunk'
found tags at 'tags'
found branches at 'branches'
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 found branch branch\xc3\xa9 at 5 (esc)
found branch branch\xc3\xa9e at 6 (esc)
Augie Fackler
convert: enable deterministic conversion progress bar for svn...
r22414 scanning: 1/4 revisions (25.00%)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo/trunk (glob)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 fetching revision log for "/trunk" from 4 to 0
parsing revision 4 (2 changes)
parsing revision 3 (4 changes)
parsing revision 2 (3 changes)
parsing revision 1 (3 changes)
no copyfrom path, don't know what to do.
'/branches' is not under '/trunk', ignoring
'/tags' is not under '/trunk', ignoring
Augie Fackler
convert: enable deterministic conversion progress bar for svn...
r22414 scanning: 2/4 revisions (50.00%)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo/branches/branch%C3%A9 (glob)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 fetching revision log for "/branches/branch\xc3\xa9" from 5 to 0 (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 parsing revision 5 (1 changes)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/branches/branch%C3%A9 (glob)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 found parent of branch /branches/branch\xc3\xa9 at 4: /trunk (esc)
Augie Fackler
convert: enable deterministic conversion progress bar for svn...
r22414 scanning: 3/4 revisions (75.00%)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 fetching revision log for "/branches/branch\xc3\xa9e" from 6 to 0 (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 parsing revision 6 (1 changes)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 found parent of branch /branches/branch\xc3\xa9e at 5: /branches/branch\xc3\xa9 (esc)
Augie Fackler
convert: enable deterministic conversion progress bar for svn...
r22414 scanning: 4/4 revisions (100.00%)
scanning: 5/4 revisions (125.00%)
scanning: 6/4 revisions (150.00%)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 sorting...
converting...
5 init projA
source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@1
converting: 0/6 revisions (0.00%)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing changelog
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 4 hello
source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@2
converting: 1/6 revisions (16.67%)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo/trunk (glob)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xa0 0/3 paths (0.00%) (esc)
scanning paths: /trunk/\xc3\xa0/e\xcc\x81 1/3 paths (33.33%) (esc)
scanning paths: /trunk/\xc3\xa9 2/3 paths (66.67%) (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing files:
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \xc3\xa0/e\xcc\x81 (esc)
av6
convert: specify unit for ui.progress when operating on files
r28470 getting files: \xc3\xa0/e\xcc\x81 1/2 files (50.00%) (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \xc3\xa9 (esc)
av6
convert: specify unit for ui.progress when operating on files
r28470 getting files: \xc3\xa9 2/2 files (100.00%) (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing manifest
committing changelog
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 3 copy files
source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@3
converting: 2/6 revisions (33.33%)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xa0 0/4 paths (0.00%) (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 gone from -1
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/trunk (glob)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xa8 1/4 paths (25.00%) (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 copied to \xc3\xa8 from \xc3\xa9@2 (esc)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xa9 2/4 paths (50.00%) (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 gone from -1
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/trunk (glob)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xb9 3/4 paths (75.00%) (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 mark /trunk/\xc3\xb9 came from \xc3\xa0:2 (esc)
av6
convert: specify unit for ui.progress when operating on files
r28470 getting files: \xc3\xa0/e\xcc\x81 1/4 files (25.00%) (esc)
getting files: \xc3\xa9 2/4 files (50.00%) (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing files:
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \xc3\xa8 (esc)
av6
convert: specify unit for ui.progress when operating on files
r28470 getting files: \xc3\xa8 3/4 files (75.00%) (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \xc3\xa8: copy \xc3\xa9:6b67ccefd5ce6de77e7ead4f5292843a0255329f (esc)
\xc3\xb9/e\xcc\x81 (esc)
av6
convert: specify unit for ui.progress when operating on files
r28470 getting files: \xc3\xb9/e\xcc\x81 4/4 files (100.00%) (esc)
Mads Kiilerich
tests: use (esc) for all non-ASCII test output
r12942 \xc3\xb9/e\xcc\x81: copy \xc3\xa0/e\xcc\x81:a9092a3d84a37b9993b5c73576f6de29b7ea50f6 (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing manifest
committing changelog
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 2 remove files
source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/trunk@4
converting: 3/6 revisions (50.00%)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xa8 0/2 paths (0.00%) (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 gone from -1
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/trunk (glob)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /trunk/\xc3\xb9 1/2 paths (50.00%) (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 gone from -1
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/trunk (glob)
av6
convert: specify unit for ui.progress when operating on files
r28470 getting files: \xc3\xa8 1/2 files (50.00%) (esc)
getting files: \xc3\xb9/e\xcc\x81 2/2 files (100.00%) (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing files:
committing manifest
committing changelog
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 1 branch to branch?
source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/branches/branch?@5
converting: 4/6 revisions (66.67%)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo/branches/branch%C3%A9 (glob)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /branches/branch\xc3\xa9 0/1 paths (0.00%) (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing changelog
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 0 branch to branch?e
source: svn:afeb9c47-92ff-4c0c-9f72-e1f6eb8ac9af/branches/branch?e@6
converting: 5/6 revisions (83.33%)
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
av6
convert: specify unit for ui.progress when scanning paths
r28471 scanning paths: /branches/branch\xc3\xa9e 0/1 paths (0.00%) (esc)
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing changelog
Dan Villiom Podlaski Christiansen
test-convert-svn-encoding.t: ignore that subversion %-encodes $TESTTMP...
r12679 reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
reparent to file://*/svn-repo (glob)
reparent to file://*/svn-repo/branches/branch%C3%A9e (glob)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 updating tags
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing files:
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 .hgtags
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing manifest
committing changelog
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370 run hg sink post-conversion action
$ cd A-hg
$ hg up
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
Check tags are in UTF-8
Mads Kiilerich
tests: use (esc) instead of other kinds of string escaping
r12943 $ cat .hgtags
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 e94e4422020e715add80525e8f0f46c9968689f1 branch\xc3\xa9e (esc)
f7e66f98380ed1e53a797c5c7a7a2616a7ab377d branch\xc3\xa9 (esc)
Dan Villiom Podlaski Christiansen
tests: unify test-convert-svn-*
r12370
$ cd ..