| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
|
|\ \ \
| |/ /
|/| | |
Backport update_columns to Rails 3.2
|
| | |
| | |
| | |
| | |
| | |
| | | |
update_column is deprecated in Rails 4.0 so it makes no sense to
recommend adopting it only to require changing to update_columns
in the very next release.
|
|/ / |
|
| |
| |
| |
| |
| | |
There are some Action Pack tests for regressions from 3.1 that require
a later version of Journey to pass so bump to the current version.
|
| | |
|
| |
| |
| |
| |
| |
| | |
`:within` option as alias of `:in` as documented.
Fix #7118
|
| | |
|
| |
| |
| |
| | |
Resolver tests fail if mysql adapter not installed
|
|\ \
| | |
| | | |
Bumping mocha!
|
| |/
| |
| |
| |
| | |
Reason:- 0.12.0 introduced a bug where you got a exception
which is now in 0.12.1 is a warning only!
|
|\ \
| | |
| | | |
AR::Integration must be included after AM::Conversion
|
|/ /
| |
| |
| |
| |
| | |
Integration's definition of #to_param must override
Conversion's. Otherwise, there is a regression from
3.1 in the behavior of a non-persisted AR::Base instance
which nevertheless has an id.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Optional segments with a root scope need to have the leading slash
outside of the parentheses, otherwise the generated url will be empty.
However if the route has non-optional elements then the leading slash
needs to remain inside the parentheses otherwise the generated url
will have two leading slashes, e.g:
Blog::Application.routes.draw do
get '/(:category)', :to => 'posts#index', :as => :root
get '/(:category)/author/:name', :to => 'posts#author', :as => :author
end
$ rake routes
root GET /(:category)(.:format) posts#index
author GET (/:category)/author/:name(.:format) posts#author
This change adds support for optional segments that contain a slash,
allowing support for urls like /page/2 for the root path, e.g:
Blog::Application.routes.draw do
get '/(page/:page)', :to => 'posts#index', :as => :root
end
$ rake routes
root GET /(page/:page)(.:format) posts#index
Fixes #7073
(cherry picked from commit d8745decaf59aad32aa2f09abdba99b8d0e48b31)
|
|/
|
|
| |
Fix GH #4259. When we execute schema dumper, we must remove table_name_prefix and table_name_suffix.
|
|
|
|
|
| |
This file uses Time.zone, which is defined in
active_support/core_ext/time/zones.rb.
|
|
|
|
| |
non-prepared statements
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Prepared statements (prepare/execute/close) were being used unnecessarily
when no bind variables were present, and disabling prepared statement using
prepared_statements:false was principally broken. While bind variables were
correctly substituted with prepared_statements:false, the prepared statement
interface was still used, costing an extra two round trips per query.
In addition to making this behavioral change, I also cleaned up the internals
of exec_stmt and exec_without_stmt so that they behave the same (calling log
and constructing the ActiveRecord::Result in the same way).
Moving the check for binds.empty? to exec_query also will mean that several
code paths explicitly calling exec_without_stmt could be cleaned up to once
again call exec_query instead. I have also left the check for binds.empty? in
exec_stmt, since it is not a private method and could be called directly with
an empty binds array. For the sake of clarity in this patch, I have not made
those changes.
= The previous behavior =
When issuing a Foo.find(1) with prepared_statements:true, the bind variable
is present in the prepared query, and execute shows a value passed:
Connect root@localhost on rails_test
Query SET SQL_AUTO_IS_NULL=0
Statistics
Query SHOW FULL FIELDS FROM `foos`
Query SHOW TABLES LIKE 'foos'
Query SHOW CREATE TABLE `foos`
Prepare SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = ? LIMIT 1
Execute SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1
Close stmt
Quit
When issuing a Foo.find(1) with prepared_statements:false, the bind variable
has already been removed and substituted with the value, but the prepared
statement interface is used anyway:
Connect root@localhost on rails_test
Query SET SQL_AUTO_IS_NULL=0
Statistics
Query SHOW FULL FIELDS FROM `foos`
Query SHOW TABLES LIKE 'foos'
Query SHOW CREATE TABLE `foos`
Prepare SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1
Execute SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1
Close stmt
Quit
= With this patch applied =
When issuing a Foo.find(1) with prepared_statements:true, the bind variable
is present in the prepared query, and execute shows a value passed:
Connect root@localhost on rails_test
Query SET SQL_AUTO_IS_NULL=0
Statistics
Query SHOW FULL FIELDS FROM `foos`
Query SHOW TABLES LIKE 'foos'
Query SHOW CREATE TABLE `foos`
Prepare SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = ? LIMIT 1
Execute SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1
Close stmt
Quit
When issuing a Foo.find(1) with prepared_statements:false, the bind variable
has been removed and substituted with the value, and the query interface is
used instead of the prepared statement interface:
Connect root@localhost on rails_test
Query SET SQL_AUTO_IS_NULL=0
Statistics
Query SHOW FULL FIELDS FROM `foos`
Query SHOW TABLES LIKE 'foos'
Query SHOW CREATE TABLE `foos`
Query SELECT `foos`.* FROM `foos` WHERE `foos`.`id` = 1 LIMIT 1
Quit
|
|\
| |
| | |
Back-port #6874 to 3.2: psql adapter should rename a default pk sequence during rename_table
|
|/ |
|
|\
| |
| | |
Select options valid html
|
|/
|
|
|
|
|
|
|
| |
When a select tag is created for a field with errors, and that select
tag has :prompt or :include_blank options, then the inserted first
option will errantly have a <div class="field_with_errors"> wrapping
it.
See https://github.com/rails/rails/issues/7017
|
|\
| |
| | |
Update coding convention from master
|
|/ |
|
|
|
|
|
|
| |
Disable query cache for lock queries
Conflicts:
activerecord/lib/active_record/connection_adapters/abstract/query_cache.rb
|
| |
|
|\
| |
| | |
MIssed backport for 3.2
|
|/ |
|
|
|
|
|
|
|
|
|
|
| |
instead of line continuations. While I'm at it, wrap long comment lines consistently.
Conflicts:
actionpack/lib/action_view/helpers/number_helper.rb
There was just one conflict related to the addition of the :format
option to number_to_percentage.
|
|\
| |
| | |
Backport #3329 to 3-2-stable
|
|/
|
|
|
|
|
| |
Fix bug with autosave collection association on new record with a marked
for destroy record in autosave collection.
Fixes #6918.
|
|
|
|
| |
active_support/core_ext/string/inflections.rb [fixes #6884]
|
|
|
|
|
|
| |
fix bug in limit of enum columns of mysql
Closes #6432
|
|
|
|
|
|
| |
Require URI in ConnectionSpecification
Conflicts:
activerecord/lib/active_record/connection_adapters/connection_specification.rb
|
|
|
|
| |
Missing require breaks Time.=== when selectively loading ActiveSupport core_exts in 3.2.4+
|
|
|
|
|
|
|
|
| |
Fix build issue with postgresql.
Conflicts:
activerecord/lib/active_record/relation/calculations.rb
activerecord/test/cases/calculations_test.rb
|
|
|
|
|
|
| |
Stop assuming strings for grouped calculations
Conflicts:
activerecord/lib/active_record/relation/calculations.rb
|
| |
|
|
|
|
|
|
|
| |
Closes #6675
Conflicts:
activerecord/lib/active_record/attribute_methods/dirty.rb
|
|
|
|
|
|
| |
Fixing load config in some tasks
Conflicts:
activerecord/lib/active_record/railties/databases.rake
|
|\
| |
| | |
Logger in metal backport for 3.2
|
| |
| |
| |
| | |
ActionController::Metal controller.
|
| | |
|
|\ \
| | |
| | | |
Deprecate composed of
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This feature adds a lot of complication to ActiveRecord for dubious
value. Let's talk about what it does currently:
class Customer < ActiveRecord::Base
composed_of :balance, :class_name => "Money", :mapping => %w(balance
amount)
end
Instead, you can do something like this:
def balance
@balance ||= Money.new(value, currency)
end
def balance=(balance)
self[:value] = balance.value
self[:currency] = balance.currency
@balance = balance
end
Since that's fairly easy code to write, and doesn't need anything
extra from the framework, if you use composed_of today, you'll
have to add accessors/mutators like that.
This feature will be removed in Rails 4.
|
| | |
|
|\ \
| | |
| | | |
bump AS deprecation_horizon to 4.0
|
|/ / |
|
|\ \
| | |
| | | |
Build fix actionpack
|