| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It was noticed while profiling 'assets:precompile' in JRuby that
exception creation was consuming a large portion of time, and
some of that was due to File.atomic_write.
Testing first with File.exists? eliminates the need for an exception
which should be a perfomrance improvement on both JRuby and MRI.
In this case, the stat() isn't even extra overhead, since it is always
called.
|
|\ \
| | |
| | |
| | |
| | |
| | | |
Conflicts:
activesupport/lib/active_support/core_ext/hash/slice.rb
guides/source/active_support_core_extensions.md
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This file is used at least by Active Merchant, its existence
is maybe not necessary but no big deal either.
This reverts commit ae9b3d7cecd77b9ace38671b183e1a360bf632b6.
|
|\ \ \
| |/ /
|/| | |
make Hash#extract! more symmetric with Hash#slice
|
| | | |
|
| | |
| | |
| | |
| | | |
object/to_(param|query).rb
|
| | | |
|
|/ / |
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
actionmailer/lib/action_mailer/base.rb
activesupport/lib/active_support/configurable.rb
activesupport/lib/active_support/core_ext/module/deprecation.rb
guides/source/action_controller_overview.md
guides/source/active_support_core_extensions.md
guides/source/ajax_on_rails.textile
guides/source/association_basics.textile
guides/source/upgrading_ruby_on_rails.md
While resolving conflicts, I have chosen to ignore changes done in
docrails at some places - these will be most likely 1.9 hash syntax
changes.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
See #7613. [ci skip]
|
|\ \ \
| | | |
| | | | |
Nice and easy delegation to the class
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
option added (default is Monday)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Because Process::Status has no instance_variables, the
ActiveSupport version of #to_json produces {}, which isn't good.
Therefore, we implement our own #as_json, which makes it useful
again.
Fixes #4857
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Hash#merge accepts block that you can use to customize how hash values
are merged. This change makes merge and deep_merge compatible.
|
| | | | |
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
ActiveSupport::Deprecation is now a class rather than a module. You can
get instance of ActiveSupport::Deprecation calling #instance method.
ActiveSupport::Deprecation.instance
But when you need to get new object od ActiveSupport::Deprecation you
need to just call #new.
@instance = ActiveSupport::Deprecation.new
Since you can create a new object, you can change the version and the
name of the library where the deprecator concerned.
ActiveSupport::Deprecation.new('2.0', 'MyGem')
If you need use another deprecator instance you can select it in the
options of deprecate method.
deprecate :method, :deprecator => deprecator_instance
Documentation has been updated.
|
|/ / |
|
|\ \ |
|
| | | |
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
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.
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\ \ \
| | | |
| | | | |
Remove j alias for ERB::Util.json_escape
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
Removed in 0228a73b1094a3e19ad291d2ce4789890c09578a, pull request #7310.
|
| |/ /
|/| | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
activemodel/lib/active_model/secure_password.rb
activerecord/lib/active_record/associations/collection_proxy.rb
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
https://www.owasp.org/index.php/XSS_%28Cross_Site_Scripting%29_Prevention_Cheat_Sheet#RULE_.231_-_HTML_Escape_Before_Inserting_Untrusted_Data_into_HTML_Element_Content
Closes #7215
|
|\ \ \ \
| | | | |
| | | | | |
Make ActiveSupport::Inflector locale aware and multilingual
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The Inflector is currently not very supportive of internationalized
websites. If a user wants to singularize and/or pluralize words based on
any locale other than English, they must define each case in locale
files. Rather than create large locale files with mappings between
singular and plural words, why not allow the Inflector to accept a
locale?
This patch makes ActiveSupport::Inflector locale aware and uses `:en`` unless
otherwise specified. Users will still be provided a list of English (:en)
inflections, but they may additionally define inflection rules for other
locales. Each list is kept separately and permanently. There is no reason to
limit users to one list of inflections:
ActiveSupport::Inflector.inflections(:es) do |inflect|
inflect.plural(/$/, 's')
inflect.plural(/([^aeéiou])$/i, '\1es')
inflect.plural(/([aeiou]s)$/i, '\1')
inflect.plural(/z$/i, 'ces')
inflect.plural(/á([sn])$/i, 'a\1es')
inflect.plural(/é([sn])$/i, 'e\1es')
inflect.plural(/í([sn])$/i, 'i\1es')
inflect.plural(/ó([sn])$/i, 'o\1es')
inflect.plural(/ú([sn])$/i, 'u\1es')
inflect.singular(/s$/, '')
inflect.singular(/es$/, '')
inflect.irregular('el', 'los')
end
'ley'.pluralize(:es) # => "leyes"
'ley'.pluralize(:en) # => "leys"
'avión'.pluralize(:es) # => "aviones"
'avión'.pluralize(:en) # => "avións"
A multilingual Inflector should be of use to anybody that is tasked with
internationalizing their Rails application.
Signed-off-by: David Celis <david@davidcelis.com>
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
class_attribute is a building block and using define_method
can be much slower for such basic method definitions.
This reverts commit d59208d7032e2be855a89ad8d4685cc08dd7cdb3.
|
| | | | |
|
| | | | |
|
|/ / /
| | |
| | |
| | | |
object does not implement the method
|
|\ \ \ |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
This file uses Time.zone, which is defined in
active_support/core_ext/time/zones.rb.
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
This way you can `require 'active_record/core_ext/time'` for example
I see these libs are available through `active_record/time` but not
individually
|