annotate tests/test-check-tag.t @ 6889:a66cf9008781

obslog: also display patch for rebased changesets This applies the same logic that is used for "merge-diff" to rebased changesets. The successors' content is compared to the content of the predecessors rebased in-memory on the new parents. This highlights the changes that were actually introduced while rebasing (like conflict resolution or API adjustment). As a side effect, obslog now also outputs slightly more diffs for splits, showing what parts of the original big changeset were moved to the smaller split components (but for now it only works for the first few changesets).
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 22 Sep 2024 02:58:54 +0200
parents 0a1ed671eb7a
children
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
6836
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
5 $ . "$RUNTESTDIR/helpers-testrepo.sh"
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
6
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
7 $ cd "$TESTDIR"/..
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
8
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
9 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
10 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
11
6836
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
12 $ for node in `testrepohg log --rev 'tag() and ::. and not public() and not desc("# no-check-commit")' --template '{node|short}\n'`; do
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
13 > tags=`testrepohg log --rev $node --template '{tags}\n'`
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
14 > 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
15 > 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
16 > fi
6836
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
17 > branch=`testrepohg log --rev $node --template '{branch}\n'`
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
18 > if [ "$branch" != "stable" ]; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
19 > 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
20 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
21 > # Here we skip:
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
22 > # - pullbundle because it usually has no changes (so no version bump)
6836
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
23 > if testrepohg grep --rev $node '^__version__ = .*\.dev' hgext3rd/evolve/ hgext3rd/topic/; then
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
24 > 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
25 > fi
6836
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
26 > entry=`testrepohg cat --rev $node CHANGELOG | grep -F "$tags"`
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
27 > if [ -z "$entry" ]; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
28 > 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
29 > fi
6668
02f8c88f3d59 tests: replace obsolescent egrep with grep -E
Manuel Jacob <me@manueljacob.de>
parents: 6557
diff changeset
30 > if echo "$entry" | grep -E -vq ' -- [0-9]{4}-[0-9]{2}-[0-9]{2}'; then
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
31 > 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
32 > fi
6836
0a1ed671eb7a tests: use testrepohg in test-check-tag.t
Anton Shestakov <av6@dwimlabs.net>
parents: 6669
diff changeset
33 > entry=`testrepohg cat --rev $node debian/changelog | grep -F "$tags"`
5653
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
34 > if [ -z "$entry" ]; then
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
35 > 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
36 > fi
479f76c47295 tests: add a new test-check-tag.t to test releases
Anton Shestakov <av6@dwimlabs.net>
parents:
diff changeset
37 > done