Rev 2671: Merge rename of FileCollection. in http://people.ubuntu.com/~robertc/baz2.0/repository
Robert Collins
robertc at robertcollins.net
Thu Jul 19 08:19:26 BST 2007
At http://people.ubuntu.com/~robertc/baz2.0/repository
------------------------------------------------------------
revno: 2671
revision-id: robertc at robertcollins.net-20070719071921-2is4gdrs92rl1xft
parent: robertc at robertcollins.net-20070719070144-g3q9sdi0ob24excv
parent: robertc at robertcollins.net-20070719064046-3mbyfeb6ioaw4htk
committer: Robert Collins <robertc at robertcollins.net>
branch nick: repository
timestamp: Thu 2007-07-19 17:19:21 +1000
message:
Merge rename of FileCollection.
renamed:
bzrlib/file_collection.py => bzrlib/file_names.py file_collection.py-20070714100753-j2zz4ahtk331k5zm-1
bzrlib/tests/test_file_collection.py => bzrlib/tests/test_file_names.py test_file_collection-20070714093417-5gc9d821to85zo4t-1
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/repofmt/knitrepo.py knitrepo.py-20070206081537-pyy4a00xdas0j4pf-1
bzrlib/tests/__init__.py selftest.py-20050531073622-8d0e3c8845c97a64
bzrlib/tests/test_repository.py test_repository.py-20060131075918-65c555b881612f4d
bzrlib/transport/__init__.py transport.py-20050711165921-4978aa7ce1285ad5
bzrlib/file_names.py file_collection.py-20070714100753-j2zz4ahtk331k5zm-1
bzrlib/tests/test_file_names.py test_file_collection-20070714093417-5gc9d821to85zo4t-1
------------------------------------------------------------
revno: 2592.1.31
revision-id: robertc at robertcollins.net-20070719064046-3mbyfeb6ioaw4htk
parent: robertc at robertcollins.net-20070719063913-l1afgl876zpaysf4
committer: Robert Collins <robertc at robertcollins.net>
branch nick: file-collection
timestamp: Thu 2007-07-19 16:40:46 +1000
message:
self._names.discard wins over conditional remove - thanks Aaron.
modified:
bzrlib/file_names.py file_collection.py-20070714100753-j2zz4ahtk331k5zm-1
------------------------------------------------------------
revno: 2592.1.30
revision-id: robertc at robertcollins.net-20070719063913-l1afgl876zpaysf4
parent: robertc at robertcollins.net-20070719033717-2ajc3s1ua9wq2a9k
committer: Robert Collins <robertc at robertcollins.net>
branch nick: file-collection
timestamp: Thu 2007-07-19 16:39:13 +1000
message:
Reinstate the fakenfs+ decorator registration.
modified:
bzrlib/transport/__init__.py transport.py-20050711165921-4978aa7ce1285ad5
------------------------------------------------------------
revno: 2592.1.29
revision-id: robertc at robertcollins.net-20070719033717-2ajc3s1ua9wq2a9k
parent: robertc at robertcollins.net-20070714101338-eu0cblg5ds2q2him
committer: Robert Collins <robertc at robertcollins.net>
branch nick: file-collection
timestamp: Thu 2007-07-19 13:37:17 +1000
message:
Rename to FileNames as per review.
renamed:
bzrlib/file_collection.py => bzrlib/file_names.py file_collection.py-20070714100753-j2zz4ahtk331k5zm-1
bzrlib/tests/test_file_collection.py => bzrlib/tests/test_file_names.py test_file_collection-20070714093417-5gc9d821to85zo4t-1
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/tests/__init__.py selftest.py-20050531073622-8d0e3c8845c97a64
bzrlib/file_names.py file_collection.py-20070714100753-j2zz4ahtk331k5zm-1
bzrlib/tests/test_file_names.py test_file_collection-20070714093417-5gc9d821to85zo4t-1
=== renamed file 'bzrlib/file_collection.py' => 'bzrlib/file_names.py'
--- a/bzrlib/file_collection.py 2007-07-14 10:13:38 +0000
+++ b/bzrlib/file_names.py 2007-07-19 06:40:46 +0000
@@ -24,7 +24,7 @@
""")
-class FileCollection(object):
+class FileNames(object):
"""A collection of file names.
The file names are persisted to a file on a transport, and cand be
@@ -44,7 +44,7 @@
"""
def __init__(self, transport, index_name):
- """Create a collection on transport called index_name."""
+ """Create a names on transport called index_name."""
self._transport = transport
self._index_name = index_name
self._names = None
@@ -58,22 +58,21 @@
raise errors.BzrError('too many files')
def initialise(self):
- """Initialise the collection record on disk."""
+ """Initialise the names record on disk."""
self._names = set()
def load(self):
"""Load the names from the transport."""
self._names = set(self._transport.get_bytes(
self._index_name).split('\n'))
- if '' in self._names:
- self._names.remove('')
+ self._names.discard('')
def names(self):
- """What are the names in this collection?"""
+ """What are the names in this names?"""
return frozenset(self._names)
def remove(self, name):
- """Remove name from the collection."""
+ """Remove name from the names."""
self._names.remove(name)
def save(self):
=== renamed file 'bzrlib/tests/test_file_collection.py' => 'bzrlib/tests/test_file_names.py'
--- a/bzrlib/tests/test_file_collection.py 2007-07-14 10:13:38 +0000
+++ b/bzrlib/tests/test_file_names.py 2007-07-19 03:37:17 +0000
@@ -14,90 +14,90 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-"""Tests for the FileCollection class."""
+"""Tests for the FileNames class."""
from bzrlib import errors
-from bzrlib.file_collection import FileCollection
+from bzrlib.file_names import FileNames
from bzrlib.tests import TestCaseWithMemoryTransport
from bzrlib.transport import get_transport
-class TestFileCollection(TestCaseWithMemoryTransport):
+class TestFileNames(TestCaseWithMemoryTransport):
def test_initialise(self):
t = self.get_transport()
for name in ('index', '00index'):
- collection = FileCollection(t, name)
- collection.initialise()
+ names = FileNames(t, name)
+ names.initialise()
self.assertFalse(t.has(name))
- collection.save()
+ names.save()
self.assertEqual('', t.get_bytes(name))
def test_allocate_trivial(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- name = collection.allocate()
+ names = FileNames(t, 'index')
+ names.initialise()
+ name = names.allocate()
self.assertEqual('0', name)
self.assertFalse(t.has('index'))
- name = collection.allocate()
+ name = names.allocate()
self.assertEqual('1', name)
self.assertFalse(t.has('index'))
def test_allocate_overrun(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- collection._cap = 5
+ names = FileNames(t, 'index')
+ names.initialise()
+ names._cap = 5
for number in xrange(5):
- name = collection.allocate()
- self.assertRaises(errors.BzrError, collection.allocate)
+ name = names.allocate()
+ self.assertRaises(errors.BzrError, names.allocate)
def test_load(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- collection.allocate()
- collection.allocate()
- collection.save()
- collection = FileCollection(t, 'index')
- collection.load()
- self.assertEqual(set(['0', '1']), collection.names())
+ names = FileNames(t, 'index')
+ names.initialise()
+ names.allocate()
+ names.allocate()
+ names.save()
+ names = FileNames(t, 'index')
+ names.load()
+ self.assertEqual(set(['0', '1']), names.names())
def test_load_empty(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- collection.save()
- collection = FileCollection(t, 'index')
- collection.load()
- self.assertEqual(set(), collection.names())
+ names = FileNames(t, 'index')
+ names.initialise()
+ names.save()
+ names = FileNames(t, 'index')
+ names.load()
+ self.assertEqual(set(), names.names())
def test_names(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- collection.allocate()
- collection.allocate()
- self.assertEqual(set(['0', '1']), collection.names())
+ names = FileNames(t, 'index')
+ names.initialise()
+ names.allocate()
+ names.allocate()
+ self.assertEqual(set(['0', '1']), names.names())
def test_names_on_unlistable_works(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- collection.allocate()
- collection.allocate()
- collection.save()
- collection = FileCollection(
+ names = FileNames(t, 'index')
+ names.initialise()
+ names.allocate()
+ names.allocate()
+ names.save()
+ names = FileNames(
get_transport('unlistable+' + self.get_url()), 'index')
- collection.load()
- self.assertEqual(set(['0', '1']), collection.names())
+ names.load()
+ self.assertEqual(set(['0', '1']), names.names())
def test_remove(self):
t = self.get_transport()
- collection = FileCollection(t, 'index')
- collection.initialise()
- name1 = collection.allocate()
- name2 = collection.allocate()
- collection.remove(name1)
- self.assertEqual(set([name2]), collection.names())
+ names = FileNames(t, 'index')
+ names.initialise()
+ name1 = names.allocate()
+ name2 = names.allocate()
+ names.remove(name1)
+ self.assertEqual(set([name2]), names.names())
=== modified file 'NEWS'
--- a/NEWS 2007-07-19 07:01:44 +0000
+++ b/NEWS 2007-07-19 07:19:21 +0000
@@ -63,7 +63,7 @@
* New transport decorator 'unlistable+' which disables the list_dir
functionality for testing.
- * New ``file_collection.FileCollection`` support class which mananges names
+ * New ``file_names.FileNames`` support class which mananges names
for unlistable transport situations. (Robert Collins)
* New methods on Repository - ``start_write_group``,
=== modified file 'bzrlib/repofmt/knitrepo.py'
--- a/bzrlib/repofmt/knitrepo.py 2007-07-19 01:20:49 +0000
+++ b/bzrlib/repofmt/knitrepo.py 2007-07-19 07:19:21 +0000
@@ -17,7 +17,7 @@
from bzrlib.lazy_import import lazy_import
lazy_import(globals(), """
from bzrlib import (
- file_collection,
+ file_names,
)
from bzrlib.index import InMemoryGraphIndex, GraphIndex, CombinedGraphIndex
from bzrlib.knit import KnitGraphIndex
@@ -305,7 +305,7 @@
"""Create a GraphKnitRevisionStore on repo with revisionstore.
This will store its state in the Repository, use the
- revision-indices FileCollection to provide a KnitGraphIndex,
+ revision-indices FileNames to provide a KnitGraphIndex,
and at the end of transactions write new indices.
"""
KnitRevisionStore.__init__(self, revisionstore.versioned_file_store)
@@ -315,7 +315,7 @@
def _ensure_names_loaded(self):
if self.repo._revision_indices is None:
index_transport = self.get_indices_transport()
- self.repo._revision_indices = file_collection.FileCollection(
+ self.repo._revision_indices = file_names.FileNames(
index_transport, 'index')
self.repo._revision_indices.load()
@@ -749,10 +749,10 @@
mutter('changing to GraphKnit1 repository in %s.', a_bzrdir.transport.base)
repo_transport = a_bzrdir.get_repository_transport(None)
repo_transport.mkdir('indices')
- collection = file_collection.FileCollection(
+ names = file_names.FileNames(
repo_transport.clone('indices'), 'index')
- collection.initialise()
- collection.save()
+ names.initialise()
+ names.save()
repo_transport.delete('revisions.kndx')
repo_transport.delete('signatures.kndx')
=== modified file 'bzrlib/tests/__init__.py'
--- a/bzrlib/tests/__init__.py 2007-07-19 07:01:44 +0000
+++ b/bzrlib/tests/__init__.py 2007-07-19 07:19:21 +0000
@@ -2272,7 +2272,7 @@
'bzrlib.tests.test_escaped_store',
'bzrlib.tests.test_extract',
'bzrlib.tests.test_fetch',
- 'bzrlib.tests.test_file_collection',
+ 'bzrlib.tests.test_file_names',
'bzrlib.tests.test_ftp_transport',
'bzrlib.tests.test_generate_docs',
'bzrlib.tests.test_generate_ids',
=== modified file 'bzrlib/tests/test_repository.py'
--- a/bzrlib/tests/test_repository.py 2007-07-18 04:31:29 +0000
+++ b/bzrlib/tests/test_repository.py 2007-07-19 07:19:21 +0000
@@ -34,7 +34,7 @@
UnknownFormatError,
UnsupportedFormatError,
)
-from bzrlib.file_collection import FileCollection
+from bzrlib.file_names import FileNames
from bzrlib.repository import RepositoryFormat
from bzrlib.tests import TestCase, TestCaseWithTransport
from bzrlib.transport import get_transport
@@ -547,9 +547,9 @@
self.assertHasNoKndx(t, 'signatures')
self.assertHasKnit(t, 'signatures')
# revision-indexes file-container directory
- collection = FileCollection(t.clone('indices'), 'index')
- collection.load()
- self.assertEqual(set(), collection.names())
+ names = FileNames(t.clone('indices'), 'index')
+ names.load()
+ self.assertEqual(set(), names.names())
def test_shared_disk_layout(self):
format = self.get_format()
=== modified file 'bzrlib/transport/__init__.py'
--- a/bzrlib/transport/__init__.py 2007-07-14 09:35:31 +0000
+++ b/bzrlib/transport/__init__.py 2007-07-19 06:39:13 +0000
@@ -1295,6 +1295,9 @@
)
register_lazy_transport('readonly+', 'bzrlib.transport.readonly', 'ReadonlyTransportDecorator')
+register_transport_proto('fakenfs+')
+register_lazy_transport('fakenfs+', 'bzrlib.transport.fakenfs', 'FakeNFSTransportDecorator')
+
register_transport_proto('unlistable+')
register_lazy_transport('unlistable+', 'bzrlib.transport.unlistable', 'UnlistableTransportDecorator')
More information about the bazaar-commits
mailing list