~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/repofmt/weaverepo.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2010-09-01 08:02:42 UTC
  • mfrom: (5390.3.3 faster-revert-593560)
  • Revision ID: pqm@pqm.ubuntu.com-20100901080242-esg62ody4frwmy66
(spiv) Avoid repeatedly calling self.target.all_file_ids() in
 InterTree.iter_changes. (Andrew Bennetts)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005, 2006, 2007, 2008 Canonical Ltd
 
1
# Copyright (C) 2007-2010 Canonical Ltd
2
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
39
39
    lockdir,
40
40
    osutils,
41
41
    revision as _mod_revision,
 
42
    trace,
42
43
    urlutils,
43
44
    versionedfile,
44
45
    weave,
53
54
    RepositoryFormat,
54
55
    )
55
56
from bzrlib.store.text import TextStore
56
 
from bzrlib.trace import mutter
57
57
from bzrlib.tuned_gzip import GzipFile, bytes_to_gzip
58
58
from bzrlib.versionedfile import (
59
59
    AbsentContentFactory,
106
106
    def _all_possible_ids(self):
107
107
        """Return all the possible revisions that we could find."""
108
108
        if 'evil' in debug.debug_flags:
109
 
            mutter_callsite(3, "_all_possible_ids scales with size of history.")
 
109
            trace.mutter_callsite(
 
110
                3, "_all_possible_ids scales with size of history.")
110
111
        return [key[-1] for key in self.inventories.keys()]
111
112
 
112
113
    @needs_read_lock
176
177
        :param new_value: True to restore the default, False to disable making
177
178
                          working trees.
178
179
        """
179
 
        raise errors.RepositoryUpgradeRequired(self.bzrdir.root_transport.base)
 
180
        raise errors.RepositoryUpgradeRequired(self.user_url)
180
181
 
181
182
    def make_working_trees(self):
182
183
        """Returns the policy for making working trees on new branches."""
199
200
    def _all_possible_ids(self):
200
201
        """Return all the possible revisions that we could find."""
201
202
        if 'evil' in debug.debug_flags:
202
 
            mutter_callsite(3, "_all_possible_ids scales with size of history.")
 
203
            trace.mutter_callsite(
 
204
                3, "_all_possible_ids scales with size of history.")
203
205
        return [key[-1] for key in self.inventories.keys()]
204
206
 
205
207
    @needs_read_lock
286
288
        weavefile.write_weave_v5(weave.Weave(), sio)
287
289
        empty_weave = sio.getvalue()
288
290
 
289
 
        mutter('creating repository in %s.', a_bzrdir.transport.base)
 
291
        trace.mutter('creating repository in %s.', a_bzrdir.transport.base)
290
292
 
291
293
        # FIXME: RBC 20060125 don't peek under the covers
292
294
        # NB: no need to escape relative paths that are url safe.
302
304
                mode=a_bzrdir._get_file_mode())
303
305
        finally:
304
306
            control_files.unlock()
305
 
        return self.open(a_bzrdir, _found=True)
 
307
        repository = self.open(a_bzrdir, _found=True)
 
308
        self._run_post_repo_init_hooks(repository, a_bzrdir, shared)
 
309
        return repository
306
310
 
307
311
    def open(self, a_bzrdir, _found=False):
308
312
        """See RepositoryFormat.open()."""
524
528
        weavefile.write_weave_v5(weave.Weave(), sio)
525
529
        empty_weave = sio.getvalue()
526
530
 
527
 
        mutter('creating repository in %s.', a_bzrdir.transport.base)
 
531
        trace.mutter('creating repository in %s.', a_bzrdir.transport.base)
528
532
        dirs = ['revision-store', 'weaves']
529
533
        files = [('inventory.weave', StringIO(empty_weave)),
530
534
                 ]