~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/__init__.py

  • Committer: wang
  • Date: 2006-10-29 13:41:32 UTC
  • mto: (2104.4.1 wang_65714)
  • mto: This revision was merged to the branch mainline in revision 2109.
  • Revision ID: wang@ubuntu-20061029134132-3d7f4216f20c4aef
Replace python's difflib by patiencediff because the worst case 
performance is cubic for difflib and people commiting large data 
files are often hurt by this. The worst case performance of patience is 
quadratic. Fix bug 65714.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright (C) 2005, 2006 Canonical Development Ltd
2
 
 
 
1
# Copyright (C) 2005, 2006 Canonical Ltd
 
2
#
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
5
5
# the Free Software Foundation; either version 2 of the License, or
6
6
# (at your option) any later version.
7
 
 
 
7
#
8
8
# This program is distributed in the hope that it will be useful,
9
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
11
# GNU General Public License for more details.
12
 
 
 
12
#
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
17
17
"""bzr library"""
18
18
 
 
19
from bzrlib.osutils import get_user_encoding
 
20
 
19
21
 
20
22
IGNORE_FILENAME = ".bzrignore"
21
23
 
22
 
import os
23
 
import sys
24
 
if sys.platform == 'darwin':
25
 
    # work around egregious python 2.4 bug
26
 
    sys.platform = 'posix'
27
 
    import locale
28
 
    sys.platform = 'darwin'
29
 
else:
30
 
    import locale
31
 
# XXX: This probably belongs in osutils instead
32
 
user_encoding = locale.getpreferredencoding() or 'ascii'
33
 
del locale
34
 
 
35
 
__copyright__ = "Copyright 2005, 2006 Canonical Development Ltd."
 
24
 
 
25
# XXX: Compatibility. This should probably be deprecated
 
26
user_encoding = get_user_encoding()
 
27
 
 
28
 
 
29
__copyright__ = "Copyright 2005, 2006 Canonical Ltd."
36
30
 
37
31
# same format as sys.version_info: "A tuple containing the five components of
38
32
# the version number: major, minor, micro, releaselevel, and serial. All
41
35
# Python version 2.0 is (2, 0, 0, 'final', 0)."  Additionally we use a
42
36
# releaselevel of 'dev' for unreleased under-development code.
43
37
 
44
 
version_info = (0, 10, 0, 'dev', 0)
 
38
version_info = (0, 13, 0, 'dev', 0)
45
39
 
46
40
if version_info[3] == 'final':
47
41
    version_string = '%d.%d.%d' % version_info[:3]
60
54
                    'Consider using bzrlib.ignores.add_unique_user_ignores'
61
55
                    ' or bzrlib.ignores.add_runtime_ignores')
62
56
 
63
 
 
64
 
@deprecated_function(zero_seven)
65
 
def get_bzr_revision():
66
 
    """If bzr is run from a branch, return (revno,revid) or None."""
67
 
    import bzrlib.errors
68
 
    from bzrlib.branch import Branch
69
 
    
70
 
    try:
71
 
        branch = Branch.open(os.path.dirname(__path__[0]))
72
 
        rh = branch.revision_history()
73
 
        if rh:
74
 
            return len(rh), rh[-1]
75
 
        else:
76
 
            return None
77
 
    except bzrlib.errors.BzrError:
78
 
        return None
79
 
    
80
57
def test_suite():
81
58
    import tests
82
59
    return tests.test_suite()