[ANN] mime-types 3.0 Released

mime-types version 3.0 has been released!

* home: <https://github.com/mime-types/ruby-mime-types/>
* code: <https://github.com/mime-types/ruby-mime-types/>
* bugs: <https://github.com/mime-types/ruby-mime-types/issues>
* rdoc: <http://rdoc.info/gems/mime-types/>
* continuous integration: https://travis-ci.org/mime-types/ruby-mime-types
* test coverage: https://coveralls.io/r/mime-types/ruby-mime-types

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.

Version 3.0 is a major release that requires Ruby 2.0 compatibility and
removes
deprecated functions. The columnar registry format introduced in 2.6 has
been
made the primary format; the registry data has been extracted from this
library
and put into {mime-types-data}[https://github.com/mime-types/mime-types-data
].
Additionally, mime-types is now licensed exclusively under the MIT licence
and
there is a code of conduct in effect. There are a number of other smaller
changes described in the History file.

Changes:

## 3.0 / 2015-11-21

* 2 governance changes

  * This project and the related mime-types-data project are now exclusively
    MIT licensed. Resolves #95.

  * All projects under the mime-types organization now have a standard code
of
    conduct adapted from the Contributor Covenant
    (http://contributor-covenant.org). This text can be found in the
    Code-of-Conduct.rdoc file.

* 3 major changes

  * All methods deprecated in mime-types 2.x have been removed.
  * mime-types now requires Ruby 2.0 compatibility or later. Resolves #97.
  * The registry data has been removed from mime-types and put into
    mime-types-data, maintained and released separately. It can be found at
    mime-types-data (https://github.com/mime-types/mime-types-data).

* 17 minor changes:

  * MIME::Type changes:

    * Changed the way that simplified types representations are creatd to
      reflect the fact that +x-+ prefixes are no longer considered special
      according to IANA. A simplified MIME type is case-folded to
lowercase. A
      new keyword parameter, +remove_x_prefix+, can be provided to remove
+x-+
      prefixes.
    * Improved initialization with an Array works so that extensions do not
      need to be wrapped in another array. This means that <tt>%w(text/yaml
      yaml yml)</tt> works in the same way that <tt>['text/yaml', %w(yaml
      yml)]</tt> did (and still does).
    * Changed +priority_compare+ to conform with attributes that no longer
      exist.
    * Changed the internal implementation of extensions to use a frozen Set.
    * When extensions are set or modified with +add_extensions+, the primary
      registry will be informed of a need to reindex extensions. Resolves
#84.
    * The preferred extension can be set explicitly. If not set, it will be
the
      first extension. If the preferred extension is not in the extension
list,
      it will be added.
    * Improved how xref URLs are generated.
    * Converted +obsolete+, +registered+ and +signature+ to attr_accessors.

  * MIME::Types changes:

    * Modified MIME::Types.new to track instances of MIME::Types so that
they
      can be told to reindex the extensions as necessary.
    * Removed +data_version+ attribute.
    * Changed #[] so that the +complete+ and +registered+ flags are keywords
      instead of a generic options parameter.
    * Extracted the class methods to a separate file.
    * Changed the container implementation to use a Set instead of an Array
to
      prevent data duplication. Resolves #79.

  * MIME::Types::Cache changes:

    * Caching is now based on the data gem version instead of the mime-types
      version.
    * Caching is compatible with columnar registry stores.

  * MIME::Types::Loader changes:

    * MIME::Types::Loader::PATH has been removed and replaced with
      MIME::Types::Data::PATH from the mime-types-data gem. The environment
      variable RUBY_MIME_TYPES_DATA is still used.
    * Support for the long-deprecated mime-types v1 format has been removed.
    * The registry is default loaded from the columnar store by default. The
      internal format of the columnar store has changed; many of the boolean
      flags are now loaded from a single file. Resolves #85.