~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/workingtree.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2007-10-08 08:12:00 UTC
  • mfrom: (2858.2.5 remove-checks)
  • Revision ID: pqm@pqm.ubuntu.com-20071008081200-04a0byt5lo5tyft9
Remove old calls to safe_file_id and safe_revision_id (mbp)

Show diffs side-by-side

added added

removed removed

Lines of Context:
453
453
 
454
454
    def get_file(self, file_id, path=None):
455
455
        if path is None:
456
 
            file_id = osutils.safe_file_id(file_id)
457
456
            path = self.id2path(file_id)
458
457
        return self.get_file_byname(path)
459
458
 
460
459
    def get_file_text(self, file_id):
461
 
        file_id = osutils.safe_file_id(file_id)
462
460
        return self.get_file(file_id).read()
463
461
 
464
462
    def get_file_byname(self, filename):
475
473
        incorrectly attributed to CURRENT_REVISION (but after committing, the
476
474
        attribution will be correct).
477
475
        """
478
 
        file_id = osutils.safe_file_id(file_id)
479
476
        basis = self.basis_tree()
480
477
        basis.lock_read()
481
478
        try:
526
523
            pass
527
524
        else:
528
525
            for l in merges_file.readlines():
529
 
                revision_id = osutils.safe_revision_id(l.rstrip('\n'))
 
526
                revision_id = l.rstrip('\n')
530
527
                parents.append(revision_id)
531
528
        return parents
532
529
 
537
534
        
538
535
    def _get_store_filename(self, file_id):
539
536
        ## XXX: badly named; this is not in the store at all
540
 
        file_id = osutils.safe_file_id(file_id)
541
537
        return self.abspath(self.id2path(file_id))
542
538
 
543
539
    @needs_read_lock
572
568
            tree.set_parent_ids([revision_id])
573
569
 
574
570
    def id2abspath(self, file_id):
575
 
        file_id = osutils.safe_file_id(file_id)
576
571
        return self.abspath(self.id2path(file_id))
577
572
 
578
573
    def has_id(self, file_id):
579
574
        # files that have been deleted are excluded
580
 
        file_id = osutils.safe_file_id(file_id)
581
575
        inv = self.inventory
582
576
        if not inv.has_id(file_id):
583
577
            return False
585
579
        return osutils.lexists(self.abspath(path))
586
580
 
587
581
    def has_or_had_id(self, file_id):
588
 
        file_id = osutils.safe_file_id(file_id)
589
582
        if file_id == self.inventory.root.file_id:
590
583
            return True
591
584
        return self.inventory.has_id(file_id)
593
586
    __contains__ = has_id
594
587
 
595
588
    def get_file_size(self, file_id):
596
 
        file_id = osutils.safe_file_id(file_id)
597
589
        return os.path.getsize(self.id2abspath(file_id))
598
590
 
599
591
    @needs_read_lock
600
592
    def get_file_sha1(self, file_id, path=None, stat_value=None):
601
 
        file_id = osutils.safe_file_id(file_id)
602
593
        if not path:
603
594
            path = self._inventory.id2path(file_id)
604
595
        return self._hashcache.get_sha1(path, stat_value)
605
596
 
606
597
    def get_file_mtime(self, file_id, path=None):
607
 
        file_id = osutils.safe_file_id(file_id)
608
598
        if not path:
609
599
            path = self.inventory.id2path(file_id)
610
600
        return os.lstat(self.abspath(path)).st_mtime
611
601
 
612
602
    if not supports_executable():
613
603
        def is_executable(self, file_id, path=None):
614
 
            file_id = osutils.safe_file_id(file_id)
615
604
            return self._inventory[file_id].executable
616
605
    else:
617
606
        def is_executable(self, file_id, path=None):
618
607
            if not path:
619
 
                file_id = osutils.safe_file_id(file_id)
620
608
                path = self.id2path(file_id)
621
609
            mode = os.lstat(self.abspath(path)).st_mode
622
610
            return bool(stat.S_ISREG(mode) and stat.S_IEXEC & mode)
634
622
            if file_id is None:
635
623
                inv.add_path(f, kind=kind)
636
624
            else:
637
 
                file_id = osutils.safe_file_id(file_id)
638
625
                inv.add_path(f, kind=kind, file_id=file_id)
639
626
            self._inventory_is_modified = True
640
627
 
778
765
        :param revision_ids: The revision_ids to set as the parent ids of this
779
766
            working tree. Any of these may be ghosts.
780
767
        """
781
 
        revision_ids = [osutils.safe_revision_id(r) for r in revision_ids]
782
768
        self._check_parents_for_ghosts(revision_ids,
783
769
            allow_leftmost_as_ghost=allow_leftmost_as_ghost)
784
770
        for revision_id in revision_ids:
794
780
    @needs_tree_write_lock
795
781
    def set_parent_trees(self, parents_list, allow_leftmost_as_ghost=False):
796
782
        """See MutableTree.set_parent_trees."""
797
 
        parent_ids = [osutils.safe_revision_id(rev) for (rev, tree) in parents_list]
 
783
        parent_ids = [rev for (rev, tree) in parents_list]
798
784
        for revision_id in parent_ids:
799
785
            _mod_revision.check_not_reserved_id(revision_id)
800
786
 
870
856
            merger.check_basis(check_clean=True, require_commits=False)
871
857
            if to_revision is None:
872
858
                to_revision = _mod_revision.ensure_null(branch.last_revision())
873
 
            else:
874
 
                to_revision = osutils.safe_revision_id(to_revision)
875
859
            merger.other_rev_id = to_revision
876
860
            if _mod_revision.is_null(merger.other_rev_id):
877
861
                raise errors.NoCommits(branch)
942
926
        return file_id
943
927
 
944
928
    def get_symlink_target(self, file_id):
945
 
        file_id = osutils.safe_file_id(file_id)
946
929
        return os.readlink(self.id2abspath(file_id))
947
930
 
948
931
    @needs_write_lock
1487
1470
        :raises: NoSuchId if any fileid is not currently versioned.
1488
1471
        """
1489
1472
        for file_id in file_ids:
1490
 
            file_id = osutils.safe_file_id(file_id)
1491
1473
            if self._inventory.has_id(file_id):
1492
1474
                self._inventory.remove_recursive_id(file_id)
1493
1475
            else:
1575
1557
    @needs_write_lock
1576
1558
    def put_file_bytes_non_atomic(self, file_id, bytes):
1577
1559
        """See MutableTree.put_file_bytes_non_atomic."""
1578
 
        file_id = osutils.safe_file_id(file_id)
1579
1560
        stream = file(self.id2abspath(file_id), 'wb')
1580
1561
        try:
1581
1562
            stream.write(bytes)
1760
1741
    @needs_tree_write_lock
1761
1742
    def set_last_revision(self, new_revision):
1762
1743
        """Change the last revision in the working tree."""
1763
 
        new_revision = osutils.safe_revision_id(new_revision)
1764
1744
        if self._change_last_revision(new_revision):
1765
1745
            self._cache_basis_inventory(new_revision)
1766
1746
 
1789
1769
 
1790
1770
    def _create_basis_xml_from_inventory(self, revision_id, inventory):
1791
1771
        """Create the text that will be saved in basis-inventory"""
1792
 
        # TODO: jam 20070209 This should be redundant, as the revision_id
1793
 
        #       as all callers should have already converted the revision_id to
1794
 
        #       utf8
1795
 
        inventory.revision_id = osutils.safe_revision_id(revision_id)
 
1772
        inventory.revision_id = revision_id
1796
1773
        return xml7.serializer_v7.write_inventory_to_string(inventory)
1797
1774
 
1798
1775
    def _cache_basis_inventory(self, new_revision):
2519
2496
    def _last_revision(self):
2520
2497
        """See Mutable.last_revision."""
2521
2498
        try:
2522
 
            return osutils.safe_revision_id(
2523
 
                        self._control_files.get('last-revision').read())
 
2499
            return self._control_files.get('last-revision').read()
2524
2500
        except errors.NoSuchFile:
2525
2501
            return _mod_revision.NULL_REVISION
2526
2502
 
2715
2691
        branch = a_bzrdir.open_branch()
2716
2692
        if revision_id is None:
2717
2693
            revision_id = _mod_revision.ensure_null(branch.last_revision())
2718
 
        else:
2719
 
            revision_id = osutils.safe_revision_id(revision_id)
2720
2694
        branch.lock_write()
2721
2695
        try:
2722
2696
            branch.generate_revision_history(revision_id)
2815
2789
        branch = a_bzrdir.open_branch()
2816
2790
        if revision_id is None:
2817
2791
            revision_id = _mod_revision.ensure_null(branch.last_revision())
2818
 
        else:
2819
 
            revision_id = osutils.safe_revision_id(revision_id)
2820
2792
        # WorkingTree3 can handle an inventory which has a unique root id.
2821
2793
        # as of bzr 0.12. However, bzr 0.11 and earlier fail to handle
2822
2794
        # those trees. And because there isn't a format bump inbetween, we