Commit Graph

469 Commits

Author SHA1 Message Date
David Heinemeier Hansson
169ae75e09 Prepare for beta1 2011-05-04 20:21:05 -05:00
Sebastian Martinez
b84b759ec6 Improved ActiveModel Observing docs. 2011-04-30 20:35:25 -03:00
Dan Pickett
1efaed5af1 Merge branch 'master' of github.com:lifo/docrails 2011-04-29 19:18:10 -04:00
Aditya Sanghi
36ee2bafec fix typo 2011-04-29 09:53:02 +05:30
Aditya Sanghi
bf5cf5db86 :if should not fire on validations when not in context with :on 2011-04-29 02:54:37 +05:30
Myron Marston
fef22157b0 Fix bug with AM::Observer disablement.
Now that we propagate the enabling/disabling to descendants, we no longer have to check the disabled_observer Set on each superclass of the model class.  This was causing a bug when disabling all observers at a superclass level and then enabling an individual observer at a subclass level.

Plus the logic is simpler now :).
2011-04-28 08:27:15 -07:00
Myron Marston
9a385394ac Fix dev env memory leaks by using AS::DescendantsTracker rather than keeping track of subclasses manually.
There's also no need to keep track of all ObserverArray instances in a hash, as this is likely to leak memory, too.
2011-04-28 08:07:08 -07:00
Myron Marston
05d4653cef Revert "Revert "Handle enabling/disabling observers at different levels of the class hierarchy.""
This reverts commit 2a25c5818b.

I'm going to add another commit that keeps the same behavior of fixes
the problems of leaking memory in development.
2011-04-28 07:58:58 -07:00
José Valim
2a25c5818b Revert "Handle enabling/disabling observers at different levels of the class hierarchy."
This reverts commit ad62f19287 because the current
subclasses implementation leaks memory in development.

Instead of keeping an array of subclasses, the better solution is to
ask the parent if an observer is being disabled or not.
2011-04-28 09:32:57 +02:00
Myron Marston
ad62f19287 Handle enabling/disabling observers at different levels of the class hierarchy.
Last call wins.
2011-04-28 10:25:07 +08:00
Myron Marston
1f8cc446d9 Allow observers to be enabled and disabled.
This is useful in situations like model unit tests and the occasional rake task to backfill old data.
2011-04-28 10:23:49 +08:00
Myron Marston
5d20c0a64a Wrap line that is over 200 characters long. Now it's much easier to read. 2011-04-28 10:23:48 +08:00
Sebastian Martinez
c4b494bdc4 Rephrased Dirty#changed? docs 2011-04-26 23:37:11 -03:00
Sebastian Martinez
4554983ab1 Removed extra whitespace 2011-04-26 23:29:11 -03:00
Sebastian Martinez
a2bfa5fa30 Better formatting on ActiveModel::Translation 2011-04-26 23:26:10 -03:00
Josh Kalderimis
bf40c729c6 minor correction to the AMo mass-assignment security docs 2011-04-24 09:58:12 +02:00
Josh Kalderimis
1054ebd613 AM mass assignment security attr_accessible and attr_protected now allow for scopes using :as => scope eg.
attr_accessible :name
    attr_accessible :name, :admin, :as => :admin
2011-04-24 09:53:18 +02:00
Josh Kalderimis
0cf7b2f1b4 minor correction to the Active Model instantiate_observers doc 2011-04-22 15:24:11 +02:00
Xavier Noria
9b423ac0b7 let this regexp be stricter
The purpose of this regexp is to detect strings that
are valid identifiers to be used as method names.
The anchor $ allows a trailing newline, and both ^
and $ may be bypassed because Ruby regexps are
multiline always. The anchors \A and \z are the
proper ones to ensure string boundaries.
2011-04-19 18:16:38 +02:00
José Valim
dca31b9224 Let's not dup because value may not always be duplicable. 2011-04-19 18:06:01 +02:00
José Valim
30472d4244 Avoid define_method if possible. 2011-04-19 17:58:06 +02:00
Aaron Patterson
3e23752236 bcrypt will encrypt anything, so validate_presence_of would not catch nil / blank passwords. Thank you to Aleksander Kamil Modzelewski for reporting this 2011-04-14 14:54:25 -07:00
Brian Cardarella
a8365ab9ad Declaring the attr_accessor for password_confirmation is not necessary
as the confirmation validation already adds that attr_accessor
2011-04-14 16:43:51 +08:00
Prem Sichanugrist
733bfa63f5 Remove #among? from Active Support
After a long list of discussion about the performance problem from using varargs and the reason that we can't find a great pair for it, it would be best to remove support for it for now.

It will come back if we can find a good pair for it. For now, Bon Voyage, `#among?`.
2011-04-13 20:25:28 +08:00
Xavier Noria
3366479a9a Merge branch 'master' of git://github.com/lifo/docrails 2011-04-12 22:45:33 +02:00
David Heinemeier Hansson
d1575ae1b9 Change Object#either? to Object#among? -- thanks to @jamesarosen for the suggestion! 2011-04-12 00:23:07 +02:00
Oge Nnadi
a43abfafd2 Rewording 2011-04-11 12:54:46 -07:00
José Valim
7379114c2f Remove code duplication. 2011-04-11 18:01:10 +02:00
José Valim
df5691aa94 No need to rescue here. Invoking the wrong method in an object can happen anywhere if you are not careful. In other words, test your shit. 2011-04-11 17:47:59 +02:00
José Valim
5bf3d46bec Revert "Add :use_include option to allow user to explicitly use Range#include? method in Ruby 1.9"
Use :with => range.to_a instead.

This reverts commit f6540211b5.
2011-04-11 17:41:33 +02:00
Prem Sichanugrist
a9f3c9da01 Using Object#in? and Object#either? in various places
There're a lot of places in Rails source code which make a lot of sense to switching to Object#in? or Object#either? instead of using [].include?.
2011-04-11 03:17:09 +08:00
Prem Sichanugrist
f6540211b5 Add :use_include option to allow user to explicitly use Range#include? method in Ruby 1.9
In Ruby 1.9 we're currently use `Range#cover?` to fix the performance problem. However, there might be the case that you want to use `Range#include?` instead. This patch will give you that option.
2011-04-10 18:49:28 +08:00
Prem Sichanugrist
58594be680 Add support for proc or lambda as an option for InclusionValidator, ExclusionValidator, and FormatValidator
You can now use a proc or lambda in :in option for InclusionValidator and ExclusionValidator, and :with, :without option for FormatValidator
2011-04-10 18:49:28 +08:00
Xavier Noria
3e24e9ebc2 Merge branch 'master' of git://github.com/lifo/docrails 2011-04-03 22:22:03 +02:00
Santiago Pastorino
4f90b28e06 Bring back AMo#i18n_key method 2011-03-30 16:29:43 -03:00
John Firebaugh
b671e4d86a Fix formatting and broken markup 2011-03-28 22:31:05 -07:00
Santiago Pastorino
450f7cf01b use class_eval with a string when it's possible 2011-03-22 20:11:36 -03:00
Santiago Pastorino
da6c7bd4b4 Do not in place modify what table_name returns 2011-03-22 19:36:16 -03:00
Santiago Pastorino
445241d713 define_attr_method should be able to define methods that returns nil 2011-03-17 23:17:20 -03:00
Aaron Patterson
4532b39f5f remove misleading comment 2011-03-17 10:31:12 -07:00
Aaron Patterson
00f0879367 dup strings on return so that in place modifications do not break anything. I am looking at you "compute_table_name" 2011-03-17 10:26:11 -07:00
Santiago Pastorino
c834a751d2 define_attr_method correctly defines methods with invalid identifiers 2011-03-16 21:20:44 -03:00
Andrew White
e8458d37c5 Fix typo in assertion message 2011-03-16 10:28:40 +00:00
Norman Clarke
7bd70dcd6c Add messages to plain assertions.
Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
2011-03-15 10:44:14 -03:00
Santiago Pastorino
157c37f558 Refactor length validation 2011-03-12 21:12:44 -02:00
Andriy Tyurnikov
f48d3d4df6 length validation for fixnums
Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
2011-03-12 21:12:44 -02:00
Mike Gehard
58de03f077 Add additional text to NotImplementedErrors [#6328 state:resolved]
Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
2011-03-12 13:43:23 -02:00
Xavier Noria
89ecc0a5dc Merge branch 'master' of git://github.com/lifo/docrails 2011-03-07 22:11:47 +01:00
Vijay Dev
f99db5a6a8 formatting changes 2011-03-07 23:56:16 +05:30
Paco Guzman
8e0affbd86 Configuration options are symbols 2011-03-06 22:35:26 +01:00