-
-
Notifications
You must be signed in to change notification settings - Fork 122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Investigate the use of a value pool to reduce object creation #64
Comments
== 2.6.1 / 2015-05-25 * Bugs: * Make columnar store handle all supported extensions, not just the first. * Avoid circular require when using the columnar store. == 2.6 / 2015-05-25 * New Feature: * Columnar data storage for the MIME::Types registry, contributed by Jeremy Evans (@jeremyevans). Reduces default memory use substantially (the mail gem drops from 19 Mib to about 3 Mib). Resolves {#96}[mime-types/ruby-mime-types#96], {#94}[mime-types/ruby-mime-types#94], {#83}[mime-types/ruby-mime-types#83]. Partially addresses {#64}[mime-types/ruby-mime-types#64] and {#62}[mime-types/ruby-mime-types#62]. * Development: * Removed caching of deprecation messages in preparation for mime-types 3.0. Now, deprecated methods will always warn their deprecation instead of only warning once. * Added a logger for deprecation messages. * Renamed <tt>lib/mime.rb</tt> to <tt>lib/mime/deprecations.rb</tt> to not conflict with the {mime}[https://rubygems.org/gems/mime] gem on behalf of the maintainers of the {Praxis Framework}[http://praxis-framework.io/]. Provided by Josep M. Blanquer (@blanquer), {#100}[mime-types/ruby-mime-types#100]. * Added the columnar data conversion tool, also provided by Jeremy Evans. * Documentation: * Improved documentation and ensured that all deprecated methods are marked as such in the documentation. * Development: * Added more Ruby variants to Travis CI. * Silenced deprecation messages for internal tools. Noisy deprecations are noisy, but that's the point. == 2.5 / 2015-04-25 * Bugs: * David Genord (@albus522) fixed a bug in loading MIME::types cache where a container loaded from cache did not have the expected +default_proc+, {#86}[mime-types/ruby-mime-types#86]. * Richard Schneeman (@schneems) provided a patch that substantially reduces unnecessary allocations. * Documentation: * Tibor Szolár (@flexik) fixed a typo in the README, {#82}[mime-types/ruby-mime-types#82] * Fixed {#80}[mime-types/ruby-mime-types#80], clarifying the relationship of MIME::Type#content_type and MIME::Type#simplified, with Ken Ip (@kenips). * Development: * Juanito Fatas (@JuanitoFatas) enabled container mode on Travis CI, {#87}[mime-types/ruby-mime-types#87]. * Moved development to a mime-types organization under {mime-types/ruby-mime-types}[https://github.com/mime-types/ruby-mime-types].
I’ve brought the changes in on a branch that will be pushed after 3.0 is released—initial benchmarking looks reasonable, but there’s a lot more allocations in exchange for a lot fewer objects (about 8k fewer objects in both full and columnar cases, which is fairly significant).
In the full ( |
Based on work by Charlie Somerville (@charliesome); found at SamSaffron@ca0bce0 and SamSaffron@6b34ec6.
The text was updated successfully, but these errors were encountered: