Rev 4278: fix loading of eol content filters (Ian Clatworthy) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Thu Apr 9 12:59:36 BST 2009


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 4278
revision-id: pqm at pqm.ubuntu.com-20090409115932-hpwxr62t6lrsb6k5
parent: pqm at pqm.ubuntu.com-20090409074647-c3craithy1i8vndv
parent: ian.clatworthy at canonical.com-20090409103627-f2lyhxtvgfe6ry0t
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2009-04-09 12:59:32 +0100
message:
  fix loading of eol content filters (Ian Clatworthy)
modified:
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/filters/__init__.py     __init__.py-20080416080515-mkxl29amuwrf6uir-2
  bzrlib/filters/eol.py          eol.py-20090327060429-todzdjmqt3bpv5r8-1
    ------------------------------------------------------------
    revno: 4277.1.1
    revision-id: ian.clatworthy at canonical.com-20090409103627-f2lyhxtvgfe6ry0t
    parent: pqm at pqm.ubuntu.com-20090409074647-c3craithy1i8vndv
    parent: ian.clatworthy at canonical.com-20090409010814-b8h12m16j91b14nw
    committer: Ian Clatworthy <ian.clatworthy at canonical.com>
    branch nick: ianc-integration
    timestamp: Thu 2009-04-09 20:36:27 +1000
    message:
      fix loading of eol content filters (Ian Clatworthy)
    modified:
      NEWS                           NEWS-20050323055033-4e00b5db738777ff
      bzrlib/filters/__init__.py     __init__.py-20080416080515-mkxl29amuwrf6uir-2
      bzrlib/filters/eol.py          eol.py-20090327060429-todzdjmqt3bpv5r8-1
    ------------------------------------------------------------
    revno: 4275.1.1
    revision-id: ian.clatworthy at canonical.com-20090409010814-b8h12m16j91b14nw
    parent: pqm at pqm.ubuntu.com-20090408225022-exxekai8bxhxrayk
    committer: Ian Clatworthy <ian.clatworthy at canonical.com>
    branch nick: bzr.eol-loading
    timestamp: Thu 2009-04-09 11:08:14 +1000
    message:
      fix eol content filter loading
    modified:
      bzrlib/filters/__init__.py     __init__.py-20080416080515-mkxl29amuwrf6uir-2
      bzrlib/filters/eol.py          eol.py-20090327060429-todzdjmqt3bpv5r8-1
=== modified file 'NEWS'
--- a/NEWS	2009-04-09 06:57:22 +0000
+++ b/NEWS	2009-04-09 10:36:27 +0000
@@ -31,6 +31,9 @@
 Bug Fixes
 *********
 
+* End-Of-Line content filters are now loaded correctly.
+  (Ian Clatworthy, Brian de Alwis, #355280)
+
 * Non-recursive ``bzr ls`` now works properly when a path is specified.
   (Jelmer Vernooij, #357863)
 

=== modified file 'bzrlib/filters/__init__.py'
--- a/bzrlib/filters/__init__.py	2009-04-08 03:34:31 +0000
+++ b/bzrlib/filters/__init__.py	2009-04-09 01:08:14 +0000
@@ -279,3 +279,8 @@
         _filter_stacks_registry = value
     _stack_cache.clear()
     return original
+
+
+# Register the standard filters
+from bzrlib.filters import eol
+eol.register_eol_content_filter()

=== modified file 'bzrlib/filters/eol.py'
--- a/bzrlib/filters/eol.py	2009-04-08 03:34:31 +0000
+++ b/bzrlib/filters/eol.py	2009-04-09 01:08:14 +0000
@@ -22,8 +22,6 @@
 
 import re, sys
 
-from bzrlib import filters
-
 
 # Real Linux/Unix/OSX newline - \n without \r before it
 _LINUX_NL_RE = re.compile(r'(?<!\r)\n')
@@ -47,27 +45,26 @@
         return [_LINUX_NL_RE.sub('\r\n', content)]
 
 
-# Define and register the EOL filter stacks
-if sys.platform == 'win32':
-    _native_output = _to_crlf_converter
-else:
-    _native_output = _to_lf_converter
-_eol_filter_stack_map = {
-    'exact': [],
-    'native': [filters.ContentFilter(_to_lf_converter, _native_output)],
-    'lf':     [filters.ContentFilter(_to_lf_converter, _to_lf_converter)],
-    'crlf':   [filters.ContentFilter(_to_lf_converter, _to_crlf_converter)],
-    'native-with-crlf-in-repo':
-        [filters.ContentFilter(_to_crlf_converter, _native_output)],
-    'lf-with-crlf-in-repo':
-        [filters.ContentFilter(_to_crlf_converter, _to_lf_converter)],
-    'crlf-with-crlf-in-repo':
-        [filters.ContentFilter(_to_crlf_converter, _to_crlf_converter)],
-    }
-
-
-def _eol_filter_stack_map_lookup(key):
-    return _eol_filter_stack_map.get(key)
-
-
-filters.register_filter_stack_map('eol', _eol_filter_stack_map_lookup)
+# Register the eol content filter.
+def register_eol_content_filter():
+    from bzrlib.filters import ContentFilter, register_filter_stack_map
+ 
+    if sys.platform == 'win32':
+        _native_output = _to_crlf_converter
+    else:
+        _native_output = _to_lf_converter
+    _eol_filter_stack_map = {
+        'exact': [],
+        'native': [ContentFilter(_to_lf_converter, _native_output)],
+        'lf':     [ContentFilter(_to_lf_converter, _to_lf_converter)],
+        'crlf':   [ContentFilter(_to_lf_converter, _to_crlf_converter)],
+        'native-with-crlf-in-repo':
+            [ContentFilter(_to_crlf_converter, _native_output)],
+        'lf-with-crlf-in-repo':
+            [ContentFilter(_to_crlf_converter, _to_lf_converter)],
+        'crlf-with-crlf-in-repo':
+            [ContentFilter(_to_crlf_converter, _to_crlf_converter)],
+        }
+    def eol_lookup(key):
+        return _eol_filter_stack_map.get(key)
+    register_filter_stack_map('eol', eol_lookup)




More information about the bazaar-commits mailing list