Merge lp:~jelmer/brz/get-revisions-no-none into lp:brz

Proposed by Jelmer Vernooij
Status: Merged
Approved by: Jelmer Vernooij
Approved revision: no longer in the source branch.
Merge reported by: The Breezy Bot
Merged at revision: not available
Proposed branch: lp:~jelmer/brz/get-revisions-no-none
Merge into: lp:brz
Diff against target: 90 lines (+14/-16)
5 files modified
breezy/bzr/groupcompress_repo.py (+1/-1)
breezy/bzr/remote.py (+4/-7)
breezy/bzr/vf_repository.py (+4/-7)
breezy/check.py (+2/-1)
doc/en/release-notes/brz-3.0.txt (+3/-0)
To merge this branch: bzr merge lp:~jelmer/brz/get-revisions-no-none
Reviewer Review Type Date Requested Status
Martin Packman Approve
Review via email: mp+326116@code.launchpad.net

Commit message

Disallow Repository.get_revisions(revision_ids=None)

Description of the change

Don't allow Repository.get_revision_ids(None) to return all revision objects.

There were no tests for this behaviour, and there are no benefits that I can see. All current implementations (including client side RemoteRepository) just set revision_ids to self.all_revision_ids().

The only current users are check and reconcile.

To post a comment you must log in.
Revision history for this message
Martin Packman (gz) wrote :

Looks good.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'breezy/bzr/groupcompress_repo.py'
--- breezy/bzr/groupcompress_repo.py 2017-06-11 13:48:12 +0000
+++ breezy/bzr/groupcompress_repo.py 2017-06-22 00:34:27 +0000
@@ -1136,7 +1136,7 @@
1136 raise AssertionError()1136 raise AssertionError()
1137 vf = self.revisions1137 vf = self.revisions
1138 if revisions_iterator is None:1138 if revisions_iterator is None:
1139 revisions_iterator = self._iter_revisions(None)1139 revisions_iterator = self._iter_revisions(self.all_revision_ids())
1140 for revid, revision in revisions_iterator:1140 for revid, revision in revisions_iterator:
1141 if revision is None:1141 if revision is None:
1142 pass1142 pass
11431143
=== modified file 'breezy/bzr/remote.py'
--- breezy/bzr/remote.py 2017-06-16 00:00:24 +0000
+++ breezy/bzr/remote.py 2017-06-22 00:34:27 +0000
@@ -2659,13 +2659,10 @@
26592659
2660 @needs_read_lock2660 @needs_read_lock
2661 def get_revisions(self, revision_ids):2661 def get_revisions(self, revision_ids):
2662 if revision_ids is None:2662 for rev_id in revision_ids:
2663 revision_ids = self.all_revision_ids()2663 if not rev_id or not isinstance(rev_id, bytes):
2664 else:2664 raise errors.InvalidRevisionId(
2665 for rev_id in revision_ids:2665 revision_id=rev_id, branch=self)
2666 if not rev_id or not isinstance(rev_id, bytes):
2667 raise errors.InvalidRevisionId(
2668 revision_id=rev_id, branch=self)
2669 try:2666 try:
2670 missing = set(revision_ids)2667 missing = set(revision_ids)
2671 revs = {}2668 revs = {}
26722669
=== modified file 'breezy/bzr/vf_repository.py'
--- breezy/bzr/vf_repository.py 2017-06-20 02:03:30 +0000
+++ breezy/bzr/vf_repository.py 2017-06-22 00:34:27 +0000
@@ -1133,12 +1133,9 @@
1133 :return: An iterator of (revid, revision) tuples. Absent revisions (1133 :return: An iterator of (revid, revision) tuples. Absent revisions (
1134 those asked for but not available) are returned as (revid, None).1134 those asked for but not available) are returned as (revid, None).
1135 """1135 """
1136 if revision_ids is None:1136 for rev_id in revision_ids:
1137 revision_ids = self.all_revision_ids()1137 if not rev_id or not isinstance(rev_id, bytes):
1138 else:1138 raise errors.InvalidRevisionId(revision_id=rev_id, branch=self)
1139 for rev_id in revision_ids:
1140 if not rev_id or not isinstance(rev_id, bytes):
1141 raise errors.InvalidRevisionId(revision_id=rev_id, branch=self)
1142 keys = [(key,) for key in revision_ids]1139 keys = [(key,) for key in revision_ids]
1143 stream = self.revisions.get_record_stream(keys, 'unordered', True)1140 stream = self.revisions.get_record_stream(keys, 'unordered', True)
1144 for record in stream:1141 for record in stream:
@@ -1680,7 +1677,7 @@
1680 raise AssertionError()1677 raise AssertionError()
1681 vf = self.revisions1678 vf = self.revisions
1682 if revisions_iterator is None:1679 if revisions_iterator is None:
1683 revisions_iterator = self._iter_revisions(None)1680 revisions_iterator = self._iter_revisions(self.all_revision_ids())
1684 for revid, revision in revisions_iterator:1681 for revid, revision in revisions_iterator:
1685 if revision is None:1682 if revision is None:
1686 pass1683 pass
16871684
=== modified file 'breezy/check.py'
--- breezy/check.py 2017-06-10 00:52:08 +0000
+++ breezy/check.py 2017-06-22 00:34:27 +0000
@@ -181,7 +181,8 @@
181181
182 def check_revisions(self):182 def check_revisions(self):
183 """Scan revisions, checking data directly available as we go."""183 """Scan revisions, checking data directly available as we go."""
184 revision_iterator = self.repository._iter_revisions(None)184 revision_iterator = self.repository._iter_revisions(
185 self.repository.all_revision_ids())
185 revision_iterator = self._check_revisions(revision_iterator)186 revision_iterator = self._check_revisions(revision_iterator)
186 # We read the all revisions here:187 # We read the all revisions here:
187 # - doing this allows later code to depend on the revision index.188 # - doing this allows later code to depend on the revision index.
188189
=== modified file 'doc/en/release-notes/brz-3.0.txt'
--- doc/en/release-notes/brz-3.0.txt 2017-06-20 22:54:06 +0000
+++ doc/en/release-notes/brz-3.0.txt 2017-06-22 00:34:27 +0000
@@ -148,6 +148,9 @@
148 * ``ControlDir.find_bzrdirs`` has been renamed to148 * ``ControlDir.find_bzrdirs`` has been renamed to
149 ``ControlDir.find_controldirs``. (Jelmer Vernooij)149 ``ControlDir.find_controldirs``. (Jelmer Vernooij)
150150
151 * ``Repository.get_revisions`` no longer accepts ``None`` as
152 argument. (Jelmer Vernooij)
153
151Internals154Internals
152*********155*********
153156

Subscribers

People subscribed via source and target branches