~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/bzrdir.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2009-11-17 03:20:35 UTC
  • mfrom: (4792.4.3 456036)
  • Revision ID: pqm@pqm.ubuntu.com-20091117032035-s3sgtlixj1lrminn
(Gordon Tyler) Fix IndexError during 'bzr ignore /' (#456036)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005-2010 Canonical Ltd
 
1
# Copyright (C) 2005, 2006, 2007, 2008, 2009 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
1827
1827
    def probe_transport(klass, transport):
1828
1828
        """Return the .bzrdir style format present in a directory."""
1829
1829
        try:
1830
 
            format_string = transport.get_bytes(".bzr/branch-format")
 
1830
            format_string = transport.get(".bzr/branch-format").read()
1831
1831
        except errors.NoSuchFile:
1832
1832
            raise errors.NotBranchError(path=transport.base)
1833
1833
 
3108
3108
 
3109
3109
    def __init__(self):
3110
3110
        BzrDirMetaFormat1.__init__(self)
3111
 
        # XXX: It's a bit ugly that the network name is here, because we'd
3112
 
        # like to believe that format objects are stateless or at least
3113
 
        # immutable,  However, we do at least avoid mutating the name after
3114
 
        # it's returned.  See <https://bugs.edge.launchpad.net/bzr/+bug/504102>
3115
3111
        self._network_name = None
3116
3112
 
3117
 
    def __repr__(self):
3118
 
        return "%s(_network_name=%r)" % (self.__class__.__name__,
3119
 
            self._network_name)
3120
 
 
3121
3113
    def get_format_description(self):
3122
3114
        if self._network_name:
3123
3115
            real_format = network_format_registry.get(self._network_name)
3260
3252
        args.append(self._serialize_NoneString(repo_format_name))
3261
3253
        args.append(self._serialize_NoneTrueFalse(make_working_trees))
3262
3254
        args.append(self._serialize_NoneTrueFalse(shared_repo))
3263
 
        request_network_name = self._network_name or \
 
3255
        if self._network_name is None:
 
3256
            self._network_name = \
3264
3257
            BzrDirFormat.get_default_format().network_name()
3265
3258
        try:
3266
3259
            response = client.call('BzrDirFormat.initialize_ex_1.16',
3267
 
                request_network_name, path, *args)
 
3260
                self.network_name(), path, *args)
3268
3261
        except errors.UnknownSmartMethod:
3269
3262
            client._medium._remember_remote_is_before((1,16))
3270
3263
            local_dir_format = BzrDirMetaFormat1()
3520
3513
                experimental_pairs.append((key, help))
3521
3514
            else:
3522
3515
                output += wrapped(key, help, info)
3523
 
        output += "\nSee :doc:`formats-help` for more about storage formats."
 
3516
        output += "\nSee ``bzr help formats`` for more about storage formats."
3524
3517
        other_output = ""
3525
3518
        if len(experimental_pairs) > 0:
3526
3519
            other_output += "Experimental formats are shown below.\n\n"
3539
3532
            other_output += \
3540
3533
                "\nNo deprecated formats are available.\n\n"
3541
3534
        other_output += \
3542
 
                "\nSee :doc:`formats-help` for more about storage formats."
 
3535
            "\nSee ``bzr help formats`` for more about storage formats."
3543
3536
 
3544
3537
        if topic == 'other-formats':
3545
3538
            return other_output