| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Conflicts:
activesupport/test/core_ext/duplicable_test.rb
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
* 3-2-stable-security:
Ensure [] respects the status of the buffer.
delete vulnerable AS::SafeBuffer#[]
use AS::SafeBuffer#clone_empty for flushing the output_buffer
add AS::SafeBuffer#clone_empty
fix output safety issue with select options
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
| |
Same as 91a9b2441783de118a2f9ec11b0aa3ae80133d91
|
| |
|
| |
|
|
|
|
|
|
| |
This reverts commit abe915f23777efe10f17d611bf5718ca855a0704.
This broke all existing keys and it's wrong anyway. The array is just there as a convenience option for building the string. It's intentional that [ "stuff"] and "stuff" generates the same key.
|
|
|
|
| |
Signed-off-by: José Valim <jose.valim@gmail.com>
|
| |
|
|
|
|
|
|
| |
Conflicts:
activesupport/test/callbacks_test.rb
|
| |
|
|
|
|
| |
activesupport tests.
|
|
|
|
| |
ActiveSupport::TaggedLogging::ERROR
|
|
|
|
| |
extend and define ::Base64 if needed
|
|\
| |
| | |
3 2 stable marshalling
|
| | |
|
|/
|
|
|
|
| |
Conflicts:
activesupport/lib/active_support/core_ext/range/include_range.rb
|
|
|
|
|
| |
This reverts commit df3701872d6c97ff49943aea30761b47e60fa9fe, reversing
changes made to a0fd9fb01730af12d66a27b5665cc010bd3b90b4.
|
| |
|
| |
|
|
|
|
|
|
| |
collect(&:method) *DHH*"
This reverts commit 4d20de8a50d889a09e6f5642984775fe796ca943.
|
|\
| |
| | |
Fix expanding cache key for single element arrays
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In short:
expand_cache_key(element) should not equal expand_cache_key([element])
This way a fragment cache key for an index page with only a single
element in the collection is different than a fragment cache for a
typical show page for that element.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Add ActiveSupport::Cache::NullStore for testing and development
|
| | |
| | |
| | |
| | | |
actually caching for development and test environments.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This can be turned off by setting `config.reload_classes_only_on_change` to false.
Extensions like Active Record should add their respective files like db/schema.rb and db/structure.sql to `config.watchable_files` if they want their changes to affect classes reloading.
Thanks to https://github.com/paneq/active_reload and Pastorino for the inspiration. <3
|
| | | |
|
|/ / |
|
| | |
|
| |
| |
| |
| | |
to return self.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
logs for a certain block, change the log level for that block.
* ActiveSupport::BufferedLogger#open_log is deprecated. This method should
not have been public in the first place.
* ActiveSupport::BufferedLogger's behavior of automatically creating the
directory for your log file is deprecated. Please make sure to create the
directory for your log file before instantiating.
* ActiveSupport::BufferedLogger#auto_flushing is deprecated. Either set the
sync level on the underlying file handle like this:
f = File.open('foo.log', 'w')
f.sync = true
ActiveSupport::BufferedLogger.new f
Or tune your filesystem. The FS cache is now what controls flushing.
* ActiveSupport::BufferedLogger#flush is deprecated. Set sync on your
filehandle, or tune your filesystem.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Removing this feature causes boost in performance when using Ruby 1.9.
Ruby 1.9 started to do implicit conversions using `to_ary` and `to_str`
in some STDLIB methods (like Array#join). To do such implicit conversions,
Ruby 1.9 always dispatches the method and rescues the NoMethodError exception
in case one is raised.
Therefore, since the whiners feature defined NilClass#method_missing, such
implicit conversions for nil became much, much slower. In fact, just defining
NilClass#method_missing (even without the whiners feature) already causes a
massive slow down. Here is a snippet that shows such slow down:
require "benchmark"
Benchmark.realtime { 1_000.times { [nil,nil,nil].join } }
class NilClass
def method_missing(*args)
raise NoMethodError
end
end
Benchmark.realtime { 1_000.times { [nil,nil,nil].join } }
|
|/ |
|
|\
| |
| | |
Add tests for the return value of require
|
| |
| |
| |
| | |
- These tests don't use autoloading so there's no need to add anything to autoload_paths
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
- Add tests to protect from regressions in require's return value behavior
- See a10606c490471d8e1483acb3b31d7f2d51e9ebbe (require needs to return true or false) for the original bug fix
|
|/
|
|
|
|
|
| |
Revert html_escape to do a single gsub again, but add the "n" flag (no
language, i.e. not multi-byte) to protect against XSS via invalid utf8
Signed-off-by: José Valim <jose.valim@gmail.com>
|
| |
|
|
|
|
| |
a before callback halts.
|