/breezy/unstable

To get this branch, use:
bzr branch https://code.breezy-vcs.org/breezy/unstable

« back to all changes in this revision

Viewing changes to breezy/ignores.py

  • Committer: Jelmer Vernooij
  • Date: 2017-05-24 01:39:33 UTC
  • mfrom: (3815.3776.6)
  • Revision ID: jelmer@jelmer.uk-20170524013933-ir4y4tqtrsiz2ka2
New upstream snapshot.

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
 
21
21
import errno
22
22
import os
23
 
from cStringIO import StringIO
24
23
 
25
 
import bzrlib
26
 
from bzrlib.lazy_import import lazy_import
 
24
import breezy
 
25
from .lazy_import import lazy_import
27
26
lazy_import(globals(), """
28
 
from bzrlib import (
 
27
from breezy import (
29
28
    atomicfile,
30
29
    config,
31
30
    globbing,
32
31
    trace,
33
32
    )
34
33
""")
 
34
from breezy.sixish import (
 
35
    BytesIO,
 
36
    )
35
37
 
36
38
# ~/.bazaar/ignore will be filled out using
37
39
# this ignore list, if it does not exist
92
94
    patterns = set(USER_DEFAULTS)
93
95
    try:
94
96
        f = open(path, 'rb')
95
 
    except (IOError, OSError), e:
 
97
    except (IOError, OSError) as e:
96
98
        # open() shouldn't return an IOError without errno, but just in case
97
99
        err = getattr(e, 'errno', None)
98
100
        if err not in (errno.ENOENT,):
102
104
        # since get_* should be a safe operation
103
105
        try:
104
106
            _set_user_ignores(USER_DEFAULTS)
105
 
        except (IOError, OSError), e:
 
107
        except (IOError, OSError) as e:
106
108
            if e.errno not in (errno.EPERM,):
107
109
                raise
108
110
        return patterns
120
122
    write to the user ignore file.
121
123
    This is mostly used for testing, since it would be
122
124
    bad form to rewrite a user's ignore list.
123
 
    bzrlib only writes this file if it does not exist.
 
125
    breezy only writes this file if it does not exist.
124
126
    """
125
127
    ignore_path = config.user_ignore_config_filename()
126
128
    config.ensure_config_dir_exists()
194
196
    :return: None
195
197
    """
196
198
    # read in the existing ignores set
197
 
    ifn = tree.abspath(bzrlib.IGNORE_FILENAME)
 
199
    ifn = tree.abspath(breezy.IGNORE_FILENAME)
198
200
    if tree.has_filename(ifn):
199
201
        f = open(ifn, 'rU')
200
202
        try:
201
203
            file_contents = f.read()
202
204
            # figure out what kind of line endings are used
203
205
            newline = getattr(f, 'newlines', None)
204
 
            if type(newline) is tuple:
 
206
            if isinstance(newline, tuple):
205
207
                newline = newline[0]
206
208
            elif newline is None:
207
209
                newline = os.linesep
211
213
        file_contents = ""
212
214
        newline = os.linesep
213
215
    
214
 
    sio = StringIO(file_contents)
 
216
    sio = BytesIO(file_contents)
215
217
    try:
216
218
        ignores = parse_ignore_file(sio)
217
219
    finally:
232
234
    finally:
233
235
        f.close()
234
236
 
235
 
    if not tree.path2id(bzrlib.IGNORE_FILENAME):
236
 
        tree.add([bzrlib.IGNORE_FILENAME])
 
237
    if not tree.path2id(breezy.IGNORE_FILENAME):
 
238
        tree.add([breezy.IGNORE_FILENAME])