Mercurial > hg
annotate tests/test-encode.t @ 48670:6d2ddea0721a stable
stream-clone: filter possible missing requirements using all supported one
The `supportedformat` requirements is missing some important requirements and it
seems better to filter out with all requirements we know, not just an
"arbitrary" subset.
The `supportedformat` set is lacking some important requirements (for example
`revlog-compression-zstd`). This is getting fixed on default (for Mercurial 6.1)
However, fixing that in 6.1 means the stream requirements sent over the wire
will contains more items. And if we don't apply this fix on older version, they
might end up complaining about lacking support for feature they actually support
for years.
This patch does not fix the deeper problem (advertised stream requirement
lacking some of them), but focus on the trivial part : Lets use the full set of
supported requirement for looking for unsupported ones.
This patch should be simple to backport to older version of Mercurial and
packager should be encouraged to do so.
This is a graft of d9017df70135 from default.
Differential Revision: https://phab.mercurial-scm.org/D12091
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 24 Jan 2022 11:49:06 +0100 |
parents | 538353b80676 |
children | b7fde9237c92 |
rev | line source |
---|---|
12416 | 1 Test encode/decode filters |
1258 | 2 |
12416 | 3 $ hg init |
4 $ cat > .hg/hgrc <<EOF | |
5 > [encode] | |
6 > not.gz = tr [:lower:] [:upper:] | |
7 > *.gz = gzip -d | |
8 > [decode] | |
9 > not.gz = tr [:upper:] [:lower:] | |
10 > *.gz = gzip | |
11 > EOF | |
12 $ echo "this is a test" | gzip > a.gz | |
13 $ echo "this is a test" > not.gz | |
14 $ hg add * | |
15 $ hg ci -m "test" | |
1258 | 16 |
12416 | 17 no changes |
18 | |
19 $ hg status | |
20 $ touch * | |
21 | |
22 no changes | |
23 | |
24 $ hg status | |
25 | |
26 check contents in repo are encoded | |
1258 | 27 |
14182
ec5886db9dc6
tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents:
12416
diff
changeset
|
28 $ hg debugdata a.gz 0 |
12416 | 29 this is a test |
14182
ec5886db9dc6
tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents:
12416
diff
changeset
|
30 $ hg debugdata not.gz 0 |
12416 | 31 THIS IS A TEST |
32 | |
33 check committed content was decoded | |
1258 | 34 |
12416 | 35 $ gunzip < a.gz |
36 this is a test | |
37 $ cat not.gz | |
38 this is a test | |
39 $ rm * | |
40 $ hg co -C | |
41 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
1258 | 42 |
12416 | 43 check decoding of our new working dir copy |
1258 | 44 |
12416 | 45 $ gunzip < a.gz |
46 this is a test | |
47 $ cat not.gz | |
48 this is a test | |
1258 | 49 |
12416 | 50 check hg cat operation |
6093
f5b00b6e426a
Option --decode for hg cat to apply decode filters.
Jesse Glick <jesse.glick@sun.com>
parents:
3853
diff
changeset
|
51 |
12416 | 52 $ hg cat a.gz |
53 this is a test | |
54 $ hg cat --decode a.gz | gunzip | |
55 this is a test | |
56 $ mkdir subdir | |
57 $ cd subdir | |
58 $ hg -R .. cat ../a.gz | |
59 this is a test | |
60 $ hg -R .. cat --decode ../a.gz | gunzip | |
61 this is a test | |
37461
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
62 $ cd .. |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
63 |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
64 check tempfile filter |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
65 |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
66 $ hg cat a.gz --decode --config 'decode.*.gz=tempfile:gzip -c INFILE > OUTFILE' | gunzip |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
67 this is a test |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
68 $ hg cat a.gz --decode --config 'decode.*.gz=tempfile:sh -c "exit 1"' |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
69 abort: command '*' failed: exited with status 1 (glob) |
538353b80676
procutil: fix error message of tempfile filter
Yuya Nishihara <yuya@tcha.org>
parents:
16913
diff
changeset
|
70 [255] |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
14182
diff
changeset
|
71 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
14182
diff
changeset
|
72 $ cd .. |