| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
(Try again) Fix #5847 and #4045.
|
| | |
|
| | |
|
| | |
|
| | |
|
|/ |
|
|\
| |
| | |
JRuby return different Array for module contents.
|
|/
|
|
|
| |
Test was failing against JRuby.
It loads like [Constant3 Constant1]
|
|\
| |
| | |
Exceptions like Interrupt & NoMemoryError should not be rescued in tests.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Neither Test::Unit nor MiniTest rescue exceptions like Interrupt or
NoMemoryError, but ActiveSupport::Testing::SetupAndTeardown#run which
overrides MiniTest::Unit::TestCase#run rescues them.
Rescuing an Interrupt exception is annoying, because it means when you
are running a lot of tests e.g. when running one of the rake test tasks,
you cannot break out using ctrl-C.
Rescuing exceptions like NoMemoryError is foolish, because the most
sensible thing to happen is for the process to terminate as soon as
possible.
This solution probably needs some finessing e.g. I'm not clear whether
the assumption is that only MiniTest is supported. Also early versions
of MiniTest did not have this behaviour. However, hopefully it's a
start.
Integrating with Test::Unit & MiniTest has always been a pain. It would
be great if both of them provided sensible extension points for the kind
of things that both Rails and Mocha want to do.
|
|\ \
| | |
| | | |
update Gemfile template to 1.9 hash syntax
|
|/ / |
|
|\ \
| | |
| | | |
Decoupling ActiveSupport from ActionView
|
|/ / |
|
|\ \
| | |
| | | |
Add tests to delete by fixnum or string id with has many through associations
|
|/ / |
|
| | |
|
| |
| |
| |
| | |
Merge commit 6f1d9d00ffd9d411b2bd488da4eb92b7e2fd972e
|
| |
| |
| |
| |
| |
| |
| |
| | |
Some of these requires are now only necessary in
ActiveSupport::NumberHelper. Add hash/keys require due to symbolize_keys
usage in number helpers. Also remove some whitespaces.
Closes #6414
|
| |
| |
| |
| | |
Add Changelog entry. Closes #4003
|
| |
| |
| |
| | |
sum allows blocks
|
|\ \
| | |
| | | |
Add support for CollectionAssociation#delete by Fixnum or String
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
I found the next issue between CollectionAssociation `delete`
and `destroy`.
class Person < ActiveRecord::Base
has_many :pets
end
person.pets.destroy(1)
# => OK, returns the destroyed object
person.pets.destroy("2")
# => OK, returns the destroyed object
person.pets.delete(1)
# => ActiveRecord::AssociationTypeMismatch
person.pets.delete("2")
# => ActiveRecord::AssociationTypeMismatch
Adding support for deleting with a fixnum or string like
`destroy` method.
|
|/ /
| |
| |
| |
| | |
Refactor number helpers output with safety handling to call float
parsing only once. Also remove 'erb' require.
|
|\ \
| |/
|/| |
ActiveSupport require and dependencies
|
| |
| |
| |
| |
| |
| | |
Use ActiveSupport::Multibyte::Chars.new instead of String#mb_chars.
It allows to use ActiveSupport::Multibyte::Chars without requiring
String multibyte core extension.
|
|/
|
|
|
| |
AS::Multibyte are no longer required by access and filters string
core extensions.
|
|\
| |
| | |
Don't enable validations when passing false hash values to ActiveModel.validates
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Passing a falsey option value for a validator currently causes that validator to
be enabled, just like "true":
ActiveModel.validates :foo, :presence => false
This is rather counterintuitive, and makes it inconvenient to wrap `validates` in
methods which may conditionally enable different validators.
As an example, one is currently forced to write:
def has_slug(source_field, options={:unique => true})
slugger = Proc.new { |r| r[:slug] = self.class.sluggify(r[source_field]) if r[:slug].blank? }
before_validation slugger
validations = { :presence => true, :slug => true }
if options[:unique]
validations[:uniqueness] = true
end
validates :slug, validations
end
because the following reasonable-looking alternative fails to work as expected:
def has_slug(source_field, options={:unique => true})
slugger = Proc.new { |r| r[:slug] = self.class.sluggify(r[source_field]) if r[:slug].blank? }
before_validation slugger
validates :slug, :presence => true, :slug => true, :uniqueness => options[:unique]
end
(This commit includes a test, and all activemodel and activerecord tests pass as before.)
|
|\
| |
| | |
Fix handling of negative zero in number_to_currency
|
|/ |
|
|\
| |
| |
| |
| | |
appfolio/moving_number_helper_methods_to_active_support
Moving number helper from ActionView to Active Support
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When more than one directory for helpers is provided to a controller, it
should preserver the order of directories. Given 2 paths:
MyController.helpers_paths = ["dir1/helpers", "dir2/helpers"]
helpers from dir1 should be loaded first. Before this commit, all
helpers were mixed and then sorted alphabetically, which essentially
would require to rename helpers to get desired order.
This is a problem especially for engines, where you would like to be
able to predict accurately which engine helpers will load first.
(closes #6496)
|
|\ |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
ActiveRecord
"
This reverts commit 0cfbaa030a0684aaa89d3d3c85528e80c1995836.
Sorry did not see the section on MySql and PostgreSQL
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: guides/source/contributing_to_ruby_on_rails.textile
#
|
| |
| |
| |
| |
| |
| |
| |
| | |
ActiveRecord
Initially the guide suggests to install gems via "bundle install --without db"
But tests for ActiveRecord need to install the gems in db group also, like mysql.
The patch clears the bundler options in ".bundle/config" and installs all the gems in Gemfile
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
railites_order method, introduced in 40b19e0, had a bug that was causing
loading application instance twice in initializers if railties_order
already included application instance. So for example
railties_order = [Foo::Engine, :main_app, Bar::Engine]
would result in such railties array:
[MyApp::Application, Foo::Engine, MyAppApplication, Bar::Engine]
In order to fix it, we need to check for existence of application in
both railties_order and railties arrays.
|
| |
| |
| |
| |
| |
| | |
* update rails versions
* remove outdated code snippets
* few more corrections
|
| |
| |
| |
| | |
This options can be used to not escape the result by default.
|
| | |
|
| |
| |
| |
| | |
Refactoring the truncate method to not do a sort-circuit return
|