aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/CHANGELOG.md
Commit message (Collapse)AuthorAgeFilesLines
* If an index can't be found by column, use the index name.Ezekiel Smithburg2013-03-071-0/+10
| | | | schema_statements uses the column name by default to construct the index name, and then raises an exception if it doesn't exist, even if the name option is specified, which causes #8858. this commit makes index_name_for_remove fall back to constructing the index name to remove based on the name option.
* Merge pull request #9105 from bemurphy/cache_key_updated_onRafael Mendonça França2013-03-071-0/+10
|\ | | | | | | | | | | | | cache_key consults updated_on timestamp if present Conflicts: activerecord/CHANGELOG.md
| * cache_key consults updated_on timestamp if presentBrendon Murphy2013-02-261-0/+10
| | | | | | | | | | - Extract max timestamp retrieval for cache_key - Update changelog for cache_key changes
* | Merge pull request #9474 from HonoreDB/masterRafael Mendonça França2013-03-071-0/+4
|\ \ | | | | | | | | | | | | | | | | | | More helpful error message when instantiating an abstract class Conflicts: activerecord/CHANGELOG.md
| * | More helpful error message when instantiating an abstract classAaron Weiner2013-03-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling a literal ActiveRecord::Base.new raises NoMethodError, since it ends up calling Class.abstract_class? which does not exist. Similarly, instantiating an actual abstract class hits the database, when conventionally it should immediately throw NotImplementedError. ActiveRecord::Base can't be made abstract without breaking many, many things, so check for it separately.
* | | rake db:structure:dump warns when `mysqldump` is not in PATH.Yves Senn2013-03-061-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | Closes #9518. The rake task used to fail silently and left an empty `structure.sql`. It's confusing for users to get to the root of the problem. The warning message tells them where to look.
* | | `Connection#structure_dump` is no longer used. #9518Yves Senn2013-03-061-0/+2
| | | | | | | | | | | | | | | | | | | | | As of ccc6910c we use `mysqldump` to create the `structure.sql`. The old `#structure_dump` code is still in AR but never used. I removed all relevant parts from the code-base.
* | | transactions can be turned off per Migration.Yves Senn2013-03-051-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #9483. There are SQL Queries that can't run inside a transaction. Since the Migrator used to wrap all Migrations inside a transaction there was no way to run these queries within a migration. This patch adds `self.disable_ddl_transaction!` to the migration to turn transactions off when necessary.
* | | assigning '0.0' to a nullable numeric column does not make it dirtyYves Senn2013-03-051-0/+12
| | |
* | | Fixed typo in active record's changelogDimko2013-03-041-3/+3
| | |
* | | Use 1.9 hash style in changelog and doc examples [ci skip]Carlos Antonio da Silva2013-03-041-3/+3
| | |
* | | Created an unscope method for removing relations from a chain ofwangjohn2013-03-031-0/+16
|/ / | | | | | | | | relations. Specific where values can be unscoped, and the unscope method still works when relations are merged or combined.
* | Merge pull request #9431 from troyk/patch-2Andrew White2013-03-021-0/+5
|\ \ | | | | | | | | | Fix PostgreSQL TIMESTAMP WITH TIME ZONE to return ActiveSupport::Time
| * | Fix PostgreSQL TIMESTAMP WITH TIME ZONE to return ActiveSupport::TimeTroy Kruthoff2013-03-011-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In an AR model a timestamptz attribute would return a ruby string and AR tests did not check for any type casting. Previous tests would pass only because an assert_equal was being used on a Time.utc object, which will parse the right side of the eq to a valid Time instance for comparision. switch to test instance of Time instead of ActiveSupport::TimeWithZone
* | | deal with `#append` and `#prepend` on association collections.Yves Senn2013-03-011-4/+10
|/ / | | | | | | | | | | | | | | | | | | | | Closes #7364. Collection associations behave similar to Arrays. However there is no way to prepend records. And to append one should use `<<`. Before this patch `#append` and `#prepend` did not add the record to the loaded association. `#append` now behaves like `<<` and `#prepend` is not defined.
* | Support creating a table migration generatorSammy Larbi2013-03-011-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes you want to create a table without an associated model and test, which is also not a join table. With this commit, you can now do that. Example: rails g migration create_posts title:string or rails g migration CreatePosts title:string This commit also moves the template the model generator uses for the migration to the migration templates folder, as it seems a more sensible place for it now that it is shared code.
* | Improve the CHANGELOG entryRafael Mendonça França2013-02-281-2/+3
| | | | | | | | [ci skip]
* | Wrong exception is occured when raising no translatable exceptionkennyj2013-03-011-0/+5
| |
* | Support PostgreSQL specific column types when using `change_table`.Yves Senn2013-02-281-0/+12
| | | | | | | | | | | | | | | | Closes #9480. We use `TableDefinition` for `#create_table` and `Table` for `#change_table`. The PostgreSQL sepcifc types were only defined on `TableDefinition` so I also added them to `Table`.
* | Revert "Merge pull request #9207 from dylanahsmith/mysql-quote-numeric"Steve Klabnik2013-02-271-0/+4
| | | | | | | | | | This reverts commit 408227d9c5ed7de26310d72a1a99c1ee02311c63, reversing changes made to dca0b57d03deffc933763482e615c3cf0b9a1d97.
* | Merge pull request #9218 from Fivell/masterCarlos Antonio da Silva2013-02-271-0/+8
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix calculation of db_runtime property in ActiveRecord::Railties::ControllerRuntime#cleanup_view_runtime. Previously, after raising ActionView::MissingTemplate, db_runtime was not populated. Closes #9218, Fixes #9215. Conflicts: activerecord/CHANGELOG.md
| * | fix db_runtime attribute value after raising ActionView::MissingTemplate ↵Igor2013-02-271-0/+8
| | | | | | | | | | | | exception
* | | Fix touching an invalid parent record for belongs_toOlek Janiszewski2013-02-261-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the parent of a `belongs_to` record fails to be saved due to validation errors, `touch` will be called on a new record, which causes an exception (see https://github.com/rails/rails/pull/9320). Example: class Owner < ActiveRecord::Base validates_presence_of :name end class Pet < ActiveRecord::Base belongs_to :owner, touch: true end pet = Pet.new(owner: Owner.new) # Before, this line would raise ActiveRecord::ActiveRecordError # "can not touch on a new record object" pet.save
* | | Update CHANGELOGSRafael Mendonça França2013-02-261-5/+12
| | |
* | | Merge pull request #9414 from senny/9275_order_with_symbol_and_joinRafael Mendonça França2013-02-261-0/+9
|\ \ \ | |_|/ |/| | Expand order(:symbol) to "table".symbol to prevent broken queries on PG.
| * | Expand order(:symbol) to "table".symbol to prevent broken queries on PG.Yves Senn2013-02-251-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #9275. When `#order` is called with a Symbol this patch will prepend the quoted_table_name. Before the postgresql adapter failed to build queries containg a join and an order with a symbol. This expansion happens for all adapters.
* | | typoXavier Noria2013-02-251-1/+1
| | |
* | | AR loads activerecord-deprecated_finders, no need to add it to the GemfileXavier Noria2013-02-251-6/+5
| | |
* | | New CHANGELOG entries always on top [ci skip]Rafael Mendonça França2013-02-251-4/+4
| | |
* | | Do not override attributes on `dup` by default scopesHiroshige Umino2013-02-261-0/+4
| | |
* | | Preparing for 4.0.0.beta1 releaseDavid Heinemeier Hansson2013-02-251-1/+1
| | |
* | | some minor AR changelog modifications [ci skip]Yves Senn2013-02-251-3/+7
|/ /
* | Raising an ActiveRecordError when one tries to use .touch(name) on a newwangjohn2013-02-251-0/+11
| | | | | | | | | | object that has not yet been persisted. This behavior follows the precedent set by update_columns.
* | Improve AR changelog [ci skip]Carlos Antonio da Silva2013-02-241-2/+2
| |
* | don't apply invalid ordering when preloading hmt associations.Yves Senn2013-02-241-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | closes #8663. When preloading a hmt association there two possible scenarios: 1.) preload with 2 queries: first hm association, then hmt with id IN () 2.) preload with join: hmt association is loaded with a join on the hm association The bug was happening in scenario 1.) with a normal order clause on the hmt association. The ordering was also applied when loading the hm association, which resulted in the error. This patch only applies the ordering the the hm-relation if we are performing a join (2). Otherwise the order will only appear in the second query (1).
* | Merge pull request #9400 from senny/remove_auto_explain_threshold_in_secondsXavier Noria2013-02-241-0/+9
|\ \ | | | | | | remove config.auto_explain_threshold_in_seconds
| * | remove AR auto-explain (config.auto_explain_threshold_in_seconds)Yves Senn2013-02-241-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We discussed that the auto explain feature is rarely used. This PR removes only the automatic explain. You can still display the explain output for any given relation using `ActiveRecord::Relation#explain`. As a side-effect this should also fix the connection problem during asset compilation (#9385). The auto explain initializer in the `ActiveRecord::Railtie` forced a connection.
* | | Do not type cast all the database url values.Rafael Mendonça França2013-02-241-3/+3
|/ / | | | | | | | | | | We should only type cast when we need to use. Related to 4b005fb371c2e7af80df7da63be94509b1db038c
* | multiple actions for :on option with `after_commit` and `after_rollback`Yves Senn2013-02-211-0/+8
| | | | | | | | Closes #988.
* | ActiveRecord -> Active Record [ci skip]Xavier Noria2013-02-201-1/+1
| |
* | removes relation bang methods from the AR changelog [ci skip]Xavier Noria2013-02-201-12/+0
| |
* | puts a lambda around a default scope [ci skip]Xavier Noria2013-02-201-1/+1
| |
* | database.yml -> config/database.yml [ci skip]Xavier Noria2013-02-201-1/+1
| |
* | unify AR changelog entries [ci skip]Yves Senn2013-02-201-4/+4
| |
* | also rename indexes when a table or column is renamedYves Senn2013-02-201-0/+5
| | | | | | | | When a table or a column is renamed related indexes kept their name. This will lead to confusing names. This patch renames related indexes when a column or a table is renamed. Only indexes with names generated by rails will be renamed. Indexes with custom names will not be renamed.
* | moves the new :nsec date format to the Active Support changelog [ci skip]Xavier Noria2013-02-201-6/+1
| |
* | reserve index name chars for internal rails operationsYves Senn2013-02-201-0/+8
| | | | | | | | | | | | | | | | | | | | | | Some adapter (SQLite3) need to perform renaming operations to support the rails DDL. These rename prefixes operate with prefixes. When an index name already uses up the full space provieded by `index_name_length` these internal operations will fail. This patch introduces `allowed_index_name_length` which respects the amount of characters used for internal operations. It will always be <= `index_name_length` and every adapter can define how many characters need to be reserved.
* | Merge pull request #9332 from ↵Rafael Mendonça França2013-02-201-4/+2
|\ \ | | | | | | | | | | | | wangjohn/adding_documentation_to_error_raising_in_query_methods Tests to make sure empty arguments in WhereChain raise errors
| * | Added comments about the check_empty_arguments method which is calledwangjohn2013-02-201-4/+2
| | | | | | | | | | | | | | | for query methods in a where_clause. Also, modified the CHANGELOG entry because it had false information and added tests.
* | | Reduced memory leak problem in transactions by lazily updating AR objects ↵wangjohn2013-02-201-0/+22
|/ / | | | | | | with new transaction state. If AR object has a callback, the callback will be performed immediately (non-lazily) so the transaction still has to keep records with callbacks.