841
841
knit = self._revision_store.get_signature_file(
842
842
self.get_transaction())
844
raise RepositoryDataStreamError(
844
raise errors.RepositoryDataStreamError(
845
845
"Unrecognised data stream key '%s'" % (item_key,))
846
846
decoded_list = bencode.bdecode(bytes)
847
847
format = decoded_list.pop(0)
1778
1778
"""Return the graph walker for this repository format"""
1779
1779
parents_provider = self._make_parents_provider()
1780
1780
if (other_repository is not None and
1781
other_repository.bzrdir.transport.base !=
1782
self.bzrdir.transport.base):
1781
not self.has_same_location(other_repository)):
1783
1782
parents_provider = graph._StackedParentsProvider(
1784
1783
[parents_provider, other_repository._make_parents_provider()])
1785
1784
return graph.Graph(parents_provider)
2091
2090
# Set to True or False in derived classes. True indicates that the format
2092
2091
# supports ghosts gracefully.
2093
2092
supports_ghosts = None
2093
# Can this repository be given external locations to lookup additional
2094
# data. Set to True or False in derived classes.
2095
supports_external_lookups = None
2095
2097
def __str__(self):
2096
2098
return "<%s>" % self.__class__.__name__
2300
2303
# Pack-based formats. There is one format for pre-subtrees, and one for
2301
2304
# post-subtrees to allow ease of testing.
2302
# NOTE: These are experimental in 0.92.
2305
# NOTE: These are experimental in 0.92. Stable in 1.0 and above
2303
2306
format_registry.register_lazy(
2304
2307
'Bazaar pack repository format 1 (needs bzr 0.92)\n',
2305
2308
'bzrlib.repofmt.pack_repo',
2315
2318
'bzrlib.repofmt.pack_repo',
2316
2319
'RepositoryFormatKnitPack4',
2321
# Development formats.
2323
# development 0 - stub to introduce development versioning scheme.
2324
format_registry.register_lazy(
2325
"Bazaar development format 0 (needs bzr.dev from before 1.3)\n",
2326
'bzrlib.repofmt.pack_repo',
2327
'RepositoryFormatPackDevelopment0',
2329
format_registry.register_lazy(
2330
("Bazaar development format 0 with subtree support "
2331
"(needs bzr.dev from before 1.3)\n"),
2332
'bzrlib.repofmt.pack_repo',
2333
'RepositoryFormatPackDevelopment0Subtree',
2335
# 1.3->1.4 go below here
2320
2338
class InterRepository(InterObject):
2828
2846
from bzrlib.repofmt.knitrepo import (RepositoryFormatKnit1,
2829
2847
RepositoryFormatKnit3)
2830
from bzrlib.repofmt.pack_repo import (RepositoryFormatKnitPack1,
2831
RepositoryFormatKnitPack3)
2832
return (isinstance(source._format,
2833
(RepositoryFormatKnit1, RepositoryFormatKnitPack1)) and
2834
isinstance(target._format,
2835
(RepositoryFormatKnit3, RepositoryFormatKnitPack3))
2848
from bzrlib.repofmt.pack_repo import (
2849
RepositoryFormatKnitPack1,
2850
RepositoryFormatKnitPack3,
2851
RepositoryFormatPackDevelopment0,
2852
RepositoryFormatPackDevelopment0Subtree,
2855
RepositoryFormatKnit1,
2856
RepositoryFormatKnitPack1,
2857
RepositoryFormatPackDevelopment0,
2860
RepositoryFormatKnit3,
2861
RepositoryFormatKnitPack3,
2862
RepositoryFormatPackDevelopment0Subtree,
2864
return (isinstance(source._format, nosubtrees) and
2865
isinstance(target._format, subtrees))
2837
2866
except AttributeError: