tests/test-mactext.t
author Adrian Buehlmann <adrian@cadifra.com>
Sat, 09 Oct 2010 21:54:50 +0200
changeset 12687 34d8247a4595
parent 12458 9446bd059da3
child 15243 1e9451476bf8
permissions -rw-r--r--
store: encode first period or space in filenames (issue1713) - Mac OS X has problems with filenames starting with '._' (e.g. '.FOO' -> '._f_o_o' is now encoded as '~2e_f_o_o') - Explorer of Windows Vista and Windows 7 strip leading spaces of path elements of filenames when copying trees Above problems are avoided by encoding the first space (as '~20') or period (as '~2e') of all path elements. This introduces a new entry 'dotencode' in .hg/requires, that is, a new repository filename layout (inside .hg/store). Newly created repositories require 'dotencode' by default. Specifying [format] dotencode = False in a config file will use the old format instead. Prior Mercurial versions will abort with the message abort: requirement 'dotencode' not supported! when trying to access a local repository that requires 'dotencode'. New 'dotencode' repositories can be converted to the previous repository format with hg --config format.dotencode=0 clone --pull repoA repoB
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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:]:
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     6
  >     data = file(path, 'rb').read()
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     7
  >     data = data.replace('\n', '\r')
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
     8
  >     file(path, 'wb').write(data)
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
  $ cat > print.py <<EOF
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    11
  > import sys
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    12
  > print(sys.stdin.read().replace('\n', '<LF>').replace('\r', '<CR>').replace('\0', '<NUL>'))
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    13
  > EOF
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    14
  $ hg init
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    15
  $ echo '[hooks]' >> .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    16
  $ echo 'pretxncommit.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    17
  $ echo 'pretxnchangegroup.cr = python:hgext.win32text.forbidcr' >> .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    18
  $ cat .hg/hgrc
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    19
  [hooks]
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    20
  pretxncommit.cr = python:hgext.win32text.forbidcr
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    21
  pretxnchangegroup.cr = python:hgext.win32text.forbidcr
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    22
  $ echo
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    23
  
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    24
  $ echo hello > f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    25
  $ hg add f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    26
  $ hg ci -m 1
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    27
  $ echo
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    28
  
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    29
  $ python unix2mac.py f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    30
  $ hg ci -m 2
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    31
  Attempt to commit or push text file(s) using CR line endings
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    32
  in dea860dc51ec: f
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    33
  transaction abort!
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    34
  rollback completed
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    35
  abort: pretxncommit.cr hook failed
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    36
  [255]
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    37
  $ hg cat f | python print.py
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    38
  hello<LF>
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    39
  $ cat f | python print.py
9446bd059da3 tests: unify test-mactext
Matt Mackall <mpm@selenic.com>
parents: 8167
diff changeset
    40
  hello<CR>