Rev 3163: (robertc) Clean up inventory test module and add basic inventory in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Thu Jan 3 22:09:21 GMT 2008


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 3163
revision-id:pqm at pqm.ubuntu.com-20080103220910-yajpwrwzbuyafqcg
parent: pqm at pqm.ubuntu.com-20080103191230-baidarqql3lct685
parent: robertc at robertcollins.net-20080103210206-eqvta89m37jgjjfi
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2008-01-03 22:09:10 +0000
message:
  (robertc) Clean up inventory test module and add basic inventory
  	documentation. (Robert Collins)
added:
  doc/developers/inventory.txt   inventory.txt-20080103013957-opkrhxy6lmywmx4i-1
modified:
  bzrlib/tests/inventory_implementations/__init__.py __init__.py-20070821044532-olbadbokgv3qv1yd-1
  doc/developers/index.txt       index.txt-20070508041241-qznziunkg0nffhiw-1
    ------------------------------------------------------------
    revno: 3152.1.3
    revision-id:robertc at robertcollins.net-20080103210206-eqvta89m37jgjjfi
    parent: robertc at robertcollins.net-20080103014016-7o8mxov3jxx0tuwo
    parent: pqm at pqm.ubuntu.com-20080103191230-baidarqql3lct685
    committer: Robert Collins <robertc at robertcollins.net>
    branch nick: integration
    timestamp: Fri 2008-01-04 08:02:06 +1100
    message:
      Resolve conflicts with bzr.dev.
    added:
      bzrlib/tests/test_http_implementations.py test_http_implementa-20071218210003-65nh81gglcfvurw6-1
      doc/developers/lca-merge.txt   lcamerge.txt-20080103061803-9isydn4ivgwrvorw-1
    renamed:
      bzrlib/tests/HTTPTestUtil.py => bzrlib/tests/http_utils.py HTTPTestUtil.py-20050914180604-247d3aafb7a43343
      bzrlib/tests/HttpServer.py => bzrlib/tests/http_server.py httpserver.py-20061012142527-m1yxdj1xazsf8d7s-1
    modified:
      NEWS                           NEWS-20050323055033-4e00b5db738777ff
      bzrlib/bugtracker.py           bugtracker.py-20070410073305-vu1vu1qosjurg8kb-1
      bzrlib/builtins.py             builtins.py-20050830033751-fc01482b9ca23183
      bzrlib/conflicts.py            conflicts.py-20051001061850-78ef952ba63d2b42
      bzrlib/diff.py                 diff.py-20050309040759-26944fbbf2ebbf36
      bzrlib/errors.py               errors.py-20050309040759-20512168c4e14fbd
      bzrlib/help_topics/__init__.py help_topics.py-20060920210027-rnim90q9e0bwxvy4-1
      bzrlib/help_topics/en/conflicts.txt conflicts.txt-20070723221841-ns3jvwxdb4okn6fk-1
      bzrlib/merge.py                merge.py-20050513021216-953b65a438527106
      bzrlib/option.py               option.py-20051014052914-661fb36e76e7362f
      bzrlib/smart/vfs.py            vfs.py-20061108095550-gunadhxmzkdjfeek-2
      bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
      bzrlib/tests/blackbox/test_annotate.py testannotate.py-20051013044000-457f44801bfa9d39
      bzrlib/tests/blackbox/test_ignore.py test_ignore.py-20060703063225-4tm8dc2pa7wwg2t3-1
      bzrlib/tests/blackbox/test_merge.py test_merge.py-20060323225809-9bc0459c19917f41
      bzrlib/tests/blackbox/test_selftest.py test_selftest.py-20060123024542-01c5f1bbcb596d78
      bzrlib/tests/blackbox/test_too_much.py blackbox.py-20050620052131-a7370d756399f615
      bzrlib/tests/branch_implementations/test_branch.py testbranch.py-20050711070244-121d632bc37d7253
      bzrlib/tests/branch_implementations/test_http.py test_http.py-20060731224648-2eef7ae5yja95rya-1
      bzrlib/tests/branch_implementations/test_parent.py test_parent.py-20050830052751-5e62766623c32222
      bzrlib/tests/test_bundle.py    test.py-20050630184834-092aa401ab9f039c
      bzrlib/tests/test_bzrdir.py    test_bzrdir.py-20060131065654-deba40eef51cf220
      bzrlib/tests/test_conflicts.py test_conflicts.py-20051006031059-e2dad9bbeaa5891f
      bzrlib/tests/test_diff.py      testdiff.py-20050727164403-d1a3496ebb12e339
      bzrlib/tests/test_fetch.py     testfetch.py-20050825090644-f73e07e7dfb1765a
      bzrlib/tests/test_http.py      testhttp.py-20051018020158-b2eef6e867c514d9
      bzrlib/tests/test_http_response.py test_http_response.py-20060628233143-950b2a482a32505d
      bzrlib/tests/test_merge.py     testmerge.py-20050905070950-c1b5aa49ff911024
      bzrlib/tests/test_revert.py    test_revert.py-20060828180832-fqb1v6ecpyvnlitj-1
      bzrlib/tests/test_selftest.py  test_selftest.py-20051202044319-c110a115d8c0456a
      bzrlib/tests/test_sftp_transport.py testsftp.py-20051027032739-247570325fec7e7e
      bzrlib/tests/test_smart_transport.py test_ssh_transport.py-20060608202016-c25gvf1ob7ypbus6-2
      bzrlib/tests/test_transform.py test_transaction.py-20060105172520-b3ffb3946550e6c4
      bzrlib/tests/test_transport.py testtransport.py-20050718175618-e5cdb99f4555ddce
      bzrlib/tests/test_transport_implementations.py test_transport_implementations.py-20051227111451-f97c5c7d5c49fce7
      bzrlib/tests/test_urlutils.py  test_urlutils.py-20060502192900-46b1f9579987cf9c
      bzrlib/tests/test_versionedfile.py test_versionedfile.py-20060222045249-db45c9ed14a1c2e5
      bzrlib/tests/test_win32utils.py test_win32utils.py-20070713181630-8xsrjymd3e8mgw23-108
      bzrlib/transform.py            transform.py-20060105172343-dd99e54394d91687
      bzrlib/transport/__init__.py   transport.py-20050711165921-4978aa7ce1285ad5
      bzrlib/transport/http/__init__.py http_transport.py-20050711212304-506c5fd1059ace96
      bzrlib/transport/http/_pycurl.py pycurlhttp.py-20060110060940-4e2a705911af77a6
      bzrlib/transport/http/_urllib.py _urlgrabber.py-20060113083826-0bbf7d992fbf090c
      bzrlib/transport/http/_urllib2_wrappers.py _urllib2_wrappers.py-20060913231729-ha9ugi48ktx481ao-1
      bzrlib/transport/http/response.py _response.py-20060613154423-a2ci7hd4iw5c7fnt-1
      bzrlib/transport/remote.py     ssh.py-20060608202016-c25gvf1ob7ypbus6-1
      bzrlib/tree.py                 tree.py-20050309040759-9d5f2496be663e77
      bzrlib/urlutils.py             urlutils.py-20060502195429-e8a161ecf8fac004
      bzrlib/versionedfile.py        versionedfile.py-20060222045106-5039c71ee3b65490
      bzrlib/workingtree_4.py        workingtree_4.py-20070208044105-5fgpc5j3ljlh5q6c-1
      doc/developers/index.txt       index.txt-20070508041241-qznziunkg0nffhiw-1
      doc/en/user-guide/bug_trackers.txt bug_trackers.txt-20070713223459-khxdlcudraii95uv-1
      bzrlib/tests/http_utils.py     HTTPTestUtil.py-20050914180604-247d3aafb7a43343
      bzrlib/tests/http_server.py    httpserver.py-20061012142527-m1yxdj1xazsf8d7s-1
    ------------------------------------------------------------
    revno: 3152.1.2
    revision-id:robertc at robertcollins.net-20080103014016-7o8mxov3jxx0tuwo
    parent: robertc at robertcollins.net-20080103012146-1hy9jrj8zgld3raf
    committer: Robert Collins <robertc at robertcollins.net>
    branch nick: inventory.journalled
    timestamp: Thu 2008-01-03 12:40:16 +1100
    message:
      Add documentation about the inventory system.
    added:
      doc/developers/inventory.txt   inventory.txt-20080103013957-opkrhxy6lmywmx4i-1
    modified:
      doc/developers/index.txt       index.txt-20070508041241-qznziunkg0nffhiw-1
    ------------------------------------------------------------
    revno: 3152.1.1
    revision-id:robertc at robertcollins.net-20080103012146-1hy9jrj8zgld3raf
    parent: pqm at pqm.ubuntu.com-20080102154906-hqiq6x2eammznjtg
    committer: Robert Collins <robertc at robertcollins.net>
    branch nick: inventory.journalled
    timestamp: Thu 2008-01-03 12:21:46 +1100
    message:
      Remove dead imports.
    modified:
      bzrlib/tests/inventory_implementations/__init__.py __init__.py-20070821044532-olbadbokgv3qv1yd-1
=== added file 'doc/developers/inventory.txt'
--- a/doc/developers/inventory.txt	1970-01-01 00:00:00 +0000
+++ b/doc/developers/inventory.txt	2008-01-03 01:40:16 +0000
@@ -0,0 +1,47 @@
+===========
+Inventories
+===========
+
+.. contents::
+
+Overview
+========
+
+Inventories provide an abstraction for talking about the shape of a tree.
+Generally only tree object implementors should be concerned about inventories.
+
+In memory inventories
+=====================
+
+In memory inventories are often used in diff and status operations between
+trees. We are working to reduce the number of times this occurs with 'full
+tree' inventory objects, and instead use more custom tailored data structures
+that allow operations on only a small amount of data regardless of the size of
+the tree.
+
+
+Serialization
+=============
+
+There are several variants of serialised tree shape in use by bzr. To date
+these have been mostly xml based, though plugins have offered non-xml versions.
+
+dirstate
+--------
+
+The dirstate file in a working tree includes many different tree shapes - one
+for the working tree and one for each parent tree, interleaved to allow
+efficient diff and status operations.
+
+xml
+---
+
+All the xml serialized forms write to and read from a single byte string, whose
+hash is then the inventory validator for the commit object.
+
+journalled
+----------
+
+The in development journalled inventory serializer generates a single byte
+string during serialization, but may require many byte strings to deserialize,
+and these are discovered recursively.

=== modified file 'bzrlib/tests/inventory_implementations/__init__.py'
--- a/bzrlib/tests/inventory_implementations/__init__.py	2007-09-03 04:45:38 +0000
+++ b/bzrlib/tests/inventory_implementations/__init__.py	2008-01-03 01:21:46 +0000
@@ -16,24 +16,7 @@
 
 """Tests for different inventory implementations"""
 
-# NOTE: Don't import Inventory here, to make sure that we don't accidentally
-# hardcode that when we should be using self.make_inventory
-
-from bzrlib import (
-        errors,
-        )
-
-from bzrlib.inventory import (
-        InventoryDirectory,
-        InventoryEntry,
-        InventoryFile,
-        InventoryLink,
-        ROOT_ID,
-        TreeReference,
-        )
-
 from bzrlib.tests import (
-        TestCase,
         multiply_tests_from_modules,
         )
 

=== modified file 'doc/developers/index.txt'
--- a/doc/developers/index.txt	2008-01-03 06:34:07 +0000
+++ b/doc/developers/index.txt	2008-01-03 21:02:06 +0000
@@ -29,12 +29,14 @@
 
 * `Indices <indices.html>`_ |--| The index facilities available within bzrlib.
 
+* `Inventories <inventory.html>`_ |--| Tree shape abstraction.
+
+* `LCA merge <lca-merge.html>`_ |--| A nice new merge algorithm.
+
+* `Network protocol <network-protocol.html>`_ |--| Custom network protocol.
+
 * `Repositories <repository.html>`_ |--| What repositories do and are used for.
 
-* `Network protocol <network-protocol.html>`_ |--| Custom network protocol.
-
-* `LCA merge <lca-merge.html>`_ |--| A nice new merge algorithm.
-
 Data formats
 ============
 




More information about the bazaar-commits mailing list