Mime-types 2.3 Released

mime-types version 2.3 has been released!

The mime-types library provides a library and registry for information
MIME content type definitions. It can be used to determine defined
extensions for MIME types, or to use filename extensions to look up the
MIME type definitions.

MIME content types are used in MIME-compliant communications, as in
e-mail or
HTTP traffic, to indicate the type of content which is transmitted. The
mime-types library provides the ability for detailed information about
entities (provided as an enumerable collection of MIME::Type objects) to
determined and used programmatically. There are many types defined by
RFCs and
vendors, so the list is long but by definition incomplete; don’t
hesitate to to
add additional type definitions (see Contributing.rdoc). The primary
for MIME type definitions found in mime-types is the IANA collection of
registrations (see below for the link), RFCs, and W3C recommendations.

This is release 2.2, mostly changing how the MIME type registry is
updated from
the IANA registry (the format of which was incompatibly changed shortly
this release) and taking advantage of the extra data available from IANA
registry in the form of MIME::Type#xrefs. In addition, the {LTSW
list}[http://www.ltsw.se/knbase/internet/mime.htp] has been dropped as a
supported list.

As a reminder, mime-types 2.x is no longer compatible with Ruby 1.8 and
mime-types 1.x is only being maintained for security issues. No new MIME
or features will be added.

mime-types (previously called MIME::Types for Ruby) was originally based
MIME::Types for Perl by Mark Overmeer, copyright 2001 - 2009. It is
built to
conform to the MIME types of RFCs 2045 and 2231. It tracks the {IANA
registry}[Media Types]
with some types added by the users of mime-types.


2.3 / 2014-05-23

  • Bugs:
    • Fixed a bug in MIME::Types#type_for where type
      specifications that
      did not match a MIME::Type would be returned as +nil+ inside the
      array. This was incorrect behaviour as those values should not have
      returned, resulting in an empty array.
  • MIME Type Development Tools:
    • As always, there are bugs in the IANA registry because it’s manually
      maintained. Some robustness has been added to properly writing file
      template references where the file template reference is not a full
      type specification (e.g., ‘amr-wb+’ instead of ‘audio/amr-wb+’).
    • Both the IANA and Apache import tools were unnecessarily
      case-sensitive in
      matching against already-existing MIME types, resulting in extra
      work to
      weed out duplicates that differed only in the case of the canonical
      type. This has been fixed.