diff --git a/mercurial/repoview.py b/mercurial/repoview.py index d66862b87ae69a92b233b88a212f79c4abcc1327_bWVyY3VyaWFsL3JlcG92aWV3LnB5..91d28bd0e04e2b4c23c2f5e5ddbe722a1558b094_bWVyY3VyaWFsL3JlcG92aWV3LnB5 100644 --- a/mercurial/repoview.py +++ b/mercurial/repoview.py @@ -35,6 +35,9 @@ blockers.append(par.rev()) for bm in repo._bookmarks.values(): blockers.append(repo[bm].rev()) + tags = [n for t, n in repo.tags().iteritems() + if (repo.tagtype(t) and repo.tagtype(t) != 'global')] + blockers.extend(repo[t].rev() for t in tags) blocked = cl.ancestors(blockers, inclusive=True) return frozenset(r for r in hideable if r not in blocked) return frozenset() diff --git a/tests/test-obsolete.t b/tests/test-obsolete.t index d66862b87ae69a92b233b88a212f79c4abcc1327_dGVzdHMvdGVzdC1vYnNvbGV0ZS50..91d28bd0e04e2b4c23c2f5e5ddbe722a1558b094_dGVzdHMvdGVzdC1vYnNvbGV0ZS50 100644 --- a/tests/test-obsolete.t +++ b/tests/test-obsolete.t @@ -884,4 +884,5 @@ no changes found [1] +Test that a local tag blocks a changeset from being hidden @@ -887,1 +888,16 @@ + $ hg tag -l visible -r 0 --hidden + $ hg log -G + @ changeset: 2:3816541e5485 + tag: tip + parent: -1:000000000000 + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: A + + x changeset: 0:193e9254ce7e + tag: visible + user: test + date: Thu Jan 01 00:00:00 1970 +0000 + summary: A +