/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/workingtree.py

  • Committer: Jelmer Vernooij
  • Date: 2009-04-01 20:56:53 UTC
  • mfrom: (4232 +trunk)
  • mto: (3920.2.35 dpush)
  • mto: This revision was merged to the branch mainline in revision 4281.
  • Revision ID: jelmer@samba.org-20090401205653-1a7hi08ff67mzj3z
Merge bzr.dev.

Show diffs side-by-side

added added

removed removed

Lines of Context:
80
80
import bzrlib.branch
81
81
from bzrlib.transport import get_transport
82
82
import bzrlib.ui
83
 
from bzrlib.workingtree_4 import WorkingTreeFormat4, WorkingTreeFormat5
 
83
from bzrlib.workingtree_4 import (
 
84
    WorkingTreeFormat4,
 
85
    WorkingTreeFormat5,
 
86
    WorkingTreeFormat6,
 
87
    )
84
88
""")
85
89
 
86
90
from bzrlib import symbol_versioning
766
770
    def _set_merges_from_parent_ids(self, parent_ids):
767
771
        merges = parent_ids[1:]
768
772
        self._transport.put_bytes('pending-merges', '\n'.join(merges),
769
 
            mode=self._control_files._file_mode)
 
773
            mode=self.bzrdir._get_file_mode())
770
774
 
771
775
    def _filter_parent_ids_by_ancestry(self, revision_ids):
772
776
        """Check that all merged revisions are proper 'heads'.
872
876
        self._must_be_locked()
873
877
        my_file = rio_file(stanzas, header)
874
878
        self._transport.put_file(filename, my_file,
875
 
            mode=self._control_files._file_mode)
 
879
            mode=self.bzrdir._get_file_mode())
876
880
 
877
881
    @needs_write_lock # because merge pulls data into the branch.
878
882
    def merge_from_branch(self, branch, to_revision=None, from_revision=None,
969
973
        return file_id
970
974
 
971
975
    def get_symlink_target(self, file_id):
972
 
        return os.readlink(self.id2abspath(file_id).encode(osutils._fs_enc))
 
976
        return os.readlink(self.id2abspath(file_id).encode(osutils._fs_enc)
 
977
            ).decode(osutils._fs_enc)
973
978
 
974
979
    @needs_write_lock
975
980
    def subsume(self, other_tree):
1104
1109
        self._serialize(self._inventory, sio)
1105
1110
        sio.seek(0)
1106
1111
        self._transport.put_file('inventory', sio,
1107
 
            mode=self._control_files._file_mode)
 
1112
            mode=self.bzrdir._get_file_mode())
1108
1113
        self._inventory_is_modified = False
1109
1114
 
1110
1115
    def _kind(self, relpath):
1527
1532
        :raises: NoSuchId if any fileid is not currently versioned.
1528
1533
        """
1529
1534
        for file_id in file_ids:
 
1535
            if file_id not in self._inventory:
 
1536
                raise errors.NoSuchId(self, file_id)
 
1537
        for file_id in file_ids:
1530
1538
            if self._inventory.has_id(file_id):
1531
1539
                self._inventory.remove_recursive_id(file_id)
1532
 
            else:
1533
 
                raise errors.NoSuchId(self, file_id)
1534
1540
        if len(file_ids):
1535
1541
            # in the future this should just set a dirty bit to wait for the
1536
1542
            # final unlock. However, until all methods of workingtree start
1827
1833
        path = self._basis_inventory_name()
1828
1834
        sio = StringIO(xml)
1829
1835
        self._transport.put_file(path, sio,
1830
 
            mode=self._control_files._file_mode)
 
1836
            mode=self.bzrdir._get_file_mode())
1831
1837
 
1832
1838
    def _create_basis_xml_from_inventory(self, revision_id, inventory):
1833
1839
        """Create the text that will be saved in basis-inventory"""
2623
2629
            return False
2624
2630
        else:
2625
2631
            self._transport.put_bytes('last-revision', revision_id,
2626
 
                mode=self._control_files._file_mode)
 
2632
                mode=self.bzrdir._get_file_mode())
2627
2633
            return True
2628
2634
 
2629
2635
    @needs_tree_write_lock
2904
2910
        control_files.create_lock()
2905
2911
        control_files.lock_write()
2906
2912
        transport.put_bytes('format', self.get_format_string(),
2907
 
            mode=control_files._file_mode)
 
2913
            mode=a_bzrdir._get_file_mode())
2908
2914
        if from_branch is not None:
2909
2915
            branch = from_branch
2910
2916
        else:
2980
2986
 
2981
2987
__default_format = WorkingTreeFormat4()
2982
2988
WorkingTreeFormat.register_format(__default_format)
 
2989
WorkingTreeFormat.register_format(WorkingTreeFormat6())
2983
2990
WorkingTreeFormat.register_format(WorkingTreeFormat5())
2984
2991
WorkingTreeFormat.register_format(WorkingTreeFormat3())
2985
2992
WorkingTreeFormat.set_default_format(__default_format)