Commit Graph

3565 Commits

Author SHA1 Message Date
Kalys Osmonov
6b2a24c3bd &#39 dates back to SGML when &#x27 was introduced in HTML 4.0 2012-09-09 19:48:32 +06:00
Bogdan Gusiev
6777f7b75d AS::Callbacks: deprecate monkey patch of object callbacks 2012-09-07 14:42:31 +03:00
Aaron Renner
8b0d5bfc77 Fixed around callback with lambda example
This is a follow up to issue #7535
2012-09-06 08:21:47 -06:00
Xavier Noria
2ed325a3e9 we already have the module objects, do not constantize
I have also chosen a variable name that matches the
parameter in the definition of load_missing_constant.
2012-09-06 14:11:04 +02:00
Xavier Noria
021cb85b95 restores awesome comment
Those who say source code should be without comments lie.
2012-09-06 13:43:49 +02:00
Xavier Noria
3ee191fd95 no more const_missing combinatorics
Basically, const_missing had a loop to try parent namespaces
if the constant lookup failed, but at the same time delegated
to load_missing_constant which in turn also walks up parent
namespaces calling const_missing by hand. In the case of missing
constants this results in repeated work in some funky nested way.
2012-09-06 13:39:23 +02:00
Leo Cassarani
edab820d9e Extend HashWithIndifferentAccess#update to take an optional block
When a block is passed into the method, it will be invoked for each
duplicated key, with the key in question and the two values as
arguments. The value for the duplicated key in the receiver will
be set to the return value of the block.

This behaviour matches Ruby's long-standing implementation of
Hash#update and is intended to provide a more consistent interface.

HashWithIndifferentAccess#merge is also affected by the change, as it
uses #update internally.
2012-09-05 00:59:29 +01:00
Xavier Noria
5388fee718 revised the exception message "Expected #{file_path} to define #{qualified_name}"
Users need to know the ultimate problem here is that AS was
trying to autoload a constant and it failed.
2012-09-04 01:24:09 +02:00
Vijay Dev
a667499103 Merge branch 'master' of github.com:lifo/docrails 2012-09-01 23:51:23 +05:30
Vijay Dev
831b814a87 copy edits [ci skip] 2012-09-01 23:49:55 +05:30
Jeff Shantz
67fa3e8ddf Expand documentation for change() method in Time, Date, and DateTime 2012-08-29 22:48:46 -04:00
Xavier Noria
3b2c42cb56 fixes a regexp
We need to anchor to remove the extension. In addition to
be the correct way to do that, files in ~/.rbenv get that
.rb removed, so it is a real source of bugs, as reported in

b33700f558 (commitcomment-1781840)
2012-08-29 17:42:43 +02:00
Xavier Noria
b33700f558 detect circular constant autoloading
Nowadays circular autoloads do not work, but the user gets a NameError
that says some constant is undefined. That's puzzling, because he is
normally trying to autoload a constant he knows can be autoloaded.
With this check we can give a better error message.
2012-08-28 20:34:39 +02:00
Xavier Noria
db8ff15a49 fixes a bug in dependencies.rb
loaded stores file names without the .rb extension, but search_for_file
returns file names with the extension.

The solution is hackish, but this file needs a revamp.
2012-08-28 17:19:39 +02:00
Rafael Mendonça França
ea84b0c618 Remove unused variable 2012-08-26 03:56:19 -03:00
Rafael Mendonça França
a1d18ed9cf Merge pull request #7029 from panthomakos/date-and-time
Refactored common date and time calculations.
2012-08-25 18:26:07 -07:00
Xavier Noria
dfb5898b6d simplifies yet another regexp 2012-08-25 03:10:38 +02:00
Xavier Noria
4fbd350dca instead of returning $& if =~ succeeds, use String#[] 2012-08-25 03:08:45 +02:00
Xavier Noria
148e33058c simplifies a regexp
We simplify two things here: First since * is greedy it is enough to go
look for the rightmost ::, no need to ask the regexp engine to match the
rest of the string since we are not validating anything, only capturing.
The second simplification comes from using a look-ahead assertion, that
allows us to have the capture in $&, thus removing the need of a group.
2012-08-25 02:56:59 +02:00
Xavier Noria
6a70f2dd6b simplifies a regexp
The new regexp has less work to do, we anchor a fixed string at the end
and need no group.
2012-08-24 01:17:00 +02:00
José Valim
891043d5d0 Revert "Use join without default separator"
This reverts commit b0ab8dc0b2b0f580ffe5ac9ff57fd13152e18577
because it was removing the contents of the message when we
did not have any tag. A test case is also committed.
2012-08-23 11:01:55 -03:00
Xavier Noria
8b16ff64f2 revises a brittle test in Active Support
The revised test assumed that the default permissions of a file
matched the umask of the process, but in the general case that
depends also on the file system. This test was failing in the
/vagrant shared folder of Rails development boxes.
2012-08-22 23:10:33 +02:00
Rafael Mendonça França
d65a15dca6 Merge pull request #3578 from amatsuda/remove_j_alias_for_json_escape
Remove j alias for ERB::Util.json_escape
2012-08-21 14:18:38 -07:00
José Valim
2801786e1a Get rid of config.preload_frameworks in favor of config.eager_load_namespaces
The new option allows any Ruby namespace to be registered and set
up for eager load. We are effectively exposing the structure existing
in Rails since v3.0 for all developers in order to make their applications
thread-safe and CoW friendly.
2012-08-21 14:47:19 -03:00
José Valim
a1687e48cb Make ActiveSupport::Autoload local
Previously, ActiveSupport::Autoload was global and reserved
for usage inside Rails. This pull request makes it local,
fixes its test (they were not being run because its file
was named wrongly) and make it part of Rails public API.
2012-08-21 14:46:12 -03:00
Xavier Noria
f298481b36 Revert "removes unused optional argument in AS::Dependencies::Loadable#load"
This argument is there because that's the signature of Kernel#load.

This reverts commit bf3fa34ed0aa33bca3aac9c96165662fe864a7b4.
2012-08-20 23:59:36 +02:00
Xavier Noria
bf3fa34ed0 removes unused optional argument in AS::Dependencies::Loadable#load 2012-08-20 23:55:28 +02:00
Xavier Noria
937a825921 removes the second argument of the AS const_missing hook
Ruby does not pass the nesting to const_missing (unfortunately).
That second argument was there in case that changed, Yehuda
sent a patch to MRI

    http://bugs.ruby-lang.org/issues/2740

but there is not much movement there and Matz told me in
Amsterdam there was no immediate plan to pass the nesting.
So let's go back to implement what happens now, and if
in the future we get the nesting then we will adapt this.

Double-checked this with Mr Katz.
2012-08-19 23:55:54 +02:00
Xavier Noria
30f091b35a no need for AS::Dependencies.(hook!|unhook!) to return anything in particular 2012-08-19 21:33:58 +02:00
Guillermo Iguaran
82663306f4 Replace deprecated memcache-client gem with dalli in ActiveSupport::Cache::MemCacheStore
memcache-client was deprecated in favour of dalli in 2010.
2012-08-17 22:22:55 -05:00
Eric Saxby
6fe36ba585 Evented notifications take priority over Timed notifications
In cases where a notification subscriber includes methods to support
both Evented and Timed events, Evented should take priority over Timed.
This allows subscribers to be backwards compatible (older Rails only
allows Timed events) while defaulting to newer behavior.
2012-08-11 17:39:20 -07:00
Carlos Antonio da Silva
47b4d13c8d Ensure I18n format values always have precedence over defaults
Always merge I18n format values, namespaced or not, over the default
ones, to ensure I18n format defaults will have precedence over our
namespaced values.

Precedence should happen like this:

    default :format
    default :namespace :format
    i18n    :format
    i18n    :namespace :format

Because we cannot allow our namespaced default to override a I18n
:format config - ie precision in I18n :format should always have higher
precedence than our default precision for a particular :namespace.

Also simplify default format options logic.
2012-08-11 00:20:19 -03:00
Carlos Antonio da Silva
a9dccda936 Fallback to :en locale instead of handling a constant with defaults
Action Pack already comes with a default locale fine for :en, that is
always loaded. We can just fallback to this locale for defaults, if
values for the current locale cannot be found.

Closes #4420, #2802, #2890.
2012-08-11 00:20:19 -03:00
Carlos Antonio da Silva
b6e00c6764 Bring back changelog entries for Active Support
Removed in 0228a73b1094a3e19ad291d2ce4789890c09578a, pull request #7310.
2012-08-11 00:16:42 -03:00
Rafael Mendonça França
7ef56d6419 Add back missing require 2012-08-07 20:04:29 -03:00
Rafael Mendonça França
82fe116051 Fix the deprecation horizon. [ci skip] 2012-08-07 19:39:38 -03:00
Erich Menge
83f2ffcf43 Deprecate ActiveSupport::JSON::Variable
Reason: ActiveSupport::JSON::Variable is not used anymore internally. It
was deprecated in 3-2-stable but we reverted all the deprecation for
point releases.

See #6536 and #6546.
Conflicts:
	activesupport/lib/active_support/json/variable.rb
2012-08-07 19:36:08 -03:00
Xavier Noria
2f58795e78 defines String#indent [closes #7263] [Xavier Noria & Ace Suares] 2012-08-07 16:57:28 +02:00
Rafael Mendonça França
bf39026d56 Merge pull request #7272 from lexmag/string_inquirer
Add AS::StringInquirer#respond_to? method
2012-08-06 09:24:37 -07:00
Aaron Patterson
3a91d44eff let ruby decompose the tuples in the iterator 2012-08-06 08:26:45 -07:00
Aleksey Magusev
a1beec1de0 Add AS::StringInquirer#respond_to? method
Consistently with #method_missing
2012-08-06 16:59:12 +04:00
Xavier Noria
447b6a4e67 removes usage of Object#in? from the code base (the method remains defined by Active Support)
Selecting which key extensions to include in active_support/rails
made apparent the systematic usage of Object#in? in the code base.
After some discussion in

    5ea6b0df9a

we decided to remove it and use plain Ruby, which seems enough
for this particular idiom.

In this commit the refactor has been made case by case. Sometimes
include? is the natural alternative, others a simple || is the
way you actually spell the condition in your head, others a case
statement seems more appropriate. I have chosen the one I liked
the most in each case.
2012-08-06 00:30:02 +02:00
Pan Thomakos
b530fd1083 Refactored common date and time calculations.
* Added the `DateAndTime::Calculations` module that is included in Time
  and Date. It houses common calculations to reduce duplicated code.
* Simplified and cleaned-up the calculation code.
* Removed duplication in tests by adding a behavior module for shared
  tests. I also added some missing tests.
2012-08-04 16:13:03 -07:00
Vijay Dev
3d3fa165e4 Merge branch 'master' of github.com:lifo/docrails
Conflicts:
	activemodel/lib/active_model/secure_password.rb
	activerecord/lib/active_record/associations/collection_proxy.rb
2012-08-04 15:18:35 +05:30
Xavier Noria
077372b20d load active_support/deprecation in active_support/rails 2012-08-02 21:59:23 +02:00
Xavier Noria
4aee8dd486 load active_support/core_ext/module/delegation in active_support/rails 2012-08-02 21:59:23 +02:00
Xavier Noria
5e1b92044c load active_support/core_ext/class/attribute in active_support/rails 2012-08-02 21:59:23 +02:00
Xavier Noria
64bc8447c2 load active_support/concern in active_support/rails 2012-08-02 21:59:23 +02:00
Xavier Noria
47396a9db8 load active_support/dependencies/autoload in active_support/rails 2012-08-02 21:59:23 +02:00
Xavier Noria
5ea6b0df9a load active_support/core_ext/object/inclusion in active_support/rails 2012-08-02 21:59:22 +02:00