annotate tests/test-mactext.t @ 49603:3eda36e9b3d6 stable

matcher: fix issues regex flag contained in pattern (issue6759) Python 3.11 is now enforcing that flag must be at the beginning of the regex This creates a serious regression for people using Python 3.11 with an hgignore using flag in a "relre" pattern. We now detect any flags in such pattern and "prepend" our ".*" pattern after them. In addition, we now insert the flag in the regexp to only affect the pattern we are rewriting. Otherwise, the regex built from the combined pattern would these flags in the middle of it anyway. As a side effect of this last change, we fix a bug… before this change regex flag in a pattern would affect all combined patterns. That was bad and is not longer the case. The Rust code needs to be updated to fix that very bug, but we will do it in another changeset.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 16 Nov 2022 13:05:01 +0100
parents 768056549737
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6481
e837dded56c7 win32text: Add macencode/macdecode
OHASHI Hideya <ohachige@gmail.com>
parents:
diff changeset
1
12458
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
2 $ cat > unix2mac.py <<EOF
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
3 > import sys
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
4 >
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
5 > for path in sys.argv[1:]:
36023
adec6374a0b2 py3: replace file() with open() in test-mactext.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32940
diff changeset
6 > data = open(path, 'rb').read()
adec6374a0b2 py3: replace file() with open() in test-mactext.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32940
diff changeset
7 > data = data.replace(b'\n', b'\r')
adec6374a0b2 py3: replace file() with open() in test-mactext.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32940
diff changeset
8 > open(path, 'wb').write(data)
12458
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
9 > EOF
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
10 $ hg init
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
11 $ echo '[hooks]' >> .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
12 $ echo 'pretxncommit.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
13 $ echo 'pretxnchangegroup.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
14 $ cat .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
15 [hooks]
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
16 pretxncommit.cr = python:hgext.win32text.forbidcr
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
17 pretxnchangegroup.cr = python:hgext.win32text.forbidcr
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 12458
diff changeset
18
12458
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
19 $ echo hello > f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
20 $ hg add f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
21 $ hg ci -m 1
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 12458
diff changeset
22
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 36023
diff changeset
23 $ "$PYTHON" unix2mac.py f
12458
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
24 $ hg ci -m 2
16932
7985a9e2ddce win32text: lowercase warning message
Martin Geisler <mg@aragost.com>
parents: 15243
diff changeset
25 attempt to commit or push text file(s) using CR line endings
12458
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
26 in dea860dc51ec: f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
27 transaction abort!
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
28 rollback completed
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
29 abort: pretxncommit.cr hook failed
46417
768056549737 errors: use exit code 40 for when a hook fails
Martin von Zweigbergk <martinvonz@google.com>
parents: 44642
diff changeset
30 [40]
44642
da9b7f9635a2 tests: use `f --hexdump` to print file content
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
31 $ hg cat f | f --hexdump
da9b7f9635a2 tests: use `f --hexdump` to print file content
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
32
da9b7f9635a2 tests: use `f --hexdump` to print file content
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
33 0000: 68 65 6c 6c 6f 0a |hello.|
da9b7f9635a2 tests: use `f --hexdump` to print file content
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
34 $ f --hexdump f
da9b7f9635a2 tests: use `f --hexdump` to print file content
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
35 f:
da9b7f9635a2 tests: use `f --hexdump` to print file content
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39707
diff changeset
36 0000: 68 65 6c 6c 6f 0d |hello.|