tests/test-gendoc.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 14 Apr 2020 03:16:23 +0200
changeset 44791 b81486b609a3
parent 39707 5abc47d4ca6b
permissions -rw-r--r--
nodemap: gate the feature behind a new requirement Now that the feature is working smoothly, a question was still open, should we gate the feature behind a new requirement or just treat it as a cache to be warmed by those who can and ignored by other. The advantage of using the cache approach is a transparent upgrade/downgrade story, making the feature easier to move to. However having out of date cache can come with a significant performance hit for process who expect an up to date cache but found none. In this case the file needs to be stored under `.hg/cache`. The "requirement" approach guarantee that the persistent nodemap is up to date. However, it comes with a less flexible activation story since an explicite upgrade is required. In this case the file can be stored in `.hg/store`. This wiki page is relevant to this questions: https://www.mercurial-scm.org/wiki/ComputedIndexPlan So which one should we take? Another element came into plan, the persistent nodemap use the `add` method of the transaction, it is used to keep track of a file content before a transaction in case we need to rollback it back. It turns out that the `transaction.add` API does not support file stored anywhere than `.hg/store`. Making it support file stored elsewhere is possible, require a change in on disk transaction format. Updating on disk file requires… introducing a new requirements. As a result, we pick the second option "gating the persistent nodemap behind a new requirements". Differential Revision: https://phab.mercurial-scm.org/D8417
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20390
diff changeset
     1
#require docutils
24043
1fdb1d909c79 test-gendoc: require gettext
Eric Sumner <ericsumner@fb.com>
parents: 22046
diff changeset
     2
#require gettext
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 20390
diff changeset
     3
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
     4
Test document extraction
9446
57d682d7d2da test-gendoc: test documentation generation
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     5
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
     6
  $ HGENCODING=UTF-8
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
     7
  $ export HGENCODING
20390
3fedc29a98bb tests: use ls instead of find, all files are in the same directory
Simon Heimberg <simohe@besonet.ch>
parents: 19923
diff changeset
     8
  $ { echo C; ls "$TESTDIR/../i18n"/*.po | sort; } | while read PO; do
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 14475
diff changeset
     9
  >     LOCALE=`basename "$PO" .po`
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    10
  >     echo "% extracting documentation from $LOCALE"
39707
5abc47d4ca6b tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents: 32940
diff changeset
    11
  >     LANGUAGE=$LOCALE "$PYTHON" "$TESTDIR/../doc/gendoc.py" >> gendoc-$LOCALE.txt 2> /dev/null || exit
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    12
  > 
19923
52bc80d0769f tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents: 19922
diff changeset
    13
  >     if [ $LOCALE != C ]; then
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
    14
  >         if [ ! -f $TESTDIR/test-gendoc-$LOCALE.t ]; then
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
    15
  >             echo missing test-gendoc-$LOCALE.t
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
    16
  >         fi
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
    17
  >         cmp -s gendoc-C.txt gendoc-$LOCALE.txt && echo "** NOTHING TRANSLATED ($LOCALE) **"
19923
52bc80d0769f tests: test-gendoc.t checks if anything was translated
Simon Heimberg <simohe@besonet.ch>
parents: 19922
diff changeset
    18
  >     fi
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
    19
  > done; true
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    20
  % extracting documentation from C
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    21
  % extracting documentation from da
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    22
  % extracting documentation from de
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    23
  % extracting documentation from el
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    24
  % extracting documentation from fr
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    25
  % extracting documentation from it
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    26
  % extracting documentation from ja
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    27
  % extracting documentation from pt_BR
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    28
  % extracting documentation from ro
14475
ac9a89dbdc00 test-gendoc: update for new Russian translation
Martin Geisler <mg@lazybytes.net>
parents: 12427
diff changeset
    29
  % extracting documentation from ru
12427
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    30
  % extracting documentation from sv
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    31
  % extracting documentation from zh_CN
f933b99eeb14 tests: unify test-gendoc
Matt Mackall <mpm@selenic.com>
parents: 12397
diff changeset
    32
  % extracting documentation from zh_TW