aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record
Commit message (Collapse)AuthorAgeFilesLines
* Make with_scope public so we stop using send :bomb:José Valim2011-12-152-91/+92
|
* Improve delegate list to avoid method missing.José Valim2011-12-151-1/+2
|
* Clean up the cache before the request in case we are running in the ↵José Valim2011-12-151-5/+13
| | | | reload_classes_only_on_change schema.
* There isn't a column_hash. It was being invoked by method missing.José Valim2011-12-151-1/+1
|
* Fix #3987.Jon Leighton2011-12-151-0/+2
|
* Allow nested attributes in associations to update values in it's owner ↵Andrew Kaspick2011-12-142-1/+13
| | | | object. Fixes a regression from 3.0.x
* Fix #3672 again (dependent: delete_all perf)Jon Leighton2011-12-146-9/+26
|
* Don't try to autosave nested assocs. Fixes #2961.Jon Leighton2011-12-142-1/+5
|
* Cache column defaults on model. ~30% on Model.new due to avoiding repeatedly ↵Jon Leighton2011-12-141-2/+2
| | | | fetching connection.
* Avoid super; speeds up Model.new by about 12%Jon Leighton2011-12-141-1/+1
|
* Stop the build asploding on 1.8.7Jon Leighton2011-12-141-0/+2
|
* Use a separate module for 'external' attribute methods.Jon Leighton2011-12-143-17/+26
|
* Revert naive O(1) table_exists? implementation.Jon Leighton2011-12-133-12/+15
| | | | | | | | | | It was a bad idea to rescue exceptions here. This can interfere with transaction rollbacks which seems to be the cause of current CI failure. Instead, each adapter should implement its own DB-specific O(1) implementation, and we fall back on the generic, slower, implementation otherwise.
* Merge branch 'master' of github.com:lifo/docrailsVijay Dev2011-12-141-1/+1
|\
| * changed :finder_sql example to select * clst2011-12-121-1/+1
| | | | | | because with select p.* you can no longer use count(). Using count will result in an SQL error message.
| * fixed example for :finder_sql clst2011-12-121-1/+1
| | | | | | people.* will not work when the alias is named p
* | FileUpdateChecker should be able to handle deleted files.José Valim2011-12-131-2/+1
| |
* | use the schema cache when asking for the primary keyAaron Patterson2011-12-121-1/+1
| |
* | Speed up development by only reloading classes if dependencies files changed.José Valim2011-12-121-0/+5
| | | | | | | | | | | | | | | | This can be turned off by setting `config.reload_classes_only_on_change` to false. Extensions like Active Record should add their respective files like db/schema.rb and db/structure.sql to `config.watchable_files` if they want their changes to affect classes reloading. Thanks to https://github.com/paneq/active_reload and Pastorino for the inspiration. <3
* | ensure @fixture_connections is initialized in case an exception happens ↵Aaron Patterson2011-12-101-0/+1
| | | | | | | | during setup
* | Errno::ENOENT error makes more sense when a file cannot be foundAaron Patterson2011-12-101-10/+0
| |
* | Allow to run migrations with given scope, with SCOPE=<scope>Piotr Sarnacki2011-12-091-1/+3
| | | | | | | | | | | | | | | | | | | | | | Scope in migrations can be defined by adding suffix in filename, like: 01_a_migration.blog.rb. Such migration have blog scope. Scope is automatically added while copying migrations from engine, so if you want to revert all of the migrations from given engine, you can just run db:migrate with SCOPE, like: rake db:migrate SCOPE=blog
* | Allow to filter migrations by passing a blockPiotr Sarnacki2011-12-091-9/+13
| | | | | | | | | | | | | | | | | | | | Example: ActiveRecord::Migrator.migrate(path) do |migration| migration.name =~ /User/ end The above example will migrate only migrations with User in the name
* | Use `table_exists?` from the schema cache.Aaron Patterson2011-12-092-5/+3
| |
* | don't need a begin / end.Aaron Patterson2011-12-091-6/+4
| |
* | squelch table exists? queries.Aaron Patterson2011-12-091-1/+1
| |
* | Compare migrations for copying only by name and scopePiotr Sarnacki2011-12-091-22/+6
| |
* | Add suffix for migrations copied from enginesPiotr Sarnacki2011-12-091-5/+5
| |
* | String#to_a is not available in 1.9Piotr Sarnacki2011-12-091-1/+1
| |
* | Run also migrations in subdirectories.Piotr Sarnacki2011-12-091-2/+3
| | | | | | | | | | With this commit, ActiveRecord will also look for migrations in db/migrate subdirectories.
* | Ignore origin comment when checking for duplicates on Migration.copyPiotr Sarnacki2011-12-091-2/+20
| | | | | | | | | | | | | | 49ebe51 fixed copying migrations, but existing migrations would still trigger warnings. The proper way to compare migrations is to ignore origin lines - if migration is identical it means that we can silently skip it, regardless where it comes from.
* | Fix copying migrations from enginesPiotr Sarnacki2011-12-091-3/+3
| | | | | | | | | | | | | | | | | | | | There was a bug in ActiveRecord::Migration.copy method, which prevented adding special comment about the origin of migration. Because of that, the check if migration is identical or if it's not and should be skipped was always saying that migration is skipped, which was causing additional useless warnings about skipped migrations.
* | Exceptions should read from the spec configuAaron Patterson2011-12-081-1/+1
| |
* | Fix #3890. (Calling proxy_association in scope chain.)Jon Leighton2011-12-081-2/+8
| |
* | fix nodocsVijay Dev2011-12-093-9/+9
| |
* | fix commentsVijay Dev2011-12-091-4/+2
| |
* | Remove NilClass whiners feature.José Valim2011-12-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing this feature causes boost in performance when using Ruby 1.9. Ruby 1.9 started to do implicit conversions using `to_ary` and `to_str` in some STDLIB methods (like Array#join). To do such implicit conversions, Ruby 1.9 always dispatches the method and rescues the NoMethodError exception in case one is raised. Therefore, since the whiners feature defined NilClass#method_missing, such implicit conversions for nil became much, much slower. In fact, just defining NilClass#method_missing (even without the whiners feature) already causes a massive slow down. Here is a snippet that shows such slow down: require "benchmark" Benchmark.realtime { 1_000.times { [nil,nil,nil].join } } class NilClass def method_missing(*args) raise NoMethodError end end Benchmark.realtime { 1_000.times { [nil,nil,nil].join } }
* | fixing eval'd line numbers.Aaron Patterson2011-12-081-2/+2
| |
* | Use a hash to look up column definitionsAaron Patterson2011-12-071-2/+3
| |
* | try to normalize the objects passed to column()Aaron Patterson2011-12-071-9/+11
| |
* | automatically add the column definition to the columns list if creating a ↵Aaron Patterson2011-12-071-12/+21
| | | | | | | | new one
* | stop calling String#to_s so frequentlyAaron Patterson2011-12-071-3/+4
| |
* | the required sqlite3 adapter responds to encoding, so stop checking.Aaron Patterson2011-12-071-5/+1
| |
* | reversible migration example had missing block parameterEvgeniy Kelyarsky2011-12-071-1/+1
| |
* | add prefix and suffix to renamed tables, closes #1510Vasiliy Ermolovich2011-12-061-0/+1
|/
* Quitoting the table name before querying.Aaron Patterson2011-12-051-1/+1
|
* Speed up table_exists? for databases with a large number of tablesJade Rubick2011-12-051-1/+6
| | | | | | At New Relic, we have hundreds of thousands of tables, and our migrations took 30 minutes without this similar patch. This cuts it down to a more reasonable amount of time. The rescue false part is ugly, but necessary as far as I can tell. I don't know of a cross-database statement you can make that will work without trapping errors.
* Merge pull request #3854 from exviva/validates_associated_marked_for_destructionJosé Valim2011-12-041-2/+3
|\ | | | | Do not validate associated records marked for destruction
| * Do not validate associated records marked for destructionOlek Janiszewski2011-12-051-2/+3
| | | | | | | | | | | | The main reason for this change is to fix a bug where `validates_associated` would prevent `accepts_nested_attributes_for` with `allow_destroy: true` from destroying invalid associated records.
* | Merge pull request #3851 from ebeigarts/fix_sequence_nameJon Leighton2011-12-041-2/+2
|\ \ | |/ |/| Fix sequence name with abstract classes.