tests/check-gendoc
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 14 Apr 2020 03:16:23 +0200
changeset 44791 b81486b609a3
parent 41005 69c99898a48f
permissions -rwxr-xr-x
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:
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     1
#!/bin/sh
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     2
HGENCODING=UTF-8
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     3
export HGENCODING
9446
57d682d7d2da test-gendoc: test documentation generation
Martin Geisler <mg@lazybytes.net>
parents:
diff changeset
     4
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     5
echo ".. -*- coding: utf-8 -*-" > gendoc.txt
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     6
echo "" >> gendoc.txt
41005
69c99898a48f py3: replace hard coded `python` with $PYTHON in check-gendoc
Matt Harbison <matt_harbison@yahoo.com>
parents: 28809
diff changeset
     7
LANGUAGE=$1 "$PYTHON" "$TESTDIR/../doc/gendoc.py" >> gendoc.txt 2> /dev/null || exit
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     8
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents: 27733
diff changeset
     9
echo "checking for parse errors"
41005
69c99898a48f py3: replace hard coded `python` with $PYTHON in check-gendoc
Matt Harbison <matt_harbison@yahoo.com>
parents: 28809
diff changeset
    10
"$PYTHON" "$TESTDIR/../doc/docchecker" gendoc.txt
69c99898a48f py3: replace hard coded `python` with $PYTHON in check-gendoc
Matt Harbison <matt_harbison@yahoo.com>
parents: 28809
diff changeset
    11
"$PYTHON" "$TESTDIR/../doc/runrst" html gendoc.txt /dev/null