| 1 |
*1.1.1* (11 July, 2005) |
|---|
| 2 |
|
|---|
| 3 |
* Added more efficient implementation of the development mode reset of classes #1638 [Chris McGrath] |
|---|
| 4 |
|
|---|
| 5 |
|
|---|
| 6 |
*1.1.0* (6 July, 2005) |
|---|
| 7 |
|
|---|
| 8 |
* Fixed conflict with Glue gem #1606 [Rick Olson] |
|---|
| 9 |
|
|---|
| 10 |
* Added new rules to the Inflector to deal with more unusual plurals mouse/louse => mice/lice, information => information, ox => oxen, virus => viri, archive => archives #1571, #1583, #1490, #1599, #1608 [foamdino@gmail.com/others] |
|---|
| 11 |
|
|---|
| 12 |
* Fixed memory leak with Object#remove_subclasses_of, which inflicted a Rails application running in development mode with a ~20KB leak per request #1289 [c.r.mcgrath@gmail.com] |
|---|
| 13 |
|
|---|
| 14 |
* Made 1.year == 365.25.days to account for leap years. This allows you to do User.find(:all, :conditions => ['birthday > ?', 50.years.ago]) without losing a lot of days. #1488 [tuxie@dekadance.se] |
|---|
| 15 |
|
|---|
| 16 |
* Added an exception if calling id on nil to WhinyNil #584 [kevin-temp@writesoon.com] |
|---|
| 17 |
|
|---|
| 18 |
* Added Fix/Bignum#multiple_of? which returns true on 14.multiple_of?(7) and false on 16.multiple_of?(7) #1464 [Thomas Fuchs] |
|---|
| 19 |
|
|---|
| 20 |
* Added even? and odd? to work with Bignums in addition to Fixnums #1464 [Thomas Fuchs] |
|---|
| 21 |
|
|---|
| 22 |
* Fixed Time#at_beginning_of_week returned the next Monday instead of the previous one when called on a Sunday #1403 [jean.helou@gmail.com] |
|---|
| 23 |
|
|---|
| 24 |
* Increased the speed of indifferent hash access by using Hash#default. #1436 [Nicholas Seckar] |
|---|
| 25 |
|
|---|
| 26 |
* Added that " " is now also blank? (using strip if available) |
|---|
| 27 |
|
|---|
| 28 |
* Fixed Dependencies so all modules are able to load missing constants #1173 [Nicholas Seckar] |
|---|
| 29 |
|
|---|
| 30 |
* Fixed the Inflector to underscore strings containing numbers, so Area51Controller becomes area51_controller #1176 [Nicholas Seckar] |
|---|
| 31 |
|
|---|
| 32 |
* Fixed that HashWithIndifferentAccess stringified all keys including symbols, ints, objects, and arrays #1162 [Nicholas Seckar] |
|---|
| 33 |
|
|---|
| 34 |
* Fixed Time#last_year to go back in time, not forward #1278 [fabien@odilat.com] |
|---|
| 35 |
|
|---|
| 36 |
* Fixed the pluralization of analysis to analyses #1295 [seattle@rootimage.msu.edu] |
|---|
| 37 |
|
|---|
| 38 |
* Fixed that Time.local(2005,12).months_since(1) would raise "ArgumentError: argument out of range" #1311 [jhahn@niveon.com] |
|---|
| 39 |
|
|---|
| 40 |
* Added silencing to the default Logger class |
|---|
| 41 |
|
|---|
| 42 |
|
|---|
| 43 |
*1.0.4* (19th April, 2005) |
|---|
| 44 |
|
|---|
| 45 |
* Fixed that in some circumstances controllers outside of modules may have hidden ones inside modules. For example, admin/content might have been hidden by /content. #1075 [Nicholas Seckar] |
|---|
| 46 |
|
|---|
| 47 |
* Fixed inflection of perspectives and similar words #1045 [thijs@vandervossen.net] |
|---|
| 48 |
|
|---|
| 49 |
* Added Fixnum#even? and Fixnum#odd? |
|---|
| 50 |
|
|---|
| 51 |
* Fixed problem with classes being required twice. Object#const_missing now uses require_dependency to load files. It used to use require_or_load which would cause models to be loaded twice, which was not good for validations and other class methods #971 [Nicholas Seckar] |
|---|
| 52 |
|
|---|
| 53 |
|
|---|
| 54 |
*1.0.3* (27th March, 2005) |
|---|
| 55 |
|
|---|
| 56 |
* Fixed Inflector.pluralize to handle capitalized words #932 [Jeremy Kemper] |
|---|
| 57 |
|
|---|
| 58 |
* Added Object#suppress which allows you to make a saner choice around with exceptions to swallow #980. Example: |
|---|
| 59 |
|
|---|
| 60 |
suppress(ZeroDivisionError) { 1/0 } |
|---|
| 61 |
|
|---|
| 62 |
...instead of: |
|---|
| 63 |
|
|---|
| 64 |
1/0 rescue nil # BAD, EVIL, DIRTY. |
|---|
| 65 |
|
|---|
| 66 |
|
|---|
| 67 |
*1.0.2* (22th March, 2005) |
|---|
| 68 |
|
|---|
| 69 |
* Added Kernel#returning -- a Ruby-ized realization of the K combinator, courtesy of Mikael Brockman. |
|---|
| 70 |
|
|---|
| 71 |
def foo |
|---|
| 72 |
returning values = [] do |
|---|
| 73 |
values << 'bar' |
|---|
| 74 |
values << 'baz' |
|---|
| 75 |
end |
|---|
| 76 |
end |
|---|
| 77 |
|
|---|
| 78 |
foo # => ['bar', 'baz'] |
|---|
| 79 |
|
|---|
| 80 |
|
|---|
| 81 |
*1.0.1* (7th March, 2005) |
|---|
| 82 |
|
|---|
| 83 |
* Fixed Hash#indifferent_access to also deal with include? and fetch and nested hashes #726 [Nicholas Seckar] |
|---|
| 84 |
|
|---|
| 85 |
* Added Object#blank? -- see http://redhanded.hobix.com/inspect/objectBlank.html #783 [_why the lucky stiff] |
|---|
| 86 |
|
|---|
| 87 |
* Added inflection rules for "sh" words, like "wish" and "fish" #755 [phillip@pjbsoftware.com] |
|---|
| 88 |
|
|---|
| 89 |
* Fixed an exception when using Ajax based requests from Safari because Safari appends a \000 to the post body. Symbols can't have \000 in them so indifferent access would throw an exception in the constructor. Indifferent hashes now use strings internally instead. #746 [Tobias Luetke] |
|---|
| 90 |
|
|---|
| 91 |
* Added String#to_time and String#to_date for wrapping ParseDate |
|---|
| 92 |
|
|---|
| 93 |
|
|---|
| 94 |
*1.0.0* (24th February, 2005) |
|---|
| 95 |
|
|---|
| 96 |
* Added TimeZone as the first of a number of value objects that among others Active Record can use rich value objects using composed_of #688 [Jamis Buck] |
|---|
| 97 |
|
|---|
| 98 |
* Added Date::Conversions for getting dates in different convenient string representations and other objects |
|---|
| 99 |
|
|---|
| 100 |
* Added Time::Conversions for getting times in different convenient string representations and other objects |
|---|
| 101 |
|
|---|
| 102 |
* Added Time::Calculations to ask for things like Time.now.tomorrow, Time.now.yesterday, Time.now.months_ago(4) #580 [DP|Flurin]. Examples: |
|---|
| 103 |
|
|---|
| 104 |
"Later today" => now.in(3.hours), |
|---|
| 105 |
"Tomorrow morning" => now.tomorrow.change(:hour => 9), |
|---|
| 106 |
"Tomorrow afternoon" => now.tomorrow.change(:hour => 14), |
|---|
| 107 |
"In a couple of days" => now.tomorrow.tomorrow.change(:hour => 9), |
|---|
| 108 |
"Next monday" => now.next_week.change(:hour => 9), |
|---|
| 109 |
"In a month" => now.next_month.change(:hour => 9), |
|---|
| 110 |
"In 6 months" => now.months_since(6).change(:hour => 9), |
|---|
| 111 |
"In a year" => now.in(1.year).change(:hour => 9) |
|---|
| 112 |
|
|---|
| 113 |
* Upgraded to breakpoint 92 which fixes: |
|---|
| 114 |
|
|---|
| 115 |
* overload IRB.parse_opts(), fixes #443 |
|---|
| 116 |
=> breakpoints in tests work even when running them via rake |
|---|
| 117 |
* untaint handlers, might fix an issue discussed on the Rails ML |
|---|
| 118 |
* added verbose mode to breakpoint_client |
|---|
| 119 |
* less noise caused by breakpoint_client by default |
|---|
| 120 |
* ignored TerminateLineInput exception in signal handler |
|---|
| 121 |
=> quiet exit on Ctrl-C |
|---|
| 122 |
|
|---|
| 123 |
* Fixed Inflector for words like "news" and "series" that are the same in plural and singular #603 [echion], #615 [marcenuc] |
|---|
| 124 |
|
|---|
| 125 |
* Added Hash#stringify_keys and Hash#stringify_keys! |
|---|
| 126 |
|
|---|
| 127 |
* Added IndifferentAccess as a way to wrap a hash by a symbol-based store that also can be accessed by string keys |
|---|
| 128 |
|
|---|
| 129 |
* Added Inflector.constantize to turn "Admin::User" into a reference for the constant Admin::User |
|---|
| 130 |
|
|---|
| 131 |
* Added that Inflector.camelize and Inflector.underscore can deal with modules like turning "Admin::User" into "admin/user" and back |
|---|
| 132 |
|
|---|
| 133 |
* Added Inflector.humanize to turn attribute names like employee_salary into "Employee salary". Used by automated error reporting in AR. |
|---|
| 134 |
|
|---|
| 135 |
* Added availability of class inheritable attributes to the masses #477 [Jeremy Kemper] |
|---|
| 136 |
|
|---|
| 137 |
class Foo |
|---|
| 138 |
class_inheritable_reader :read_me |
|---|
| 139 |
class_inheritable_writer :write_me |
|---|
| 140 |
class_inheritable_accessor :read_and_write_me |
|---|
| 141 |
class_inheritable_array :read_and_concat_me |
|---|
| 142 |
class_inheritable_hash :read_and_update_me |
|---|
| 143 |
end |
|---|
| 144 |
|
|---|
| 145 |
# Bar gets a clone of (not a reference to) Foo's attributes. |
|---|
| 146 |
class Bar < Foo |
|---|
| 147 |
end |
|---|
| 148 |
|
|---|
| 149 |
Bar.read_and_write_me == Foo.read_and_write_me |
|---|
| 150 |
Bar.read_and_write_me = 'bar' |
|---|
| 151 |
Bar.read_and_write_me != Foo.read_and_write_me |
|---|
| 152 |
|
|---|
| 153 |
* Added Inflections as an extension on String, so Inflector.pluralize(Inflector.classify(name)) becomes name.classify.pluralize #476 [Jeremy Kemper] |
|---|
| 154 |
|
|---|
| 155 |
* Added Byte operations to Numeric, so 5.5.megabytes + 200.kilobytes #461 [Marcel Molina] |
|---|
| 156 |
|
|---|
| 157 |
* Fixed that Dependencies.reload can't load the same file twice #420 [Kent Sibilev] |
|---|
| 158 |
|
|---|
| 159 |
* Added Fixnum#ago/until, Fixnum#since/from_now #450 [Jeremy Kemper] |
|---|
| 160 |
|
|---|
| 161 |
* Added that Inflector now accepts Symbols and Classes by calling .to_s on the word supplied |
|---|
| 162 |
|
|---|
| 163 |
* Added time unit extensions to Fixnum that'll return the period in seconds, like 2.days + 4.hours. |
|---|