annotate tests/test-check-tag.t @ 6655:81fe0a498447 stable

topic: internal config option to fix hg pick behavior (issue6406) After some consideration, hg pick was made to always use current topic (and topic namespace), even if it's not set, in which case the resulting changeset will not have any topic. Previously the intended behavior was to only update topic if there was an active topic, and not touch commit extras at all otherwise. That wasn't ideal, since pick doesn't change active topic, and amending the just-picked commit would unset its topic without clear user's intent to do so and to their surprise.
author Anton Shestakov <av6@dwimlabs.net>
date Sat, 27 Jan 2024 17:36:39 -0300
parents 279c01842eca
children 02f8c88f3d59
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
1 #require test-repo
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
2
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
3 Enable obsolescence to avoid the warning issue when obsmarkers are found
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
4
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
5 $ cat << EOF >> $HGRCPATH
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
6 > [experimental]
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
7 > evolution = all
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
8 > EOF
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
9
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
10 $ cd "$TESTDIR"/..
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
11
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
12 Checking all non-public tagged revisions up to the current commit, see our
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
13 release checklist for more ideas
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
14
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
15 $ for node in `hg log --rev 'tag() and ::. and not public() and not desc("# no-check-commit")' --template '{node|short}\n'`; do
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
16 > tags=`hg log --rev $node --template '{tags}\n'`
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
17 > if echo "$tags" | grep -q ' '; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
18 > echo "Revision $node is tagged multiple times: $tags"
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
19 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
20 > branch=`hg log --rev $node --template '{branch}\n'`
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
21 > if [ "$branch" != "stable" ]; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
22 > echo "Revision $node is not on stable branch: $branch"
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
23 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
24 > # Here we skip:
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
25 > # - pullbundle because it usually has no changes (so no version bump)
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
26 > if hg grep --rev $node '^__version__ = .*\.dev' hgext3rd/evolve/ hgext3rd/topic/; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
27 > echo "Versions should not end with .dev at tagged revision $node"
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
28 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
29 > entry=`hg cat --rev $node CHANGELOG | fgrep "$tags"`
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
30 > if [ -z "$entry" ]; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
31 > echo "Revision $node has no CHANGELOG entry for $tags"
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
32 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
33 > if echo "$entry" | egrep -vq ' -- [0-9]{4}-[0-9]{2}-[0-9]{2}'; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
34 > echo "CHANGELOG entry for $tags should have a date in YYYY-MM-DD format: $entry"
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
35 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
36 > entry=`hg cat --rev $node debian/changelog | fgrep "$tags"`
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
37 > if [ -z "$entry" ]; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
38 > echo "Revision $node has no debian/changelog entry for $tags"
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
39 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
40 > done