/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 bzrlib/knit.py

  • Committer: Andrew Bennetts
  • Date: 2008-02-18 08:30:38 UTC
  • mto: This revision was merged to the branch mainline in revision 3756.
  • Revision ID: andrew.bennetts@canonical.com-20080218083038-tts55zsx5xrz3l2e
Lots of assorted hackery to reduce the number of imports for common operations.  Improves 'rocks', 'st' and 'help' times by ~50ms on my laptop.

Show diffs side-by-side

added added

removed removed

Lines of Context:
75
75
from bzrlib import (
76
76
    annotate,
77
77
    lru_cache,
 
78
    merge,
78
79
    pack,
79
80
    trace,
 
81
    tsort,
80
82
    )
81
83
""")
82
84
from bzrlib import (
87
89
    osutils,
88
90
    patiencediff,
89
91
    progress,
90
 
    merge,
91
92
    ui,
92
93
    )
93
94
from bzrlib.errors import (
108
109
    sha_strings,
109
110
    )
110
111
from bzrlib.symbol_versioning import DEPRECATED_PARAMETER, deprecated_passed
111
 
from bzrlib.tsort import topo_sort
112
112
import bzrlib.ui
113
113
import bzrlib.weave
114
114
from bzrlib.versionedfile import VersionedFile, InterVersionedFile
1401
1401
            graph[version] = parents
1402
1402
        if not topo_sorted:
1403
1403
            return graph.keys()
1404
 
        return topo_sort(graph.items())
 
1404
        return tsort.topo_sort(graph.items())
1405
1405
 
1406
1406
    def get_ancestry_with_ghosts(self, versions):
1407
1407
        """See VersionedFile.get_ancestry_with_ghosts."""
1421
1421
                # if not completed
1422
1422
                pending.update([p for p in parents if p not in graph])
1423
1423
                graph[version] = parents
1424
 
        return topo_sort(graph.items())
 
1424
        return tsort.topo_sort(graph.items())
1425
1425
 
1426
1426
    def get_build_details(self, version_ids):
1427
1427
        """Get the method, index_memo and compression parent for version_ids.
1664
1664
        if versions.difference(graph):
1665
1665
            raise RevisionNotPresent(versions.difference(graph).pop(), self)
1666
1666
        if topo_sorted:
1667
 
            result_keys = topo_sort(graph.items())
 
1667
            result_keys = tsort.topo_sort(graph.items())
1668
1668
        else:
1669
1669
            result_keys = graph.iterkeys()
1670
1670
        return [key[0] for key in result_keys]
1700
1700
                # add a key, no parents
1701
1701
                graph[missing_version] = []
1702
1702
                pending.discard(missing_version) # don't look for it
1703
 
        result_keys = topo_sort(graph.items())
 
1703
        result_keys = tsort.topo_sort(graph.items())
1704
1704
        return [key[0] for key in result_keys]
1705
1705
 
1706
1706
    def get_build_details(self, version_ids):
2529
2529
        """
2530
2530
        version_ids = self._get_source_version_ids(version_ids, ignore_missing)
2531
2531
        graph = self.source.get_graph(version_ids)
2532
 
        order = topo_sort(graph.items())
 
2532
        order = tsort.topo_sort(graph.items())
2533
2533
 
2534
2534
        def size_of_content(content):
2535
2535
            return sum(len(line) for line in content.text())
2596
2596
    
2597
2597
            if not needed_versions:
2598
2598
                return 0
2599
 
            full_list = topo_sort(self.source.get_graph())
 
2599
            full_list = tsort.topo_sort(self.source.get_graph())
2600
2600
    
2601
2601
            version_list = [i for i in full_list if (not self.target.has_version(i)
2602
2602
                            and i in needed_versions)]
2698
2698
    
2699
2699
            if not needed_versions:
2700
2700
                return 0
2701
 
            full_list = topo_sort(self.source.get_graph())
 
2701
            full_list = tsort.topo_sort(self.source.get_graph())
2702
2702
    
2703
2703
            version_list = [i for i in full_list if (not self.target.has_version(i)
2704
2704
                            and i in needed_versions)]