Skip to content

Latest commit

 

History

History
123 lines (82 loc) · 6.75 KB

CHANGELOG.rdoc

File metadata and controls

123 lines (82 loc) · 6.75 KB

1.2.0 released 2008-09-24

  • Added searchgasm_params and searchgasm_url helper to use outside of the control type helpers.

  • Added dup and clone methods that work properly for searchgasm objects

  • Fixed bug to remove nil scope values, HABTM likes to add :limit => nil

  • Removed unnecessary build_search methods for associations

  • 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.

  • Fixed bug when searching with any conditions to use left outer joins instead of inner joins.

1.1.3 released 2008-09-23

  • Setting a condition to nil removes it if the condition is set to ignore blanks

  • 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”.

  • Fixed bug with inspect

  • Other small performance enhancements with memoized attributes

1.1.2 released 2008-09-22

  • Fixed bug with select control types not using :search_obj to determine its select values.

  • Added is_nil and is_blank condition types.

  • “memoized” various attributes for performance enhancements

  • Removed the :order option from calculation options when :order is useless and just slows down query.

  • Switched from using :include to :joins, big performance increase

1.1.1 released 2008-09-19

  • Fixed typo in “next page” button.

  • Updated valid options for searching and performing calculations, fixed some bugs when searching and performing calculations with advanced options.

  • Fixed bug in ordering where table name was assumed by the hash. Now assumed by the reflection.

  • Added default for per_page, so pagination comes implemented by default

  • 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, Searchgasm should never change how ActiveRecord behaves by default. So User.all(:conditions => {:name => “”}) will NOT be ignored.

1.1.0 released 2008-09-18

  • Added the options :inner_spread and :outer_spread to the page_links helper. Also added various config options for setting page_links defaults.

  • Updated calculation methods to ignore :limit and :offset. AR returns 0 or nil on calculations that provide an offset.

  • Added support to allow for “any” of the conditions, instead of all of them. Joins conditions with “or” instead of “and”. See Searchgasm::Conditions::Base or the readme

1.0.4 released 2008-09-18

  • Fixed bugs when performing calculations and searches on has_many through relationships.

  • 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.

1.0.3 released 2008-09-18

  • Updated inspect to show the current options for your search. Plays nicer in the console.

  • Made sure protection state is persistent among relationship conditions.

  • Fixed bug with backwards compatibility of rails. concat requires a proc in older version.

  • Defaulted remote control types to use GET requests instead of POST.

  • Completely reengineered integration with ActiveRecord. Searchgasm 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 Searchgasm as options.

  • Dropped support for Searchgasm functionality when defining relationships: has_many :order, :conditions => {:total_gt => 100}, will not work anymore. It’s a chicken and the egg thing. Searchgasm needs AR constants, some models get loaded before others, therefore the Order model may not have been loaded yet, causing an unknown constant error.

  • Clean up redundant code and moved it into the Searchgasm::Shared namespace.

1.0.2 released 2008-09-12

  • Moved cached searchers out of the global namespace and into the Searchgasm::Cache namespce.

  • Various changes to improve performance through profiling / benchmarking. pastie.org/271936

  • Config.per_page works with new_search & new_search! only. Where as before it was only working if the search was protected.

1.0.1 released 2008-09-11

  • 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.

  • Added in new options for page_links.

  • Fixed minor bugs when doing page_links.

  • Updated documentation to be more detailed and inclusive.

1.0.0 released 2008-09-08

  • 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).

0.9.10 released 2008-09-08

  • Fixed bug with setting the per_page configuration to only take effect on protected searches, thus staying out of the way of normal searching.

  • Hardened more tests

0.9.9 released 2008-09-07

  • Fixed setting per_page to nil, false, or ”. This is done to “show all” results.

0.9.8 released 2008-09-06

  • Fixed order_by helper bug when guessing the text with arrays. Should use the first value instead of last.

  • Added in per_page config option.

0.9.7 released 2008-09-06

  • Complete class restructure. Moved the 3 main components into their own base level class: Search, Conditions, Condition

  • Split logic and functionality into their own modules, implemented via alias_chain_method

  • Added in helpers for using in a rails app

  • Added link to documentation and live example in README

  • Various small bug fixes

  • Hardened tests

0.9.6 released 2008-09-04

  • Fixed bug when instantiating with nil options

0.9.5 released 2008-09-03

  • Enhanced searching with conditions only, added in search methods and calculations

  • Updated README to include examples

0.9.4 released 2008-09-03

  • Cleaned up search methods

  • Removed reset! method for both searching and searching by conditions

0.9.3 released 2008-09-02

  • Changed structure of conditions to have their own class

  • Added API for adding your own conditions.

0.9.2 released 2008-09-02

  • Enhanced protection from SQL injections (made more efficient)

0.9.1 released 2008-09-02

  • 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.

0.9.0 released 2008-09-01

  • First release