Mercurial > hg
view tests/test-encoding @ 4198:9e3121017fb2
Optimize return value of util._matcher for common command line case
This will trigger every time somebody runs something like "hg diff"
or "hg status" without any arguments.
The important part here is returning util.always as the match function,
which is a much simpler (and faster) function than the usual return
value, and allows other code to just skip the filtering if it knows
all files will match.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sat, 10 Mar 2007 23:01:00 -0300 |
parents | 46abbed02b2d |
children | 29d2a7e3a88b |
line wrap: on
line source
#!/bin/sh hg init t cd t # we need a repo with some legacy latin-1 changesets hg unbundle $TESTDIR/legacy-encoding.hg hg co python << EOF f = file('latin-1', 'w'); f.write("latin-1 e' encoded: \xe9"); f.close() f = file('utf-8', 'w'); f.write("utf-8 e' encoded: \xc3\xa9"); f.close() f = file('latin-1-tag', 'w'); f.write("\xe9"); f.close() EOF echo % should fail with encoding error echo "plain old ascii" > a hg st HGENCODING=ascii hg ci -l latin-1 -d "1000000 0" echo % these should work echo "latin-1" > a HGENCODING=latin-1 hg ci -l latin-1 -d "1000000 0" echo "utf-8" > a HGENCODING=utf-8 hg ci -l utf-8 -d "1000000 0" HGENCODING=latin-1 hg tag -d "1000000 0" `cat latin-1-tag` HGENCODING=latin-1 hg branch `cat latin-1-tag` HGENCODING=latin-1 hg ci -d "1000000 0" -m 'latin1 branch' rm .hg/branch echo % ascii hg --encoding ascii log echo % latin-1 hg --encoding latin-1 log echo % utf-8 hg --encoding utf-8 log echo % ascii HGENCODING=ascii hg tags echo % latin-1 HGENCODING=latin-1 hg tags echo % utf-8 HGENCODING=utf-8 hg tags echo % ascii HGENCODING=ascii hg branches echo % latin-1 HGENCODING=latin-1 hg branches echo % utf-8 HGENCODING=utf-8 hg branches echo '[ui]' >> .hg/hgrc echo 'fallbackencoding = koi8-r' >> .hg/hgrc echo % utf-8 HGENCODING=utf-8 hg log HGENCODING=dolphin hg log HGENCODING=ascii hg branch `cat latin-1-tag` cp latin-1-tag .hg/branch HGENCODING=latin-1 hg ci -d "1000000 0" -m 'should fail' exit 0