mime-types

Description

The mime-types library provides a library and registry for information
about MIME content type definitions. It can be used to determine defined
filename extensions for MIME types, or to use filename extensions to look
up the likely 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 MIME
entities (provided as an enumerable collection of MIME::Type objects) to be
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 sources for MIME type definitions found in mime-types is the IANA
collection of registrations (see below for the link), RFCs, and W3C
recommendations.

The mime-types library uses semantic versioning. This is release 2.0; there
are incompatible changes in the API provided by mime-types, mostly around
registry initialization (see History.rdoc for full details), and the
removal of support for Ruby 1.8 interpreters.

mime-types (previously called MIME::Types for Ruby) was originally based on
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 (ftp) with some
unofficial types added from the LTSW collection and
added by the users of mime-types.

Synopsis

MIME types are used in MIME entities, as in email or HTTP traffic. It is
useful at times to have information available about MIME types (or,
inversely, about files). A MIME::Type stores the known information about
one MIME type.