[svn] Add support for LZMA compression. Holy crap that was easy. trunk

Thu, 22 Nov 2007 22:37:40 -0500

author
brett
date
Thu, 22 Nov 2007 22:37:40 -0500
branch
trunk
changeset 34
a8f875e02c83
parent 33
3547e3124729
child 35
957b402d4b90

[svn] Add support for LZMA compression. Holy crap that was easy.

scripts/dtrx file | annotate | diff | comparison | revisions
tests/test-1.23.tar.lzma file | annotate | diff | comparison | revisions
tests/tests.yml file | annotate | diff | comparison | revisions
--- a/scripts/dtrx	Thu Nov 22 22:24:04 2007 -0500
+++ b/scripts/dtrx	Thu Nov 22 22:37:40 2007 -0500
@@ -60,6 +60,7 @@
 RECURSE_NEVER = 4
 
 mimetypes.encodings_map.setdefault('.bz2', 'bzip2')
+mimetypes.encodings_map.setdefault('.lzma', 'lzma')
 mimetypes.types_map.setdefault('.gem', 'x-ruby-gem')
 
 logger = logging.getLogger('dtrx-log')
@@ -110,7 +111,8 @@
 
 
 class BaseExtractor(object):
-    decoders = {'bzip2': 'bzcat', 'gzip': 'zcat', 'compress': 'zcat'}
+    decoders = {'bzip2': 'bzcat', 'gzip': 'zcat', 'compress': 'zcat',
+                'lzma': 'lzcat'}
 
     name_checker = DirectoryChecker
 
@@ -618,7 +620,7 @@
                     ('rpm', None, 'rpm'),
                     ('cpio', None, 'cpio'),
                     ('gem', None, 'gem'),
-                    ('compress', None, 'gz', 'bz2'),
+                    ('compress', None, 'Z', 'gz', 'bz2', 'lzma'),
                     ('7z', None, '7z')):
         for extension in mapping[2:]:
             extension_map[extension] = mapping[:2]
Binary file tests/test-1.23.tar.lzma has changed
--- a/tests/tests.yml	Thu Nov 22 22:24:04 2007 -0500
+++ b/tests/tests.yml	Thu Nov 22 22:37:40 2007 -0500
@@ -41,6 +41,11 @@
   baseline: |
     7z x $1
 
+- name: basic .lzma
+  filenames: test-1.23.tar.lzma
+  baseline: |
+    lzcat $1 | tar -x
+
 - name: .deb metadata
   filenames: test-1.23_all.deb
   options: --metadata

mercurial