summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2013-05-04 12:12:55 (GMT)
committerSerhiy Storchaka <storchaka@gmail.com>2013-05-04 12:12:55 (GMT)
commit59115aa7c9488baae1b706f077dcd84a558c0097 (patch)
treeb3340cc3e04b90d386fc96685c9f4b4064602fe5
parent9d0f772c5115217d55aef76fae33f483f2a98032 (diff)
downloadcpython-59115aa7c9488baae1b706f077dcd84a558c0097.zip
cpython-59115aa7c9488baae1b706f077dcd84a558c0097.tar.gz
cpython-59115aa7c9488baae1b706f077dcd84a558c0097.tar.bz2
Issue #16316: mimetypes now recognizes the .xz and .txz (.tar.xz) extensions.
-rw-r--r--Lib/mimetypes.py2
-rw-r--r--Lib/test/test_mimetypes.py2
-rw-r--r--Misc/NEWS2
3 files changed, 6 insertions, 0 deletions
diff --git a/Lib/mimetypes.py b/Lib/mimetypes.py
index 3f0bd0e..2872ee4 100644
--- a/Lib/mimetypes.py
+++ b/Lib/mimetypes.py
@@ -378,12 +378,14 @@ def _default_mime_types():
'.taz': '.tar.gz',
'.tz': '.tar.gz',
'.tbz2': '.tar.bz2',
+ '.txz': '.tar.xz',
}
encodings_map = {
'.gz': 'gzip',
'.Z': 'compress',
'.bz2': 'bzip2',
+ '.xz': 'xz',
}
# Before adding new types, make sure they are either registered with IANA,
diff --git a/Lib/test/test_mimetypes.py b/Lib/test/test_mimetypes.py
index 91da289..593fdb0 100644
--- a/Lib/test/test_mimetypes.py
+++ b/Lib/test/test_mimetypes.py
@@ -22,6 +22,8 @@ class MimeTypesTestCase(unittest.TestCase):
eq(self.db.guess_type("foo.tgz"), ("application/x-tar", "gzip"))
eq(self.db.guess_type("foo.tar.gz"), ("application/x-tar", "gzip"))
eq(self.db.guess_type("foo.tar.Z"), ("application/x-tar", "compress"))
+ eq(self.db.guess_type("foo.tar.bz2"), ("application/x-tar", "bzip2"))
+ eq(self.db.guess_type("foo.tar.xz"), ("application/x-tar", "xz"))
def test_data_urls(self):
eq = self.assertEqual
diff --git a/Misc/NEWS b/Misc/NEWS
index e4a92bf..554278b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -44,6 +44,8 @@ Core and Builtins
Library
-------
+- Issue #16316: mimetypes now recognizes the .xz and .txz (.tar.xz) extensions.
+
- Issue #15902: Fix imp.load_module() accepting None as a file when loading an
extension module.