Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 418 lines (273 sloc) 22.187 kb
357874c Ben Johnson * Split out merging scopes with or into a convenient method.
authored
1 == 2.3.3 released 2009-09-02
2
3 * Split out merging scopes with 'or' into a convenient method.
4
5 == 2.3.2 released 2009-08-26
1280867 Ben Johnson * Add in scope_procedure as an alias for alias_scope.
authored
6
7 * Add in scope_procedure as an alias for alias_scope.
8 * Fixed bug with not_blank condition.
9
383780b Ben Johnson Increase version in changelog
authored
10 == 2.3.1 released 2009-08-24
bedecfc Ben Johnson * Added blank and not_blank conditions.
authored
11
12 * Added blank and not_blank conditions.
d82b886 Ben Johnson * Made User.whatever_like_any("val1", "val2") consistent with User.whate...
authored
13 * Made User.whatever_like_any("val1", "val2") consistent with User.whatever_like_any(["val1", "val2"])
bedecfc Ben Johnson * Added blank and not_blank conditions.
authored
14
dfaf03a Ben Johnson Update changelog
authored
15 == 2.3.0 released 2009-08-22
24bc371 Ben Johnson Added feature for combining conditions with OR and as well as some serio...
authored
16
17 * Thanks to laserlemon for support of ranges and arrays in the equals condition.
dfaf03a Ben Johnson Update changelog
authored
18 * Added feature to combine condition with 'or'.
24bc371 Ben Johnson Added feature for combining conditions with OR and as well as some serio...
authored
19
0c52a13 Ben Johnson * Fixed bug when an associations named scope joins is a string or an arr...
authored
20 == 2.2.3 released 2009-07-31
21
22 * Fixed bug when an associations named scope joins is a string or an array of strings, the joins we add in automatically should also be a string, not a symbol.
23
b273d29 Ben Johnson * Fix bug to give priority to local columns.
authored
24 == 2.2.2 released 2009-07-31
25
26 * Fix bug to give priority to local columns.
27
ee8b5ad Ben Johnson * Use ::ActiveRecord instead of ActiveRecord to avoid a name conflict si...
authored
28 == 2.2.1 released 2009-07-30
29
30 * Use ::ActiveRecord instead of ActiveRecord to avoid a name conflict since ActiveRecord is a module within Searchlogic.
31
74d5631 Ben Johnson * Refactored association code to be much simpler and rely on recursion. ...
authored
32 == 2.2.0 released 2009-07-30
33
34 * Refactored association code to be much simpler and rely on recursion. This allows the underlying class to do most of the work. This also allows calling any named scopes through any level of associations.
35
c3df640 Ben Johnson Update changelog
authored
36 == 2.1.13 released 2009-07-29
64053d5 Ben Johnson * Applied bug fix from http://github.com/skanev/searchlogic to make #ord...
authored
37
38 * Applied bug fix from http://github.com/skanev/searchlogic to make #order work with association ordering.
c3df640 Ben Johnson Update changelog
authored
39 * Applied bug fix to allow for custom ordering conditions.
64053d5 Ben Johnson * Applied bug fix from http://github.com/skanev/searchlogic to make #ord...
authored
40
256dfa8 Ben Johnson * Fixed bug when dealing with scopes that return nil.
authored
41 == 2.1.12 released 2009-07-28
42
43 * Fixed bug when dealing with scopes that return nil.
44
572981a Ben Johnson * Reworked how alias conditions are created on the fly, uses scope(:find...
authored
45 == 2.1.11 released 2009-07-28
46
47 * Reworked how alias conditions are created on the fly, uses scope(:find) instead of proxy_options to create the scope. This allows using association alias named scopes.
48
9a2a3e5 Ben Johnson * Ignore polymorphic associations when dynamically creating conditions o...
authored
49 == 2.1.10 released 2009-07-28
50
51 * Ignore polymorphic associations when dynamically creating conditions on associations.
52
141a913 Ben Johnson Update changelog
authored
53 == 2.1.9 released 2009-07-28
a56ab14 Ben Johnson * Allow the call of foreign pre-existing named scopes instead of those g...
authored
54
55 * Fixed bug when cloning with no scope
141a913 Ben Johnson Update changelog
authored
56 * Allow the call of foreign pre-existing named scopes instead of those generated by searchlogic. Allows you to call named scopes on associations that you define yourself.
a56ab14 Ben Johnson * Allow the call of foreign pre-existing named scopes instead of those g...
authored
57
58 == 2.1.8 released 2009-07-15
452cd75 Ben Johnson * Added support for not_like, not_begin_with, not_end_with, and not_null
authored
59
60 * Added support for not_like, not_begin_with, not_end_with, and not_null
61
62 == 2.1.7 released 2009-07-14
3060eaa Ben Johnson * Add support for time zones in the Search class when type casting to Ti...
authored
63
64 * Add support for time zones in the Search class when type casting to Time objects.
65
8a11bfa Ben Johnson * Fix bug when trying to set conditions on conflicting column names with...
authored
66 == 2.1.6 released 2009-07-13
616bbb0 Ben Johnson * Check for the existence of id before undefining it.
authored
67
8a11bfa Ben Johnson * Fix bug when trying to set conditions on conflicting column names with...
authored
68 * Fix bug when trying to set conditions on conflicting column names with associations. Ex: User.has_many :orders, User.order_count_gt(10) would raise an exception because it was trying to set conditions on the count column for the orders table.
69
70 == 2.1.5 released 2009-07-12
71
72 * Check for the existence of id before undefining it, fixes bug in ruby 1.9
73
74 == 2.1.4 released 2009-07-12
75
76 * Add ActiveRecordConsistency module to help AR remove duplicate joins easier.
616bbb0 Ben Johnson * Check for the existence of id before undefining it.
authored
77
78 == 2.1.3 released 2009-07-12
a60fc65 Ben Johnson * Added a no conflic resolution for other libraries already using the "s...
authored
79
80 * Added a no conflic resolution for other libraries already using the "search" method. If you have a conflict, use "searchlogic".
ffa174a Ben Johnson * Put the hidden order field in a div, to be valid XHTML.
authored
81 * Put the hidden order field in a div, to be valid XHTML.
a60fc65 Ben Johnson * Added a no conflic resolution for other libraries already using the "s...
authored
82
16438fe Ben Johnson Small test changes
authored
83 == 2.1.2 released 2009-07-04
101d488 Ben Johnson * Undefine the id method for the Search class, so that it acts like a co...
authored
84
85 * Undefine the id method for the Search class, so that it acts like a condition.
86
a77b72d Ben Johnson Added inner_join convenience method.
authored
87 == 2.1.1 released 2009-06-28
88
89 * Added inner_join convenience method.
90
91 == 2.1.0 released 2009-06-28
47efaeb Ben Johnson * Added a delete method to the Search class to allow the deleting of con...
authored
92
93 * Added a delete method to the Search class to allow the deleting of conditions off of the object.
8906208 Ben Johnson * Add alias_scope feature, lets your create "named scopes" that represen...
authored
94 * Add alias_scope feature, lets your create "named scopes" that represent a procedure of named scopes, while at the same time telling Searchlogic it is safe to use in the Search class.
b3bf6f2 Ben Johnson * Use url_for as the default with form_for since rails does some magic t...
authored
95 * Use url_for as the default with form_for since rails does some magic to determine the url to use.
2878f5d Ben Johnson Update changelog
authored
96 * Switched to using inner joins instead of left outer joins.
47efaeb Ben Johnson * Added a delete method to the Search class to allow the deleting of con...
authored
97
98 == 2.0.1 released 2009-06-20
1cb9ecb Ben Johnson * Allow the chaining of conditions off of a search object. Ex: search.us...
authored
99
100 * Allow the chaining of conditions off of a search object. Ex: search.username_like("bjohnson").age_gt(20).all
8563a4d Ben Johnson * Split out left outer join creation into its own method, allowing you t...
authored
101 * Split out left outer join creation into its own method, allowing you to use it in your own named scopes.
58e1326 Ben Johnson * Make sure the search objects clone properly.
authored
102 * Make sure the search objects clone properly.
e8a52ec Ben Johnson * named_scope_options should return the proper options for existing name...
authored
103 * named_scope_options should return the proper options for existing named scopes with an arity greater than 0
1cb9ecb Ben Johnson * Allow the chaining of conditions off of a search object. Ex: search.us...
authored
104
c2bea31 Ben Johnson Update readme
authored
105 == 2.0.0
106
107 * Everything, completely rewritten.
108
109 == 1.6.6
110
111 * Fixed time zone issues when searching.
112
113 == 1.6.5 released 2009-04-2
114
115 * Skip all associations defined with the :finder_sql option, since conditions can not be chained to them, etc.
116 * Fixed bug when using non string values for the keywords condition.
117 * Fixed undefined methods link_options error.
118 * Return blank conditions when trying to scope blank conditions. Fixes the issue with groups that return a blank SQL string.
119 * Fixed issue with blank condition comparing boolean values to non boolean columns.
120 * Add utf-8 magic comment for ruby 1.9
121
122 == 1.6.4 released 2009-01-22
123
124 * Fixed calling attribute_condition with newer versions of rails.
125
126 == 1.6.3 released 2008-12-13
127
128 * Added in avg, count, and sum modifiers for SQLite and Postgres.
129 * Added ne for not_equal condition.
130 * Ignore :include option for calculations since we don't need it and AR throws an error for polymorphic relationships.
131 * Removed sum and count since they can not be in the WHERE statement, but must be in the HAVING statement
132 * Added in auto joins for groups so that the joins don't have to be manually specified.
133 * Use first column in column_names as the default column for calculations, since a column is required when using DISTINCT and some tables can have more than one primary key.
134 * On associations see what the first conditions "any" status is to determine if to join with "ANY" or "AND"
135
136 == 1.6.2 released 2008-12-13
137
138 * Remove duplicate joins at a lower level for a cleaner and less brittle approach.
139
140 == 1.6.1 released 2008-12-8
141
142 * Group multi faceted conditions since we allow for the mix of "and" and "or"
143 * Blank arrays are not meaningful values for conditions
144 * Add in a unique identifier for the auto-generated hidden fields so that multiple forms do no present a problem.
145
146 == 1.6.0 released 2008-12-8
147
148 * Converted all tree conditions to nested set conditions for performance reasons. A nested set data structure is now required instead of a tree
149 * Added DISTINCT to select if you are not provided a select, searching, and have joins.
150 * Included :not_like in the list of conditions to be required upon initialization.
151
152 == 1.5.10 released 2008-12-8
153
154 * Create class level conditions upon instantiation to avoid conflicts.
155
156 == 1.5.9 released 2008-12-3
157
158 * Added metaclass object extension for older version of ActiveSupport.
159 * Added average, count, and sum modifiers.
160
161 == 1.5.8 released 2008-12-3
162
163 * Removed array support for groups, arrays will set conditions, not create multiple groups. If you need to create multiple groups you will have to pass an array with multiple {:group => my_groups} hashes.
164 * Fixed issues with using name spaced models.
165 * Added support for multiparameter conditions to support date_select helpers.
166
167 == 1.5.7 released 2008-11-30
168
169 * Fixed how grouping works, you can now specify "and_group" and "or_group", just like you can with conditions.
170 * Specifying a join type will take priority. So "and_name_like" will ALWAYS join with AND, even is any = true for the search.
171
172 == 1.5.6 released 2008-11-29
173
174 * The order conditions are set is now relevant and will be reflected in the SQL. Setting a condition first will make it first in the SQL, setting a condition last will make it last in the SQL.
175 * The above allows for prefixing any condition with and_ or or_. Thus letting you create somewhat more complex queries, since the order matters.
176 * Added ability to group conditions to mimic parenthesis in raw SQL.
177 * Major clean up in the Searchlogic::Conditions name space: faster, smaller, cleaner, and modular.
178
179 == 1.5.5 released 2008-11-17
180
181 * Cleaned up class_name configuration for helpers, so that setting them to nil disables the class name
182 * Added page_links_div_wrapper and page_links_div_wrapper_class_name configuration option to add an wrapping div around page_links
183 * Added page_links_act_like_will_paginate configuration option to help with the transition from will_paginate
184
185 == 1.5.4 released 2008-11-16
186
187 * Removed subclass requirement for adding conditions in Conditions::Base
188 * Removed DISTINCT in the select clause, instead called uniq! on the results. PostgreSQL complains about DISTINCT and AR uses uniq! when using :includes, so this is the best option.
189 * Converted the return for SQLite's strftime to integer from string. This way day of month, day of year, etc works as expected.
190
191 == 1.5.3 released 2008-10-30
192
193 * Removed ilike conditions and let the like condition determine if it should use like or ilike depending on the connection adapter.
194 * Fixed bug where the keywords condition was removing foreign characters.
195 * Added configuration option for specifying your javascript library, to cut down on the javascript Searchlogic adds into the form helpers
196 * Fixed bug with "not" conditions to use sanitize method, like it should, instead of to_conditions.
197 * Only pass :distinct option for the count calculation
198 * Fixed not_nil and not_blank conditions to use boolean values configuration option.
199
200 == 1.5.2 released 2008-10-21
201
202 * Added ilike conditions
203 * Removed configatron dependency (was accidentally added)
204
205 == 1.5.1 released 2008-10-20
206
207 * Fixed bug with per_page_links
208 * Added "ordering_by" class for per_page_links
209
210 == 1.5.0 released 2008-10-20
211
212 * Merge array of conditions with or or and where it makes sense. Begins with condition does not make sense to join with and, so instead join with or.
213 * Cleaned up html validity so it will pass W3C validators
214 * Restructure configuration to be more organized and allow for more configuration options.
215 * Added more configuration options, especially for class names.
216
217 == 1.4.1 released 2008-10-15
218
219 * Extracted english text into configuration to support alternate languages. I18n support.
220 * Improved method detection in add_joins to use respond_to? with the private method option set to true
221
222 == 1.4.0 released 2008-10-15
223
224 * Fixed bug when duping or cloning to copy over instance vars instead of method values
225 * Fixed bug with older versions of ActiveRecord and creating an alias method chain on find in AssociationCollection
226 * Added modifiers: upper, lower, trim, ltrim, rtrim
227 * Added not_nil and not_blank conditions
228 * Modified conditions so that table name is a variable, this allows table name to be switched on the fly.
229 * Modified auto joins to return symbols instead of SQL. This allows AR to properly merge the joins and ultimately result in proper SQL when performing multiple complex scopes.
230 * Fixed conflicts between includes and joins, duplicate joins are not added. Includes are prioritized. This also makes ActiveRecord much more flexible. Now you can cherry pick included associations. And not have to worry about conflicting with joins.
231 * Modified ActiveRecord's default behavior to use inner joins with the :joins option. Inner joins impose limitations. When providing this as a "convenience", inner joins do not make sense. The don't allow OR conditions to be across associations, nor does it properly order when an ordering by an association attribute when that association is optional.
232
233 == 1.3.5 released 2008-10-08
234
235 * Since joins are now strings, AR doesn't know how to merge them properly. So searchlogic now checks which joins to skip over to avoid conflicts.
236
237 == 1.3.4 released 2008-10-07
238
239 * Fixed method names creation for conditions with modifiers
240 * Create local column conditions, incase there are method conflicts. Such as "id".
241 * All joins are switched to left outer joins. When search with *any* conditions, inner joins return incorrect results. Also when ordering by an association that allows for blanks, inner joins exclude the records with blank values. Only option is left outer joins.
242 * If joins is manually set with a string, treat it as SQL, just like ActiveRecord
243
244 == 1.3.3 released 2008-10-03
245
246 * Fixed modifiers being double escaped on equals condition
247 * Fixed bug when merging conditions with array substitutions
248 * Updated blank condition to check if the values is false or not
249 * Fixed type for the year modifier in the mysql adapter
250
251 == 1.3.2 released 2008-10-03
252
253 * Fixed condition to type cast all values in an array
254 * Fixed bug to properly set the type for the type cast column
255 * Fixed bug to allow conditions on local columns
256 * Apparently ActiveRecord 2.2 doesnt remove duplicates on all joins, need to enforce this for ALL versions of ActiveRecord
257 * Fixed bug when passing a symbol as the SQL type for condition return types
258 * Moved duplicate removal to only apply when searching or calculating from a search object. Anything done in a normal ActiveRecord method should remain untouched and let ActiveRecord handle it. Just like in ActiveRecord if you do a User.all search and pass some :joins, you might get duplicate records. Searchlogic should not change that behavior, unless called from a searchlogic object.
259 * Discard meaningless array values when setting a condition.
260 * Delete blank strings from mass assignments on conditions.
261
262 == 1.3.1 released 2008-10-02
263
264 * Fixed bug when requiring a connection adapter that is not present
265 * Fixes bug in "not" conditions
266
267 == 1.3.0 released 2008-10-02
268
269 * Added modifiers into the mix: hour_of_created_at_less_than = 10, etc.
270 * Changed how the Searchlogic::Conditions::Base class works. Instead of predefining all methods for all conditions upon instantiation, they are defined as needed via method_missing. Similar to
271 ActiveRecord's dynamic finders: User.find_by_name_and_email(name, email). Once the are defined they never hit method_missing again, acts like a cache.
272 * Altered how values are handled for each condition, meaningless values are ignored completely.
273 * Added in more "not" conditions: not_like, not_begin_with, not_have_keywords, etc
274
275 == 1.2.2 released 2008-09-29
276
277 * Fixed bug when reverse engineering order to order_by, assumed ASC and DESC would always be present when they are not.
278 * False is a meaningful value for some conditions, and false.blank? == true. So instead of using value.blank? to ignore conditions we use meaningless?(value), which returns false if it is false.
279 * Fixed aliases for lt, lte, gt, and gte.
280 * Fixed bug when writing conditions on associations via a hash with string keys
281 * Added Config.remove_duplicates to turn off the "automatic" removing of duplicates if desired.
282 * Updated searchlogic_state helper to insert the entire state all at once.
283 * Added CSS class "ordering" to order_by_link if the search is being ordered by that.
284
285 == 1.2.1 released 2008-09-25
286
287 * Fixed problem when determining if an order_by_link is currently being ordered. Just "stringified" both comparable values.
288 * Removed default order_by and order_as. They will ONLY have values if you specify how to order, otherwise they are nil.
289 * Removed order_as requirement. order_as is optional.
290 * Added in deep_merge methods for hash, copied over from ActiveSupport 2.1
291 * Improved order by auto joins to be based off of what order_by returns instead of setting it when setting order_by.
292 * Added priority_order_by. Useful if you want to order featured products first and then order as usual. See documentation in Searchlogic::Search::Ordering for more info.
293 * Added in base64 support for order_by and priority_order_by so that it's value is safe in the URL
294 * Added priority_order_by_link
295
296 == 1.2.0 released 2008-09-24
297
298 * Added searchlogic_params and searchlogic_url helper to use outside of the control type helpers.
299 * Added dup and clone methods that work properly for searchlogic objects
300 * Fixed bug to remove nil scope values, HABTM likes to add :limit => nil
301 * Removed unnecessary build_search methods for associations
302 * Removed support for searching with conditions only. This just made things much more complicated when you can accomplish the same thing by starting a new search and only setting conditions.
303 * Fixed bug when searching with *any* conditions to use left outer joins instead of inner joins.
304
305 == 1.1.3 released 2008-09-23
306
307 * Setting a condition to nil removes it if the condition is set to ignore blanks
308 * Setting search.conditions = "some sql" will reset ALL conditions. Alternatively search.conditions => {:first_name_contains => "Ben"} will overwrite "some sql". The same goes with search.conditions.first_name_contains = "Ben".
309 * Fixed bug with inspect
310 * Other small performance enhancements with memoized attributes
311
312 == 1.1.2 released 2008-09-22
313
314 * Fixed bug with select control types not using :search_obj to determine its select values.
315 * Added is_nil and is_blank condition types.
316 * "memoized" various attributes for performance enhancements
317 * Removed the :order option from calculation options when :order is useless and just slows down query.
318 * Switched from using :include to :joins, big performance increase
319
320 == 1.1.1 released 2008-09-19
321
322 * Fixed typo in "next page" button.
323 * Updated valid options for searching and performing calculations, fixed some bugs when searching and performing calculations with advanced options.
324 * Fixed bug in ordering where table name was assumed by the hash. Now assumed by the reflection.
325 * Added default for per_page, so pagination comes implemented by default
326 * On mass assignments blank strings for *any* conditions are ignored. Sometimes blank strings are meaningful for "equals" and "does not equal", those only takes effect if you explicitly call these conditions: search.conditions.name = "". User.new_search(:conditions => {:name => ""}) will be ignored. Also, Searchlogic should never change how ActiveRecord behaves by default. So User.all(:conditions => {:name => ""}) will NOT be ignored.
327
328 == 1.1.0 released 2008-09-18
329
330 * Added the options :inner_spread and :outer_spread to the page_links helper. Also added various config options for setting page_links defaults.
331 * Updated calculation methods to ignore :limit and :offset. AR returns 0 or nil on calculations that provide an offset.
332 * Added support to allow for "any" of the conditions, instead of all of them. Joins conditions with "or" instead of "and". See Searchlogic::Conditions::Base or the readme
333
334 == 1.0.4 released 2008-09-18
335
336 * Fixed bugs when performing calculations and searches on has_many through relationships.
337 * Instead of merging the find_options myself, I delegated that to AR's with_scope function, which already does this. Much more solid, less intrusive.
338
339 == 1.0.3 released 2008-09-18
340
341 * Updated inspect to show the current options for your search. Plays nicer in the console.
342 * Made sure protection state is persistent among relationship conditions.
343 * Fixed bug with backwards compatibility of rails. concat requires a proc in older version.
344 * Defaulted remote control types to use GET requests instead of POST.
345 * Completely reengineered integration with ActiveRecord. Searchlogic is properly using scopes letting you do use serachgasm where scope are implemented. @current_users.orders.new_search, etc. If your search is scoped and you want a search object, that search object will represent a new search in the context of those scopes, meaning the scopes get merged into Searchlogic as options.
346 * Dropped support for Searchlogic functionality when defining relationships: has_many :order, :conditions => {:total_gt => 100}, will not work anymore. It's a chicken and the egg thing. Searchlogic needs AR constants, some models get loaded before others, therefore the Order model may not have been loaded yet, causing an unknown constant error.
347 * Clean up redundant code and moved it into the Searchlogic::Shared namespace.
348
349 == 1.0.2 released 2008-09-12
350
351 * Moved cached searchers out of the global namespace and into the Searchlogic::Cache namespce.
352 * Various changes to improve performance through profiling / benchmarking. http://pastie.org/271936
353 * Config.per_page works with new_search & new_search! only. Where as before it was only working if the search was protected.
354
355 == 1.0.1 released 2008-09-11
356
357 * Cached "searchers" so when a new search object is instantiated it doesn't go through all of the meta programming and method creation. Helps a lot with performance. You will see the speed benefits after the first instantiation.
358 * Added in new options for page_links.
359 * Fixed minor bugs when doing page_links.
360 * Updated documentation to be more detailed and inclusive.
361
362 == 1.0.0 released 2008-09-08
363
364 * Major changes in the helpers, they were completely re-engineered. Hence the new version. I established a pattern between all helpers giving you complete flexibility as to how they are used. All helpers are called differently now (see documentation).
365
366 == 0.9.10 released 2008-09-08
367
368 * Fixed bug with setting the per_page configuration to only take effect on protected searches, thus staying out of the way of normal searching.
369 * Hardened more tests
370
371 == 0.9.9 released 2008-09-07
372
373 * Fixed setting per_page to nil, false, or ''. This is done to "show all" results.
374
375 == 0.9.8 released 2008-09-06
376
377 * Fixed order_by helper bug when guessing the text with arrays. Should use the first value instead of last.
378 * Added in per_page config option.
379
380 == 0.9.7 released 2008-09-06
381
382 * Complete class restructure. Moved the 3 main components into their own base level class: Search, Conditions, Condition
383 * Split logic and functionality into their own modules, implemented via alias_chain_method
384 * Added in helpers for using in a rails app
385 * Added link to documentation and live example in README
386 * Various small bug fixes
387 * Hardened tests
388
389 == 0.9.6 released 2008-09-04
390
391 * Fixed bug when instantiating with nil options
392
393 == 0.9.5 released 2008-09-03
394
395 * Enhanced searching with conditions only, added in search methods and calculations
396 * Updated README to include examples
397
398 == 0.9.4 released 2008-09-03
399
400 * Cleaned up search methods
401 * Removed reset! method for both searching and searching by conditions
402
403 == 0.9.3 released 2008-09-02
404
405 * Changed structure of conditions to have their own class
406 * Added API for adding your own conditions.
407
408 == 0.9.2 released 2008-09-02
409
410 * Enhanced protection from SQL injections (made more efficient)
411
412 == 0.9.1 released 2008-09-02
413
414 * Added aliases for datetime, date, time, and timestamp attrs. You could call created_at_after, now you can also call created_after. Just removed the "at" requirement.
415
416 == 0.9.0 released 2008-09-01
417
418 * First release
Something went wrong with that request. Please try again.