/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/git/interrepo.py

  • Committer: Breezy landing bot
  • Author(s): Jelmer Vernooij
  • Date: 2020-06-12 01:45:56 UTC
  • mfrom: (7513.1.2 pypy3)
  • Revision ID: breezy.the.bot@gmail.com-20200612014556-tsc8assk3d0luziu
Avoid deprecated behaviour in ElementTree.

Merged from https://code.launchpad.net/~jelmer/brz/pypy3/+merge/385611

Show diffs side-by-side

added added

removed removed

Lines of Context:
16
16
 
17
17
"""InterRepository operations."""
18
18
 
19
 
from __future__ import absolute_import
20
 
 
21
19
from io import BytesIO
22
20
import itertools
23
21
 
52
50
from ..revision import (
53
51
    NULL_REVISION,
54
52
    )
55
 
from ..sixish import (
56
 
    viewitems,
57
 
    viewvalues,
58
 
    )
59
53
from .. import (
60
54
    config,
61
55
    trace,
229
223
                        new_stop_revids.append(revid)
230
224
                stop_revids = set()
231
225
                parent_map = graph.get_parent_map(new_stop_revids)
232
 
                for parent_revids in viewvalues(parent_map):
 
226
                for parent_revids in parent_map.values():
233
227
                    stop_revids.update(parent_revids)
234
228
                pb.update("determining revisions to fetch", len(missing))
235
229
        return graph.iter_topo_order(missing)
272
266
                 for (git_sha, bzr_revid) in new_refs.values()
273
267
                 if git_sha is None or not git_sha.startswith(SYMREF)],
274
268
                lossy=lossy)
275
 
            for name, (gitid, revid) in viewitems(new_refs):
 
269
            for name, (gitid, revid) in new_refs.items():
276
270
                if gitid is None:
277
271
                    try:
278
272
                        gitid = revidmap[revid][0]
362
356
        def git_update_refs(old_refs):
363
357
            ret = {}
364
358
            self.old_refs = {
365
 
                k: (v, None) for (k, v) in viewitems(old_refs)}
 
359
                k: (v, None) for (k, v) in old_refs.items()}
366
360
            new_refs = update_refs(self.old_refs)
367
 
            for name, (gitid, revid) in viewitems(new_refs):
 
361
            for name, (gitid, revid) in new_refs.items():
368
362
                if gitid is None:
369
363
                    git_sha = self.source_store._lookup_revision_sha1(revid)
370
364
                    gitid = unpeel_map.re_unpeel_tag(
415
409
 
416
410
        def determine_wants(refs):
417
411
            unpeel_lookup = {}
418
 
            for k, v in viewitems(refs):
 
412
            for k, v in refs.items():
419
413
                if k.endswith(ANNOTATED_TAG_SUFFIX):
420
414
                    unpeel_lookup[v] = refs[k[:-len(ANNOTATED_TAG_SUFFIX)]]
421
415
            potential = set([unpeel_lookup.get(w, w) for w in wants])
422
416
            if include_tags:
423
 
                for k, sha in viewitems(refs):
 
417
                for k, sha in refs.items():
424
418
                    if k.endswith(ANNOTATED_TAG_SUFFIX):
425
419
                        continue
426
420
                    try:
463
457
            if if_present_ids is not None:
464
458
                todo.update(if_present_ids)
465
459
        result_set = todo.difference(self.target.all_revision_ids())
466
 
        result_parents = set(itertools.chain.from_iterable(viewvalues(
467
 
            self.source.get_graph().get_parent_map(result_set))))
 
460
        result_parents = set(itertools.chain.from_iterable(
 
461
            self.source.get_graph().get_parent_map(result_set).values()))
468
462
        included_keys = result_set.intersection(result_parents)
469
463
        start_keys = result_set.difference(included_keys)
470
464
        exclude_keys = result_parents.difference(result_set)
489
483
 
490
484
    def determine_wants_all(self, refs):
491
485
        potential = set()
492
 
        for k, v in viewitems(refs):
 
486
        for k, v in refs.items():
493
487
            # For non-git target repositories, only worry about peeled
494
488
            if v == ZERO_SHA:
495
489
                continue
563
557
        all_revs = self.target.all_revision_ids()
564
558
        parent_map = self.target.get_parent_map(all_revs)
565
559
        all_parents = set()
566
 
        for values in viewvalues(parent_map):
 
560
        for values in parent_map.values():
567
561
            all_parents.update(values)
568
562
        return set(all_revs) - all_parents
569
563
 
647
641
 
648
642
        def determine_wants(heads):
649
643
            old_refs = dict([(k, (v, None))
650
 
                             for (k, v) in viewitems(heads.as_dict())])
 
644
                             for (k, v) in heads.as_dict().items()])
651
645
            new_refs = update_refs(old_refs)
652
646
            ref_changes.update(new_refs)
653
 
            return [sha1 for (sha1, bzr_revid) in viewvalues(new_refs)]
 
647
            return [sha1 for (sha1, bzr_revid) in new_refs.values()]
654
648
        self.fetch_objects(determine_wants, lossy=lossy)
655
 
        for k, (git_sha, bzr_revid) in viewitems(ref_changes):
 
649
        for k, (git_sha, bzr_revid) in ref_changes.items():
656
650
            self.target._git.refs[k] = git_sha
657
651
        new_refs = self.target.controldir.get_refs_container()
658
652
        return None, old_refs, new_refs
706
700
    def get_determine_wants_branches(self, branches, include_tags=False):
707
701
        def determine_wants(refs):
708
702
            ret = []
709
 
            for name, value in viewitems(refs):
 
703
            for name, value in refs.items():
710
704
                if value == ZERO_SHA:
711
705
                    continue
712
706