Discussion:
[ANN] mime-types 3.2 Released!
Austin Ziegler
2018-08-12 16:22:24 UTC
Permalink
mime-types version 3.2 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: <{img
src="https://travis-ci.org/mime-types/ruby-mime-types.svg?branch=master"
alt="Build Status"
/}[https://travis-ci.org/mime-types/ruby-mime-types]>
* test coverage: <{img
src="https://coveralls.io/repos/mime-types/ruby-mime-types/badge.svg?branch=master&service=github"
alt="Coverage Status"
/}[https://coveralls.io/github/mime-types/ruby-mime-types?branch=master]>

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.2 / 2018-08-12

* 2 minor enhancements

* Janko Marohnić contributed a change to `MIME::Type#priority_order` that
should improve on strict sorting when dealing with MIME types that
appear to be in the same family even if strict sorting would cause an
unregistered type to be sorted first. [#132][]

* Dillon Welch contributed a change that added `frozen_string_literal:
true` to files so that modern Rubies can automatically reduce duplicate
string allocations. [#135][]

* 2 bug fixes

* Burke Libbey fixed a problem with cached data loading. [#126][]

* Resolved an issue where Enumerable#inject returns +nil+ when provided
an empty enumerable and a default value has not been provided. This is
because when Enumerable#inject isn't provided a starting value, the
first value is used as the default value. In every case where this
error was happening, the result was supposed to be an array containing
Set objects so they can be reduced to a single Set. [#117][], [#127][],
[#134][].

* Fixed an uncontrolled growth bug in MIME::Types::Container where a key
miss would create a new entry with an empty Set in the container. This
was working as designed (this particular feature was heavily used
during MIME::Type registry construction), but the design was flawed in
that it did not have any way of determining the difference between
construction and querying. This would mean that, if you have a function
in your web app that queries the MIME::Types registry by extension, the
extension registry would grow uncontrollably. [#136][]

* Deprecations:

* Lazy loading (`$RUBY_MIME_TYPES_LAZY_LOAD`) has been deprecated.

* Documentation Changes:

* Supporting files are now Markdown instead of rdoc, except for the
README.

* The history file has been modified to remove all history prior to 3.0.
This history can be found in previous commits.

* A spelling error was corrected by Edward Betts ([#129][]).

* Administrivia:

* CI configuration for more modern versions of Ruby were added by Nicolas
Leger ([#130][]), Jun Aruga ([#125][]), and Austin Ziegler. Removed
ruby-head-clang and rbx (Rubinius) from CI.

* Fixed tests which were asserting equality against nil, which will
become an error in Minitest 6.
--
Austin Ziegler • ***@gmail.com • ***@halostatue.ca
http://www.halostatue.ca/ • http://twitter.com/halostatue

Unsubscribe: <mailto:ruby-talk-***@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/o
Samuel Williams
2018-08-13 07:08:14 UTC
Permalink
That's awesome, congratulations!
Post by Austin Ziegler
mime-types version 3.2 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: <{img
src="https://travis-ci.org/mime-types/ruby-mime-types.svg?branch=master"
alt="Build Status"
/}[https://travis-ci.org/mime-types/ruby-mime-types]>
* test coverage: <{img
src="
https://coveralls.io/repos/mime-types/ruby-mime-types/badge.svg?branch=master&service=github
"
alt="Coverage Status"
/}[https://coveralls.io/github/mime-types/ruby-mime-types?branch=master]>
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.
## 3.2 / 2018-08-12
* 2 minor enhancements
* Janko Marohnić contributed a change to `MIME::Type#priority_order`
that
should improve on strict sorting when dealing with MIME types that
appear to be in the same family even if strict sorting would cause an
unregistered type to be sorted first. [#132][]
* Dillon Welch contributed a change that added
true` to files so that modern Rubies can automatically reduce duplicate
string allocations. [#135][]
* 2 bug fixes
* Burke Libbey fixed a problem with cached data loading. [#126][]
* Resolved an issue where Enumerable#inject returns +nil+ when provided
an empty enumerable and a default value has not been provided. This is
because when Enumerable#inject isn't provided a starting value, the
first value is used as the default value. In every case where this
error was happening, the result was supposed to be an array containing
Set objects so they can be reduced to a single Set. [#117][], [#127][],
[#134][].
* Fixed an uncontrolled growth bug in MIME::Types::Container where a key
miss would create a new entry with an empty Set in the container. This
was working as designed (this particular feature was heavily used
during MIME::Type registry construction), but the design was flawed in
that it did not have any way of determining the difference between
construction and querying. This would mean that, if you have a function
in your web app that queries the MIME::Types registry by extension, the
extension registry would grow uncontrollably. [#136][]
* Lazy loading (`$RUBY_MIME_TYPES_LAZY_LOAD`) has been deprecated.
* Supporting files are now Markdown instead of rdoc, except for the
README.
* The history file has been modified to remove all history prior to 3.0.
This history can be found in previous commits.
* A spelling error was corrected by Edward Betts ([#129][]).
* CI configuration for more modern versions of Ruby were added by Nicolas
Leger ([#130][]), Jun Aruga ([#125][]), and Austin Ziegler. Removed
ruby-head-clang and rbx (Rubinius) from CI.
* Fixed tests which were asserting equality against nil, which will
become an error in Minitest 6.
--
http://www.halostatue.ca/ • http://twitter.com/halostatue
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk>
Continue reading on narkive:
Loading...