/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/transform.py

  • Committer: John Arbash Meinel
  • Date: 2008-09-26 22:08:38 UTC
  • mfrom: (3744 +trunk)
  • mto: This revision was merged to the branch mainline in revision 3745.
  • Revision ID: john@arbash-meinel.com-20080926220838-e05btynnn08m3qf5
Merge bzr.dev, resolve NEWS

Show diffs side-by-side

added added

removed removed

Lines of Context:
41
41
    has_symlinks,
42
42
    lexists,
43
43
    pathjoin,
 
44
    sha_file,
44
45
    splitpath,
45
46
    supports_executable,
46
47
)
1500
1501
            self.__by_parent = self._transform.by_parent()
1501
1502
        return self.__by_parent
1502
1503
 
 
1504
    def _comparison_data(self, entry, path):
 
1505
        kind, size, executable, link_or_sha1 = self.path_content_summary(path)
 
1506
        if kind == 'missing':
 
1507
            kind = None
 
1508
            executable = False
 
1509
        else:
 
1510
            file_id = self._transform.final_file_id(self._path2trans_id(path))
 
1511
            executable = self.is_executable(file_id, path)
 
1512
        return kind, executable, None
 
1513
 
1503
1514
    def lock_read(self):
1504
1515
        # Perhaps in theory, this should lock the TreeTransform?
1505
1516
        pass
1645
1656
            return self._transform._tree.get_file_mtime(file_id, path)
1646
1657
        return self._stat_limbo_file(file_id).st_mtime
1647
1658
 
 
1659
    def _file_size(self, entry, stat_value):
 
1660
        return self.get_file_size(entry.file_id)
 
1661
 
1648
1662
    def get_file_size(self, file_id):
1649
1663
        """See Tree.get_file_size"""
1650
1664
        if self.kind(file_id) == 'file':
1653
1667
            return None
1654
1668
 
1655
1669
    def get_file_sha1(self, file_id, path=None, stat_value=None):
1656
 
        return self._transform._tree.get_file_sha1(file_id)
 
1670
        trans_id = self._transform.trans_id_file_id(file_id)
 
1671
        kind = self._transform._new_contents.get(trans_id)
 
1672
        if kind is None:
 
1673
            return self._transform._tree.get_file_sha1(file_id)
 
1674
        if kind == 'file':
 
1675
            fileobj = self.get_file(file_id)
 
1676
            try:
 
1677
                return sha_file(fileobj)
 
1678
            finally:
 
1679
                fileobj.close()
1657
1680
 
1658
1681
    def is_executable(self, file_id, path=None):
 
1682
        if file_id is None:
 
1683
            return False
1659
1684
        trans_id = self._transform.trans_id_file_id(file_id)
1660
1685
        try:
1661
1686
            return self._transform._new_executability[trans_id]
1703
1728
        ignored.
1704
1729
        """
1705
1730
        if from_tree is not self._transform._tree:
1706
 
            raise ValueError('from_tree must be transform source tree.')
 
1731
            return tree.InterTree(from_tree, self).iter_changes(
 
1732
                include_unchanged=include_unchanged,
 
1733
                specific_files=specific_files,
 
1734
                pb=pb,
 
1735
                extra_trees=extra_trees,
 
1736
                require_versioned=require_versioned,
 
1737
                want_unversioned=want_unversioned)
1707
1738
        if include_unchanged:
1708
1739
            raise ValueError('include_unchanged is not supported')
1709
1740
        if specific_files is not None: