Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package rubygem-activesupport-7.0 for
openSUSE:Factory checked in at 2022-05-16 18:08:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-activesupport-7.0 (Old)
and /work/SRC/openSUSE:Factory/.rubygem-activesupport-7.0.new.1538 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-activesupport-7.0"
Mon May 16 18:08:32 2022 rev:4 rq:977368 version:7.0.3
Changes:
--------
---
/work/SRC/openSUSE:Factory/rubygem-activesupport-7.0/rubygem-activesupport-7.0.changes
2022-04-30 22:52:30.792222253 +0200
+++
/work/SRC/openSUSE:Factory/.rubygem-activesupport-7.0.new.1538/rubygem-activesupport-7.0.changes
2022-05-16 18:10:59.177395973 +0200
@@ -1,0 +2,7 @@
+Sun May 15 15:20:32 UTC 2022 - Manuel Schnitzer <[email protected]>
+
+- updated to version 7.0.3
+
+ * no changes
+
+-------------------------------------------------------------------
Old:
----
activesupport-7.0.2.4.gem
New:
----
activesupport-7.0.3.gem
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rubygem-activesupport-7.0.spec ++++++
--- /var/tmp/diff_new_pack.vT2lSS/_old 2022-05-16 18:10:59.645396345 +0200
+++ /var/tmp/diff_new_pack.vT2lSS/_new 2022-05-16 18:10:59.649396348 +0200
@@ -24,7 +24,7 @@
#
Name: rubygem-activesupport-7.0
-Version: 7.0.2.4
+Version: 7.0.3
Release: 0
%define mod_name activesupport
%define mod_full_name %{mod_name}-%{version}
++++++ activesupport-7.0.2.4.gem -> activesupport-7.0.3.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md 2022-04-26 21:32:32.000000000 +0200
+++ new/CHANGELOG.md 2022-05-09 15:34:58.000000000 +0200
@@ -1,3 +1,8 @@
+## Rails 7.0.3 (May 09, 2022) ##
+
+* No changes.
+
+
## Rails 7.0.2.4 (April 26, 2022) ##
* Fix and add protections for XSS in `ActionView::Helpers` and `ERB::Util`.
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/backtrace_cleaner.rb
new/lib/active_support/backtrace_cleaner.rb
--- old/lib/active_support/backtrace_cleaner.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/backtrace_cleaner.rb 2022-05-09 15:34:58.000000000
+0200
@@ -21,10 +21,10 @@
#
# To reconfigure an existing BacktraceCleaner (like the default one in Rails)
# and show as much data as possible, you can always call
- # <tt>BacktraceCleaner#remove_silencers!</tt>, which will restore the
+ # BacktraceCleaner#remove_silencers!, which will restore the
# backtrace to a pristine state. If you need to reconfigure an existing
# BacktraceCleaner so that it does not filter or modify the paths of any
lines
- # of the backtrace, you can call <tt>BacktraceCleaner#remove_filters!</tt>
+ # of the backtrace, you can call BacktraceCleaner#remove_filters!
# These two methods will give you a completely untouched backtrace.
#
# Inspired by the Quiet Backtrace gem by thoughtbot.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/cache/mem_cache_store.rb
new/lib/active_support/cache/mem_cache_store.rb
--- old/lib/active_support/cache/mem_cache_store.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/cache/mem_cache_store.rb 2022-05-09
15:34:58.000000000 +0200
@@ -104,7 +104,7 @@
#
# ActiveSupport::Cache::MemCacheStore.new("localhost",
"server-downstairs.localnetwork:8229")
#
- # If no addresses are provided, but ENV['MEMCACHE_SERVERS'] is defined,
it will be used instead. Otherwise,
+ # If no addresses are provided, but <tt>ENV['MEMCACHE_SERVERS']</tt> is
defined, it will be used instead. Otherwise,
# MemCacheStore will connect to localhost:11211 (the default memcached
port).
def initialize(*addresses)
addresses = addresses.flatten
@@ -129,8 +129,8 @@
end
# Increment a cached value. This method uses the memcached incr atomic
- # operator and can only be used on values written with the :raw option.
- # Calling it on a value not stored with :raw will initialize that value
+ # operator and can only be used on values written with the +:raw+ option.
+ # Calling it on a value not stored with +:raw+ will initialize that value
# to zero.
def increment(name, amount = 1, options = nil)
options = merged_options(options)
@@ -142,8 +142,8 @@
end
# Decrement a cached value. This method uses the memcached decr atomic
- # operator and can only be used on values written with the :raw option.
- # Calling it on a value not stored with :raw will initialize that value
+ # operator and can only be used on values written with the +:raw+ option.
+ # Calling it on a value not stored with +:raw+ will initialize that value
# to zero.
def decrement(name, amount = 1, options = nil)
options = merged_options(options)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/cache/memory_store.rb
new/lib/active_support/cache/memory_store.rb
--- old/lib/active_support/cache/memory_store.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/cache/memory_store.rb 2022-05-09
15:34:58.000000000 +0200
@@ -11,7 +11,7 @@
# to share cache data with each other and this may not be the most
# appropriate cache in that scenario.
#
- # This cache has a bounded size specified by the :size options to the
+ # This cache has a bounded size specified by the +:size+ options to the
# initializer (default is 32Mb). When the cache exceeds the allotted size,
# a cleanup will occur which tries to prune the cache down to three
quarters
# of the maximum size by removing the least recently used entries.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/cache/redis_cache_store.rb
new/lib/active_support/cache/redis_cache_store.rb
--- old/lib/active_support/cache/redis_cache_store.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/cache/redis_cache_store.rb 2022-05-09
15:34:58.000000000 +0200
@@ -139,7 +139,7 @@
#
# Race condition TTL is not set by default. This can be used to avoid
# "thundering herd" cache writes when hot cache entries are expired.
- # See <tt>ActiveSupport::Cache::Store#fetch</tt> for more.
+ # See ActiveSupport::Cache::Store#fetch for more.
def initialize(namespace: nil, compress: true, compress_threshold:
1.kilobyte, coder: default_coder, expires_in: nil, race_condition_ttl: nil,
error_handler: DEFAULT_ERROR_HANDLER, **redis_options)
@redis_options = redis_options
@@ -225,8 +225,8 @@
# Cache Store API implementation.
#
# Increment a cached value. This method uses the Redis incr atomic
- # operator and can only be used on values written with the :raw option.
- # Calling it on a value not stored with :raw will initialize that value
+ # operator and can only be used on values written with the +:raw+ option.
+ # Calling it on a value not stored with +:raw+ will initialize that value
# to zero.
#
# Failsafe: Raises errors.
@@ -248,8 +248,8 @@
# Cache Store API implementation.
#
# Decrement a cached value. This method uses the Redis decr atomic
- # operator and can only be used on values written with the :raw option.
- # Calling it on a value not stored with :raw will initialize that value
+ # operator and can only be used on values written with the +:raw+ option.
+ # Calling it on a value not stored with +:raw+ will initialize that value
# to zero.
#
# Failsafe: Raises errors.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/cache/strategy/local_cache.rb
new/lib/active_support/cache/strategy/local_cache.rb
--- old/lib/active_support/cache/strategy/local_cache.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/cache/strategy/local_cache.rb 2022-05-09
15:34:58.000000000 +0200
@@ -123,6 +123,9 @@
return super unless local_cache
local_entries = local_cache.read_multi_entries(keys)
+ local_entries.transform_values! do |payload|
+ deserialize_entry(payload).value
+ end
missed_keys = keys - local_entries.keys
if missed_keys.any?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/cache.rb
new/lib/active_support/cache.rb
--- old/lib/active_support/cache.rb 2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/cache.rb 2022-05-09 15:34:58.000000000 +0200
@@ -141,7 +141,8 @@
# Some implementations may not support all methods beyond the basic cache
# methods of +fetch+, +write+, +read+, +exist?+, and +delete+.
#
- # ActiveSupport::Cache::Store can store any serializable Ruby object.
+ # ActiveSupport::Cache::Store can store any Ruby object that is supported
by
+ # its +coder+'s +dump+ and +load+ methods.
#
# cache = ActiveSupport::Cache::MemoryStore.new
#
@@ -149,6 +150,8 @@
# cache.write('city', "Duckburgh")
# cache.read('city') # => "Duckburgh"
#
+ # cache.write('not serializable', Proc.new {}) # => TypeError
+ #
# Keys are always translated into Strings and are case sensitive. When an
# object is specified as a key and has a +cache_key+ method defined, this
# method will be called to define the key. Otherwise, the +to_param+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/callbacks.rb
new/lib/active_support/callbacks.rb
--- old/lib/active_support/callbacks.rb 2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/callbacks.rb 2022-05-09 15:34:58.000000000 +0200
@@ -16,19 +16,19 @@
# needing to override or redefine methods of the base class.
#
# Mixing in this module allows you to define the events in the object's
- # life cycle that will support callbacks (via
+ClassMethods.define_callbacks+),
+ # life cycle that will support callbacks (via ClassMethods#define_callbacks),
# set the instance methods, procs, or callback objects to be called (via
- # +ClassMethods.set_callback+), and run the installed callbacks at the
+ # ClassMethods#set_callback), and run the installed callbacks at the
# appropriate times (via +run_callbacks+).
#
# By default callbacks are halted by throwing +:abort+.
- # See +ClassMethods.define_callbacks+ for details.
+ # See ClassMethods#define_callbacks for details.
#
# Three kinds of callbacks are supported: before callbacks, run before a
# certain event; after callbacks, run after the event; and around callbacks,
# blocks that surround the event, triggering it when they yield. Callback
code
# can be contained in instance methods, procs or lambdas, or callback objects
- # that respond to certain predetermined methods. See
+ClassMethods.set_callback+
+ # that respond to certain predetermined methods. See
ClassMethods#set_callback
# for details.
#
# class Record
@@ -600,7 +600,7 @@
end
end
- class CallbackChain # :nodoc:#
+ class CallbackChain # :nodoc:
include Enumerable
attr_reader :name, :config
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/configurable.rb
new/lib/active_support/configurable.rb
--- old/lib/active_support/configurable.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/configurable.rb 2022-05-09 15:34:58.000000000
+0200
@@ -5,7 +5,7 @@
module ActiveSupport
# Configurable provides a <tt>config</tt> method to store and retrieve
- # configuration options as an <tt>OrderedOptions</tt>.
+ # configuration options as an OrderedOptions.
module Configurable
extend ActiveSupport::Concern
@@ -127,7 +127,7 @@
private :config_accessor
end
- # Reads and writes attributes from a configuration <tt>OrderedOptions</tt>.
+ # Reads and writes attributes from a configuration OrderedOptions.
#
# require "active_support/configurable"
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/array/conversions.rb
new/lib/active_support/core_ext/array/conversions.rb
--- old/lib/active_support/core_ext/array/conversions.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/array/conversions.rb 2022-05-09
15:34:58.000000000 +0200
@@ -1,6 +1,5 @@
# frozen_string_literal: true
-require "active_support/xml_mini"
require "active_support/core_ext/hash/keys"
require "active_support/core_ext/string/inflections"
require "active_support/core_ext/object/to_param"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/array/inquiry.rb
new/lib/active_support/core_ext/array/inquiry.rb
--- old/lib/active_support/core_ext/array/inquiry.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/array/inquiry.rb 2022-05-09
15:34:58.000000000 +0200
@@ -3,8 +3,8 @@
require "active_support/array_inquirer"
class Array
- # Wraps the array in an +ArrayInquirer+ object, which gives a friendlier way
- # to check its string-like contents.
+ # Wraps the array in an ActiveSupport::ArrayInquirer object, which gives a
+ # friendlier way to check its string-like contents.
#
# pets = [:cat, :dog].inquiry
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/date/calculations.rb
new/lib/active_support/core_ext/date/calculations.rb
--- old/lib/active_support/core_ext/date/calculations.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/date/calculations.rb 2022-05-09
15:34:58.000000000 +0200
@@ -13,22 +13,22 @@
class << self
attr_accessor :beginning_of_week_default
- # Returns the week start (e.g. :monday) for the current request, if this
has been set (via Date.beginning_of_week=).
+ # Returns the week start (e.g. +:monday+) for the current request, if this
has been set (via Date.beginning_of_week=).
# If <tt>Date.beginning_of_week</tt> has not been set for the current
request, returns the week start specified in <tt>config.beginning_of_week</tt>.
- # If no config.beginning_of_week was specified, returns :monday.
+ # If no +config.beginning_of_week+ was specified, returns +:monday+.
def beginning_of_week
::ActiveSupport::IsolatedExecutionState[:beginning_of_week] ||
beginning_of_week_default || :monday
end
- # Sets <tt>Date.beginning_of_week</tt> to a week start (e.g. :monday) for
current request/thread.
+ # Sets <tt>Date.beginning_of_week</tt> to a week start (e.g. +:monday+)
for current request/thread.
#
# This method accepts any of the following day symbols:
- # :monday, :tuesday, :wednesday, :thursday, :friday, :saturday, :sunday
+ # +:monday+, +:tuesday+, +:wednesday+, +:thursday+, +:friday+,
+:saturday+, +:sunday+
def beginning_of_week=(week_start)
::ActiveSupport::IsolatedExecutionState[:beginning_of_week] =
find_beginning_of_week!(week_start)
end
- # Returns week start day symbol (e.g. :monday), or raises an
+ArgumentError+ for invalid day symbol.
+ # Returns week start day symbol (e.g. +:monday+), or raises an
+ArgumentError+ for invalid day symbol.
def find_beginning_of_week!(week_start)
raise ArgumentError, "Invalid beginning of week: #{week_start}" unless
::Date::DAYS_INTO_WEEK.key?(week_start)
week_start
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/date/conversions.rb
new/lib/active_support/core_ext/date/conversions.rb
--- old/lib/active_support/core_ext/date/conversions.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/date/conversions.rb 2022-05-09
15:34:58.000000000 +0200
@@ -68,7 +68,7 @@
silence_redefinition_of_method :to_time
# Converts a Date instance to a Time, where the time is set to the beginning
of the day.
- # The timezone can be either :local or :utc (default :local).
+ # The timezone can be either +:local+ or +:utc+ (default +:local+).
#
# date = Date.new(2007, 11, 10) # => Sat, 10 Nov 2007
#
@@ -77,8 +77,8 @@
#
# date.to_time(:utc) # => 2007-11-10 00:00:00 UTC
#
- # NOTE: The :local timezone is Ruby's *process* timezone, i.e. ENV['TZ'].
- # If the *application's* timezone is needed, then use +in_time_zone+
instead.
+ # NOTE: The +:local+ timezone is Ruby's *process* timezone, i.e.
<tt>ENV['TZ']</tt>.
+ # If the <b>application's</b> timezone is needed, then use +in_time_zone+
instead.
def to_time(form = :local)
raise ArgumentError, "Expected :local or :utc, got #{form.inspect}."
unless [:local, :utc].include?(form)
::Time.public_send(form, year, month, day)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/active_support/core_ext/date_and_time/calculations.rb
new/lib/active_support/core_ext/date_and_time/calculations.rb
--- old/lib/active_support/core_ext/date_and_time/calculations.rb
2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/date_and_time/calculations.rb
2022-05-09 15:34:58.000000000 +0200
@@ -201,7 +201,7 @@
end
end
- # Short-hand for months_since(3)
+ # Short-hand for <tt>months_since(3)</tt>.
def next_quarter
months_since(3)
end
@@ -226,18 +226,18 @@
end
alias_method :last_weekday, :prev_weekday
- # Short-hand for months_ago(1).
+ # Short-hand for <tt>months_ago(1)</tt>.
def last_month
months_ago(1)
end
- # Short-hand for months_ago(3).
+ # Short-hand for <tt>months_ago(3)</tt>.
def prev_quarter
months_ago(3)
end
alias_method :last_quarter, :prev_quarter
- # Short-hand for years_ago(1).
+ # Short-hand for <tt>years_ago(1)</tt>.
def last_year
years_ago(1)
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/active_support/core_ext/date_and_time/compatibility.rb
new/lib/active_support/core_ext/date_and_time/compatibility.rb
--- old/lib/active_support/core_ext/date_and_time/compatibility.rb
2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/date_and_time/compatibility.rb
2022-05-09 15:34:58.000000000 +0200
@@ -15,7 +15,7 @@
# Change the output of <tt>ActiveSupport::TimeZone.utc_to_local</tt>.
#
- # When `true`, it returns local times with a UTC offset, with `false` local
+ # When +true+, it returns local times with a UTC offset, with +false+ local
# times are returned as UTC.
#
# # Given this zone:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/enumerable.rb
new/lib/active_support/core_ext/enumerable.rb
--- old/lib/active_support/core_ext/enumerable.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/enumerable.rb 2022-05-09
15:34:58.000000000 +0200
@@ -1,13 +1,30 @@
# frozen_string_literal: true
-module Enumerable
- INDEX_WITH_DEFAULT = Object.new
- private_constant :INDEX_WITH_DEFAULT
+module ActiveSupport
+ module EnumerableCoreExt # :nodoc:
+ module Constants
+ private
+ def const_missing(name)
+ if name == :SoleItemExpectedError
+ ::ActiveSupport::EnumerableCoreExt::SoleItemExpectedError
+ else
+ super
+ end
+ end
+ end
+ end
+end
+module Enumerable
# Error generated by +sole+ when called on an enumerable that doesn't have
# exactly one item.
class SoleItemExpectedError < StandardError; end
+ # HACK: For performance reasons, Enumerable shouldn't have any constants of
its own.
+ # So we move SoleItemExpectedError into ActiveSupport::EnumerableCoreExt.
+ ActiveSupport::EnumerableCoreExt::SoleItemExpectedError =
remove_const(:SoleItemExpectedError)
+ singleton_class.prepend(ActiveSupport::EnumerableCoreExt::Constants)
+
# Enumerable#sum was added in Ruby 2.4, but it only works with Numeric
elements
# when we omit an identity.
@@ -106,17 +123,17 @@
#
# %i( created_at updated_at ).index_with(Time.now)
# # => { created_at: 2020-03-09 22:31:47, updated_at: 2020-03-09 22:31:47 }
- def index_with(default = INDEX_WITH_DEFAULT)
+ def index_with(default = (no_default = true))
if block_given?
result = {}
each { |elem| result[elem] = yield(elem) }
result
- elsif default != INDEX_WITH_DEFAULT
+ elsif no_default
+ to_enum(:index_with) { size if respond_to?(:size) }
+ else
result = {}
each { |elem| result[elem] = default }
result
- else
- to_enum(:index_with) { size if respond_to?(:size) }
end
end
@@ -240,8 +257,8 @@
def sole
case count
when 1 then return first # rubocop:disable Style/RedundantReturn
- when 0 then raise SoleItemExpectedError, "no item found"
- when 2.. then raise SoleItemExpectedError, "multiple items found"
+ when 0 then raise
ActiveSupport::EnumerableCoreExt::SoleItemExpectedError, "no item found"
+ when 2.. then raise
ActiveSupport::EnumerableCoreExt::SoleItemExpectedError, "multiple items found"
end
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/hash/conversions.rb
new/lib/active_support/core_ext/hash/conversions.rb
--- old/lib/active_support/core_ext/hash/conversions.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/hash/conversions.rb 2022-05-09
15:34:58.000000000 +0200
@@ -1,6 +1,5 @@
# frozen_string_literal: true
-require "active_support/xml_mini"
require "active_support/core_ext/object/blank"
require "active_support/core_ext/object/to_param"
require "active_support/core_ext/object/to_query"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/active_support/core_ext/hash/indifferent_access.rb
new/lib/active_support/core_ext/hash/indifferent_access.rb
--- old/lib/active_support/core_ext/hash/indifferent_access.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/hash/indifferent_access.rb 2022-05-09
15:34:58.000000000 +0200
@@ -3,7 +3,7 @@
require "active_support/hash_with_indifferent_access"
class Hash
- # Returns an <tt>ActiveSupport::HashWithIndifferentAccess</tt> out of its
receiver:
+ # Returns an ActiveSupport::HashWithIndifferentAccess out of its receiver:
#
# { a: 1 }.with_indifferent_access['a'] # => 1
def with_indifferent_access
@@ -13,8 +13,8 @@
# Called when object is nested under an object that receives
# #with_indifferent_access. This method will be called on the current object
# by the enclosing object and is aliased to #with_indifferent_access by
- # default. Subclasses of Hash may overwrite this method to return +self+ if
- # converting to an <tt>ActiveSupport::HashWithIndifferentAccess</tt> would
not be
+ # default. Subclasses of Hash may override this method to return +self+ if
+ # converting to an ActiveSupport::HashWithIndifferentAccess would not be
# desirable.
#
# b = { b: 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/active_support/core_ext/kernel/singleton_class.rb
new/lib/active_support/core_ext/kernel/singleton_class.rb
--- old/lib/active_support/core_ext/kernel/singleton_class.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/kernel/singleton_class.rb 2022-05-09
15:34:58.000000000 +0200
@@ -1,7 +1,7 @@
# frozen_string_literal: true
module Kernel
- # class_eval on an object acts like singleton_class.class_eval.
+ # class_eval on an object acts like +singleton_class.class_eval+.
def class_eval(*args, &block)
singleton_class.class_eval(*args, &block)
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/lib/active_support/core_ext/module/attribute_accessors_per_thread.rb
new/lib/active_support/core_ext/module/attribute_accessors_per_thread.rb
--- old/lib/active_support/core_ext/module/attribute_accessors_per_thread.rb
2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/module/attribute_accessors_per_thread.rb
2022-05-09 15:34:58.000000000 +0200
@@ -9,8 +9,8 @@
# So the values are scoped within the Thread.current space under the class name
# of the module.
#
-# Note that it can also be scoped per-fiber if
Rails.application.config.active_support.isolation_level
-# is set to `:fiber`
+# Note that it can also be scoped per-fiber if
+Rails.application.config.active_support.isolation_level+
+# is set to +:fiber+.
class Module
# Defines a per-thread class attribute and creates class and instance reader
methods.
# The underlying per-thread class variable is set to +nil+, if it is not
previously defined.
@@ -21,7 +21,7 @@
#
# Current.user = "DHH"
# Current.user # => "DHH"
- # Thread.new { Current.user }.values # => nil
+ # Thread.new { Current.user }.value # => nil
#
# The attribute name must be a valid method name in Ruby.
#
@@ -118,7 +118,7 @@
# Account.user # => "DHH"
# Account.new.user # => "DHH"
#
- # Unlike `mattr_accessor`, values are *not* shared with subclasses or parent
classes.
+ # Unlike +mattr_accessor+, values are *not* shared with subclasses or parent
classes.
# If a subclass changes the value, the parent class' value is not changed.
# If the parent class changes the value, the value of subclasses is not
changed.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/numeric/conversions.rb
new/lib/active_support/core_ext/numeric/conversions.rb
--- old/lib/active_support/core_ext/numeric/conversions.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/numeric/conversions.rb 2022-05-09
15:34:58.000000000 +0200
@@ -7,7 +7,7 @@
module NumericWithFormat
# Provides options for converting numbers into formatted strings.
# Options are provided for phone numbers, currency, percentage,
- # precision, positional notation, file size and pretty printing.
+ # precision, positional notation, file size, and pretty printing.
#
# This method is aliased to <tt>to_formatted_s</tt>.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/object/json.rb
new/lib/active_support/core_ext/object/json.rb
--- old/lib/active_support/core_ext/object/json.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/object/json.rb 2022-05-09
15:34:58.000000000 +0200
@@ -1,6 +1,6 @@
# frozen_string_literal: true
-# Hack to load json gem first so we can overwrite its to_json.
+# Hack to load json gem first so we can override its to_json.
require "json"
require "bigdecimal"
require "ipaddr"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/range/overlaps.rb
new/lib/active_support/core_ext/range/overlaps.rb
--- old/lib/active_support/core_ext/range/overlaps.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/range/overlaps.rb 2022-05-09
15:34:58.000000000 +0200
@@ -5,6 +5,6 @@
# (1..5).overlaps?(4..6) # => true
# (1..5).overlaps?(7..9) # => false
def overlaps?(other)
- cover?(other.first) || other.cover?(first)
+ other.begin == self.begin || cover?(other.begin) ||
other.cover?(self.begin)
end
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/securerandom.rb
new/lib/active_support/core_ext/securerandom.rb
--- old/lib/active_support/core_ext/securerandom.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/securerandom.rb 2022-05-09
15:34:58.000000000 +0200
@@ -12,7 +12,7 @@
#
# If _n_ is not specified or is +nil+, 16 is assumed. It may be larger in
the future.
#
- # The result may contain alphanumeric characters except 0, O, I and l.
+ # The result may contain alphanumeric characters except 0, O, I, and l.
#
# p SecureRandom.base58 # => "4kUgL2pdQMSCQtjE"
# p SecureRandom.base58(24) # => "77TMHrHJFvFDwodq8w7Ev2m7"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/string/conversions.rb
new/lib/active_support/core_ext/string/conversions.rb
--- old/lib/active_support/core_ext/string/conversions.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/string/conversions.rb 2022-05-09
15:34:58.000000000 +0200
@@ -5,10 +5,10 @@
class String
# Converts a string to a Time value.
- # The +form+ can be either :utc or :local (default :local).
+ # The +form+ can be either +:utc+ or +:local+ (default +:local+).
#
# The time is parsed using Time.parse method.
- # If +form+ is :local, then the time is in the system timezone.
+ # If +form+ is +:local+, then the time is in the system timezone.
# If the date part is missing then the current date is used and if
# the time part is missing then it is assumed to be 00:00:00.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/string/inquiry.rb
new/lib/active_support/core_ext/string/inquiry.rb
--- old/lib/active_support/core_ext/string/inquiry.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/string/inquiry.rb 2022-05-09
15:34:58.000000000 +0200
@@ -4,7 +4,7 @@
require "active_support/environment_inquirer"
class String
- # Wraps the current string in the <tt>ActiveSupport::StringInquirer</tt>
class,
+ # Wraps the current string in the ActiveSupport::StringInquirer class,
# which gives you a prettier way to test for equality.
#
# env = 'production'.inquiry
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/string/output_safety.rb
new/lib/active_support/core_ext/string/output_safety.rb
--- old/lib/active_support/core_ext/string/output_safety.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/string/output_safety.rb 2022-05-09
15:34:58.000000000 +0200
@@ -12,7 +12,7 @@
JSON_ESCAPE_REGEXP = /[\u2028\u2029&><]/u
# Following XML requirements: https://www.w3.org/TR/REC-xml/#NT-Name
- TAG_NAME_START_REGEXP_SET =
":A-Z_a-z\u{C0}-\u{D6}\u{D8}-\u{F6}\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}"
\
+ TAG_NAME_START_REGEXP_SET =
"@:A-Z_a-z\u{C0}-\u{D6}\u{D8}-\u{F6}\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}"
\
"\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}"
\
"\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}"
TAG_NAME_START_REGEXP = /[^#{TAG_NAME_START_REGEXP_SET}]/
@@ -105,7 +105,7 @@
# WARNING: this helper only works with valid JSON. Using this on non-JSON
values
# will open up serious XSS vulnerabilities. For example, if you replace the
# +current_user.to_json+ in the example above with user input instead, the
browser
- # will happily eval() that string as JavaScript.
+ # will happily <tt>eval()</tt> that string as JavaScript.
#
# The escaping performed in this method is identical to those performed in
the
# Active Support JSON encoder when
+ActiveSupport.escape_html_entities_in_json+ is
@@ -171,7 +171,7 @@
alias_method :original_concat, :concat
private :original_concat
- # Raised when <tt>ActiveSupport::SafeBuffer#safe_concat</tt> is called on
unsafe buffers.
+ # Raised when ActiveSupport::SafeBuffer#safe_concat is called on unsafe
buffers.
class SafeConcatError < StandardError
def initialize
super "Could not concatenate to the buffer because it is not html
safe."
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/time/calculations.rb
new/lib/active_support/core_ext/time/calculations.rb
--- old/lib/active_support/core_ext/time/calculations.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/time/calculations.rb 2022-05-09
15:34:58.000000000 +0200
@@ -126,8 +126,8 @@
# Returns a new Time where one or more of the elements have been changed
according
# to the +options+ parameter. The time options (<tt>:hour</tt>,
<tt>:min</tt>,
# <tt>:sec</tt>, <tt>:usec</tt>, <tt>:nsec</tt>) reset cascadingly, so if
only
- # the hour is passed, then minute, sec, usec and nsec is set to 0. If the
hour
- # and minute is passed, then sec, usec and nsec is set to 0. The +options+
parameter
+ # the hour is passed, then minute, sec, usec, and nsec is set to 0. If the
hour
+ # and minute is passed, then sec, usec, and nsec is set to 0. The +options+
parameter
# takes a hash with any of these keys: <tt>:year</tt>, <tt>:month</tt>,
<tt>:day</tt>,
# <tt>:hour</tt>, <tt>:min</tt>, <tt>:sec</tt>, <tt>:usec</tt>,
<tt>:nsec</tt>,
# <tt>:offset</tt>. Pass either <tt>:usec</tt> or <tt>:nsec</tt>, not both.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/core_ext/time/zones.rb
new/lib/active_support/core_ext/time/zones.rb
--- old/lib/active_support/core_ext/time/zones.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/core_ext/time/zones.rb 2022-05-09
15:34:58.000000000 +0200
@@ -21,8 +21,8 @@
#
# * A Rails TimeZone object.
# * An identifier for a Rails TimeZone object (e.g., "Eastern Time (US &
Canada)", <tt>-5.hours</tt>).
- # * A TZInfo::Timezone object.
- # * An identifier for a TZInfo::Timezone object (e.g., "America/New_York").
+ # * A <tt>TZInfo::Timezone</tt> object.
+ # * An identifier for a <tt>TZInfo::Timezone</tt> object (e.g.,
"America/New_York").
#
# Here's an example of how you might set <tt>Time.zone</tt> on a per
request basis and reset it when the request is done.
# <tt>current_user.time_zone</tt> just needs to return a string
identifying the user's preferred time zone:
@@ -55,7 +55,7 @@
# end
# end
#
- # NOTE: This won't affect any <tt>ActiveSupport::TimeWithZone</tt>
+ # NOTE: This won't affect any ActiveSupport::TimeWithZone
# objects that have already been created, e.g. any model timestamp
# attributes that have been read before the block will remain in
# the application's default timezone.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/deprecation/behaviors.rb
new/lib/active_support/deprecation/behaviors.rb
--- old/lib/active_support/deprecation/behaviors.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/deprecation/behaviors.rb 2022-05-09
15:34:58.000000000 +0200
@@ -3,7 +3,7 @@
require "active_support/notifications"
module ActiveSupport
- # Raised when <tt>ActiveSupport::Deprecation::Behavior#behavior</tt> is set
with <tt>:raise</tt>.
+ # Raised when ActiveSupport::Deprecation::Behavior#behavior is set with
<tt>:raise</tt>.
# You would set <tt>:raise</tt>, as a behavior to raise errors and
proactively report exceptions from deprecations.
class DeprecationException < StandardError
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/deprecation/proxy_wrappers.rb
new/lib/active_support/deprecation/proxy_wrappers.rb
--- old/lib/active_support/deprecation/proxy_wrappers.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/deprecation/proxy_wrappers.rb 2022-05-09
15:34:58.000000000 +0200
@@ -26,7 +26,7 @@
end
# DeprecatedObjectProxy transforms an object into a deprecated one. It
- # takes an object, a deprecation message and optionally a deprecator. The
+ # takes an object, a deprecation message, and optionally a deprecator. The
# deprecator defaults to +ActiveSupport::Deprecator+ if none is specified.
#
# deprecated_object =
ActiveSupport::Deprecation::DeprecatedObjectProxy.new(Object.new, "This object
is now deprecated")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/deprecation.rb
new/lib/active_support/deprecation.rb
--- old/lib/active_support/deprecation.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/deprecation.rb 2022-05-09 15:34:58.000000000
+0200
@@ -4,7 +4,7 @@
module ActiveSupport
# \Deprecation specifies the API used by Rails to deprecate methods, instance
- # variables, objects and constants.
+ # variables, objects, and constants.
class Deprecation
# active_support.rb sets an autoload for ActiveSupport::Deprecation.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/error_reporter.rb
new/lib/active_support/error_reporter.rb
--- old/lib/active_support/error_reporter.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/error_reporter.rb 2022-05-09 15:34:58.000000000
+0200
@@ -28,8 +28,8 @@
# end
#
# Additionally a +severity+ can be passed along to communicate how important
the error report is.
- # +severity+ can be one of +:error+, +:warning+ or +:info+. Handled errors
default to the +:warning+
- # severity, and unhandled ones to +error+.
+ # +severity+ can be one of +:error+, +:warning+, or +:info+. Handled errors
default to the +:warning+
+ # severity, and unhandled ones to +:error+.
#
# Both +handle+ and +record+ pass through the return value from the block.
In the case of +handle+
# rescuing an error, a fallback can be provided. The fallback must be a
callable whose result will
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/evented_file_update_checker.rb
new/lib/active_support/evented_file_update_checker.rb
--- old/lib/active_support/evented_file_update_checker.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/evented_file_update_checker.rb 2022-05-09
15:34:58.000000000 +0200
@@ -8,8 +8,8 @@
module ActiveSupport
# Allows you to "listen" to changes in a file system.
- # The evented file updater does not hit disk when checking for updates
- # instead it uses platform specific file system events to trigger a change
+ # The evented file updater does not hit disk when checking for updates.
+ # Instead, it uses platform-specific file system events to trigger a change
# in state.
#
# The file checker takes an array of files to watch or a hash specifying
directories
@@ -17,8 +17,6 @@
# EventedFileUpdateChecker#execute is run or when
EventedFileUpdateChecker#execute_if_updated
# is run and there have been changes to the file system.
#
- # Note: Forking will cause the first call to `updated?` to return `true`.
- #
# Example:
#
# checker = ActiveSupport::EventedFileUpdateChecker.new(["/tmp/foo"]) {
puts "changed" }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/gem_version.rb
new/lib/active_support/gem_version.rb
--- old/lib/active_support/gem_version.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/gem_version.rb 2022-05-09 15:34:58.000000000
+0200
@@ -1,7 +1,7 @@
# frozen_string_literal: true
module ActiveSupport
- # Returns the version of the currently loaded Active Support as a
<tt>Gem::Version</tt>.
+ # Returns the currently loaded version of Active Support as a
<tt>Gem::Version</tt>.
def self.gem_version
Gem::Version.new VERSION::STRING
end
@@ -9,8 +9,8 @@
module VERSION
MAJOR = 7
MINOR = 0
- TINY = 2
- PRE = "4"
+ TINY = 3
+ PRE = nil
STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/inflector/transliterate.rb
new/lib/active_support/inflector/transliterate.rb
--- old/lib/active_support/inflector/transliterate.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/inflector/transliterate.rb 2022-05-09
15:34:58.000000000 +0200
@@ -59,7 +59,7 @@
# transliterate('J??rgen', locale: :de)
# # => "Juergen"
#
- # Transliteration is restricted to UTF-8, US-ASCII and GB18030 strings
+ # Transliteration is restricted to UTF-8, US-ASCII, and GB18030 strings.
# Other encodings will raise an ArgumentError.
def transliterate(string, replacement = "?", locale: nil)
string = string.dup if string.frozen?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/isolated_execution_state.rb
new/lib/active_support/isolated_execution_state.rb
--- old/lib/active_support/isolated_execution_state.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/isolated_execution_state.rb 2022-05-09
15:34:58.000000000 +0200
@@ -49,6 +49,14 @@
current.clear
end
+ def share_with(other)
+ # Action Controller streaming spawns a new thread and copy thread
locals.
+ # We do the same here for backward compatibility, but this is very
much a hack
+ # and streaming should be rethought.
+ context = @isolation_level == :thread ? Thread.current : Fiber.current
+ context.active_support_execution_state =
other.active_support_execution_state.dup
+ end
+
private
def current_thread
Thread.current.active_support_execution_state ||= {}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/key_generator.rb
new/lib/active_support/key_generator.rb
--- old/lib/active_support/key_generator.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/key_generator.rb 2022-05-09 15:34:58.000000000
+0200
@@ -33,17 +33,17 @@
@hash_digest_class = options[:hash_digest_class] ||
self.class.hash_digest_class
end
- # Returns a derived key suitable for use. The default key_size is chosen
+ # Returns a derived key suitable for use. The default +key_size+ is chosen
# to be compatible with the default settings of
ActiveSupport::MessageVerifier.
- # i.e. OpenSSL::Digest::SHA1#block_length
+ # i.e. <tt>OpenSSL::Digest::SHA1#block_length</tt>
def generate_key(salt, key_size = 64)
OpenSSL::PKCS5.pbkdf2_hmac(@secret, salt, @iterations, key_size,
@hash_digest_class.new)
end
end
# CachingKeyGenerator is a wrapper around KeyGenerator which allows users to
avoid
- # re-executing the key generation process when it's called using the same
salt and
- # key_size.
+ # re-executing the key generation process when it's called using the same
+salt+ and
+ # +key_size+.
class CachingKeyGenerator
def initialize(key_generator)
@key_generator = key_generator
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/lazy_load_hooks.rb
new/lib/active_support/lazy_load_hooks.rb
--- old/lib/active_support/lazy_load_hooks.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/lazy_load_hooks.rb 2022-05-09 15:34:58.000000000
+0200
@@ -1,14 +1,14 @@
# frozen_string_literal: true
module ActiveSupport
- # lazy_load_hooks allows Rails to lazily load a lot of components and thus
+ # LazyLoadHooks allows Rails to lazily load a lot of components and thus
# making the app boot faster. Because of this feature now there is no need to
# require <tt>ActiveRecord::Base</tt> at boot time purely to apply
# configuration. Instead a hook is registered that applies configuration once
# <tt>ActiveRecord::Base</tt> is loaded. Here <tt>ActiveRecord::Base</tt> is
# used as example but this feature can be applied elsewhere too.
#
- # Here is an example where +on_load+ method is called to register a hook.
+ # Here is an example where on_load method is called to register a hook.
#
# initializer 'active_record.initialize_timezone' do
# ActiveSupport.on_load(:active_record) do
@@ -18,10 +18,14 @@
# end
#
# When the entirety of +ActiveRecord::Base+ has been
- # evaluated then +run_load_hooks+ is invoked. The very last line of
+ # evaluated then run_load_hooks is invoked. The very last line of
# +ActiveRecord::Base+ is:
#
# ActiveSupport.run_load_hooks(:active_record, ActiveRecord::Base)
+ #
+ # run_load_hooks will then execute all the hooks that were registered
+ # with the on_load method. In the case of the above example, it will
+ # execute the block of code that is in the +initializer+.
module LazyLoadHooks
def self.extended(base) # :nodoc:
base.class_eval do
@@ -46,6 +50,13 @@
@load_hooks[name] << [block, options]
end
+ # Executes all blocks registered to +name+ via on_load, using +base+ as the
+ # evaluation context.
+ #
+ # ActiveSupport.run_load_hooks(:active_record, ActiveRecord::Base)
+ #
+ # In the case of the above example, it will execute all hooks registered
+ # for +:active_record+ within the class +ActiveRecord::Base+.
def run_load_hooks(name, base = Object)
@loaded[name] << base
@load_hooks[name].each do |hook, options|
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/log_subscriber/test_helper.rb
new/lib/active_support/log_subscriber/test_helper.rb
--- old/lib/active_support/log_subscriber/test_helper.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/log_subscriber/test_helper.rb 2022-05-09
15:34:58.000000000 +0200
@@ -27,13 +27,13 @@
#
# All you need to do is to ensure that your log subscriber is added to
# Rails::Subscriber, as in the second line of the code above. The test
- # helpers are responsible for setting up the queue, subscriptions and
+ # helpers are responsible for setting up the queue and subscriptions, and
# turning colors in logs off.
#
# The messages are available in the @logger instance, which is a logger
with
# limited powers (it actually does not send anything to your output), and
# you can collect them doing @logger.logged(level), where level is the
level
- # used in logging, like info, debug, warn and so on.
+ # used in logging, like info, debug, warn, and so on.
module TestHelper
def setup # :nodoc:
@logger = MockLogger.new
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/log_subscriber.rb
new/lib/active_support/log_subscriber.rb
--- old/lib/active_support/log_subscriber.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/log_subscriber.rb 2022-05-09 15:34:58.000000000
+0200
@@ -6,7 +6,7 @@
module ActiveSupport
# <tt>ActiveSupport::LogSubscriber</tt> is an object set to consume
- # <tt>ActiveSupport::Notifications</tt> with the sole purpose of logging
them.
+ # ActiveSupport::Notifications with the sole purpose of logging them.
# The log subscriber dispatches notifications to a registered object based
# on its given namespace.
#
@@ -36,7 +36,7 @@
# it will properly dispatch the event
# (<tt>ActiveSupport::Notifications::Event</tt>) to the sql method.
#
- # Being an <tt>ActiveSupport::Notifications</tt> consumer,
+ # Being an ActiveSupport::Notifications consumer,
# <tt>ActiveSupport::LogSubscriber</tt> exposes a simple interface to check
if
# instrumented code raises an exception. It is common to log a different
# message in case of an error, and this can be achieved by extending
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/logger.rb
new/lib/active_support/logger.rb
--- old/lib/active_support/logger.rb 2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/logger.rb 2022-05-09 15:34:58.000000000 +0200
@@ -22,6 +22,10 @@
# Broadcasts logs to multiple loggers.
def self.broadcast(logger) # :nodoc:
Module.new do
+ define_singleton_method(:extended) do |base|
+ base.public_send(:broadcast_to, logger) if
base.respond_to?(:broadcast_to)
+ end
+
define_method(:add) do |*args, &block|
logger.add(*args, &block)
super(*args, &block)
@@ -42,11 +46,6 @@
super(name)
end
- define_method(:formatter=) do |formatter|
- logger.formatter = formatter
- super(formatter)
- end
-
define_method(:level=) do |level|
logger.level = level
super(level)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/message_encryptor.rb
new/lib/active_support/message_encryptor.rb
--- old/lib/active_support/message_encryptor.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/message_encryptor.rb 2022-05-09 15:34:58.000000000
+0200
@@ -13,7 +13,7 @@
# The cipher text and initialization vector are base64 encoded and returned
# to you.
#
- # This can be used in situations similar to the <tt>MessageVerifier</tt>, but
+ # This can be used in situations similar to the MessageVerifier, but
# where you don't want users to be able to determine the value of the
payload.
#
# len = ActiveSupport::MessageEncryptor.key_len
@@ -22,6 +22,7 @@
# crypt = ActiveSupport::MessageEncryptor.new(key)
# => #<ActiveSupport::MessageEncryptor ...>
# encrypted_data = crypt.encrypt_and_sign('my secret data')
# => "NlFBTTMwOUV5UlA1QlNEN2xkY2d6eThYWWh..."
# crypt.decrypt_and_verify(encrypted_data)
# => "my secret data"
+ #
# The +decrypt_and_verify+ method will raise an
# <tt>ActiveSupport::MessageEncryptor::InvalidMessage</tt> exception if the
data
# provided cannot be decrypted or verified.
@@ -124,10 +125,10 @@
# Initialize a new MessageEncryptor. +secret+ must be at least as long as
# the cipher key size. For the default 'aes-256-gcm' cipher, this is 256
# bits. If you are using a user-entered secret, you can generate a suitable
- # key by using <tt>ActiveSupport::KeyGenerator</tt> or a similar key
+ # key by using ActiveSupport::KeyGenerator or a similar key
# derivation function.
#
- # First additional parameter is used as the signature key for
+MessageVerifier+.
+ # First additional parameter is used as the signature key for
MessageVerifier.
# This allows you to specify keys to encrypt and sign data.
#
# ActiveSupport::MessageEncryptor.new('secret', 'signature_secret')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/notifications.rb
new/lib/active_support/notifications.rb
--- old/lib/active_support/notifications.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/notifications.rb 2022-05-09 15:34:58.000000000
+0200
@@ -4,7 +4,7 @@
require "active_support/notifications/fanout"
module ActiveSupport
- # = Notifications
+ # = \Notifications
#
# <tt>ActiveSupport::Notifications</tt> provides an instrumentation API for
# Ruby.
@@ -84,7 +84,7 @@
# event.payload[:exception] # => ["ArgumentError", "Invalid value"]
# event.payload[:exception_object] # => #<ArgumentError: Invalid value>
#
- # As the earlier example depicts, the class
<tt>ActiveSupport::Notifications::Event</tt>
+ # As the earlier example depicts, the class
ActiveSupport::Notifications::Event
# is able to take the arguments as they come and provide an object-oriented
# interface to that data.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/ordered_options.rb
new/lib/active_support/ordered_options.rb
--- old/lib/active_support/ordered_options.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/ordered_options.rb 2022-05-09 15:34:58.000000000
+0200
@@ -68,7 +68,7 @@
end
end
- # +InheritableOptions+ provides a constructor to build an +OrderedOptions+
+ # +InheritableOptions+ provides a constructor to build an OrderedOptions
# hash inherited from another hash.
#
# Use this if you already have some hash and you want to create a new one
based on it.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/railtie.rb
new/lib/active_support/railtie.rb
--- old/lib/active_support/railtie.rb 2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/railtie.rb 2022-05-09 15:34:58.000000000 +0200
@@ -11,8 +11,10 @@
config.eager_load_namespaces << ActiveSupport
initializer "active_support.isolation_level" do |app|
- if level = app.config.active_support.delete(:isolation_level)
- ActiveSupport::IsolatedExecutionState.isolation_level = level
+ config.after_initialize do
+ if level = app.config.active_support.delete(:isolation_level)
+ ActiveSupport::IsolatedExecutionState.isolation_level = level
+ end
end
end
@@ -41,14 +43,12 @@
end
initializer "active_support.reset_all_current_attributes_instances" do
|app|
- executor_around_test_case =
app.config.active_support.executor_around_test_case
-
app.reloader.before_class_unload {
ActiveSupport::CurrentAttributes.clear_all }
app.executor.to_run {
ActiveSupport::CurrentAttributes.reset_all }
app.executor.to_complete {
ActiveSupport::CurrentAttributes.reset_all }
ActiveSupport.on_load(:active_support_test_case) do
- if executor_around_test_case
+ if app.config.active_support.executor_around_test_case
require "active_support/executor/test_helper"
include ActiveSupport::Executor::TestHelper
else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/rescuable.rb
new/lib/active_support/rescuable.rb
--- old/lib/active_support/rescuable.rb 2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/rescuable.rb 2022-05-09 15:34:58.000000000 +0200
@@ -74,7 +74,7 @@
# Matches an exception to a handler based on the exception class.
#
# If no handler matches the exception, check for a handler matching the
- # (optional) exception.cause. If no handler matches the exception or its
+ # (optional) +exception.cause+. If no handler matches the exception or
its
# cause, this returns +nil+, so you can deal with unhandled exceptions.
# Be sure to re-raise unhandled exceptions if this is what you expect.
#
@@ -160,7 +160,7 @@
end
# Delegates to the class method, but uses the instance as the subject for
- # rescue_from handlers (method calls, instance_exec blocks).
+ # rescue_from handlers (method calls, +instance_exec+ blocks).
def rescue_with_handler(exception)
self.class.rescue_with_handler exception, object: self
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/secure_compare_rotator.rb
new/lib/active_support/secure_compare_rotator.rb
--- old/lib/active_support/secure_compare_rotator.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/secure_compare_rotator.rb 2022-05-09
15:34:58.000000000 +0200
@@ -4,7 +4,7 @@
require "active_support/messages/rotator"
module ActiveSupport
- # The ActiveSupport::SecureCompareRotator is a wrapper around
+ActiveSupport::SecurityUtils.secure_compare+
+ # The ActiveSupport::SecureCompareRotator is a wrapper around
ActiveSupport::SecurityUtils.secure_compare
# and allows you to rotate a previously defined value to a new one.
#
# It can be used as follow:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/tagged_logging.rb
new/lib/active_support/tagged_logging.rb
--- old/lib/active_support/tagged_logging.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/tagged_logging.rb 2022-05-09 15:34:58.000000000
+0200
@@ -1,6 +1,7 @@
# frozen_string_literal: true
require "active_support/core_ext/module/delegation"
+require "active_support/core_ext/module/redefine_method"
require "active_support/core_ext/object/blank"
require "logger"
require "active_support/logger"
@@ -94,6 +95,20 @@
delegate :push_tags, :pop_tags, :clear_tags!, to: :formatter
+ def broadcast_to(other_logger) # :nodoc:
+ define_singleton_method(:formatter=) do |formatter|
+ other_logger.formatter ||= formatter
+
+ other_logger.formatter.singleton_class.redefine_method(:current_tags)
do
+ formatter.current_tags
+ end
+
+ super(formatter)
+ end
+
+ self.formatter = self.formatter.clone
+ end
+
def tagged(*tags)
if block_given?
formatter.tagged(*tags) { yield self }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/testing/assertions.rb
new/lib/active_support/testing/assertions.rb
--- old/lib/active_support/testing/assertions.rb 2022-04-26
21:32:32.000000000 +0200
+++ new/lib/active_support/testing/assertions.rb 2022-05-09
15:34:58.000000000 +0200
@@ -159,7 +159,7 @@
# @object = 42
# end
#
- # The keyword arguments :from and :to can be given to specify the
+ # The keyword arguments +:from+ and +:to+ can be given to specify the
# expected initial value and the expected value after the block was
# executed.
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/time_with_zone.rb
new/lib/active_support/time_with_zone.rb
--- old/lib/active_support/time_with_zone.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/time_with_zone.rb 2022-05-09 15:34:58.000000000
+0200
@@ -13,7 +13,7 @@
# system's <tt>ENV['TZ']</tt> zone.
#
# You shouldn't ever need to create a TimeWithZone instance directly via
+new+.
- # Instead use methods +local+, +parse+, +at+ and +now+ on TimeZone instances,
+ # Instead use methods +local+, +parse+, +at+, and +now+ on TimeZone
instances,
# and +in_time_zone+ on Time and DateTime instances.
#
# Time.zone = 'Eastern Time (US & Canada)' # => 'Eastern Time (US &
Canada)'
@@ -78,7 +78,7 @@
alias_method :getutc, :utc
alias_method :gmtime, :utc
- # Returns the underlying TZInfo::TimezonePeriod.
+ # Returns the underlying <tt>TZInfo::TimezonePeriod</tt>.
def period
@period ||= time_zone.period_for_utc(@utc)
end
@@ -395,8 +395,8 @@
# Returns a new +ActiveSupport::TimeWithZone+ where one or more of the
elements have
# been changed according to the +options+ parameter. The time options
(<tt>:hour</tt>,
# <tt>:min</tt>, <tt>:sec</tt>, <tt>:usec</tt>, <tt>:nsec</tt>) reset
cascadingly,
- # so if only the hour is passed, then minute, sec, usec and nsec is set to
0. If the
- # hour and minute is passed, then sec, usec and nsec is set to 0. The
+options+
+ # so if only the hour is passed, then minute, sec, usec, and nsec is set
to 0. If the
+ # hour and minute is passed, then sec, usec, and nsec is set to 0. The
+options+
# parameter takes a hash with any of these keys: <tt>:year</tt>,
<tt>:month</tt>,
# <tt>:day</tt>, <tt>:hour</tt>, <tt>:min</tt>, <tt>:sec</tt>,
<tt>:usec</tt>,
# <tt>:nsec</tt>, <tt>:offset</tt>, <tt>:zone</tt>. Pass either
<tt>:usec</tt>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/values/time_zone.rb
new/lib/active_support/values/time_zone.rb
--- old/lib/active_support/values/time_zone.rb 2022-04-26 21:32:32.000000000
+0200
+++ new/lib/active_support/values/time_zone.rb 2022-05-09 15:34:58.000000000
+0200
@@ -4,16 +4,16 @@
require "concurrent/map"
module ActiveSupport
- # The TimeZone class serves as a wrapper around TZInfo::Timezone instances.
+ # The TimeZone class serves as a wrapper around <tt>TZInfo::Timezone</tt>
instances.
# It allows us to do the following:
#
# * Limit the set of zones provided by TZInfo to a meaningful subset of 134
# zones.
# * Retrieve and display zones with a friendlier name
# (e.g., "Eastern Time (US & Canada)" instead of "America/New_York").
- # * Lazily load TZInfo::Timezone instances only when they're needed.
+ # * Lazily load <tt>TZInfo::Timezone</tt> instances only when they're needed.
# * Create ActiveSupport::TimeWithZone instances via TimeZone's +local+,
- # +parse+, +at+ and +now+ methods.
+ # +parse+, +at+, and +now+ methods.
#
# If you set <tt>config.time_zone</tt> in the Rails Application, you can
# access this TimeZone object via <tt>Time.zone</tt>:
@@ -543,13 +543,13 @@
tzinfo.local_to_utc(time, dst)
end
- # Available so that TimeZone instances respond like TZInfo::Timezone
+ # Available so that TimeZone instances respond like
<tt>TZInfo::Timezone</tt>
# instances.
def period_for_utc(time)
tzinfo.period_for_utc(time)
end
- # Available so that TimeZone instances respond like TZInfo::Timezone
+ # Available so that TimeZone instances respond like
<tt>TZInfo::Timezone</tt>
# instances.
def period_for_local(time, dst = true)
tzinfo.period_for_local(time, dst) { |periods| periods.last }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/lib/active_support/version.rb
new/lib/active_support/version.rb
--- old/lib/active_support/version.rb 2022-04-26 21:32:32.000000000 +0200
+++ new/lib/active_support/version.rb 2022-05-09 15:34:58.000000000 +0200
@@ -3,7 +3,7 @@
require_relative "gem_version"
module ActiveSupport
- # Returns the version of the currently loaded ActiveSupport as a
<tt>Gem::Version</tt>
+ # Returns the currently loaded version of Active Support as a
<tt>Gem::Version</tt>.
def self.version
gem_version
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata 2022-04-26 21:32:32.000000000 +0200
+++ new/metadata 2022-05-09 15:34:58.000000000 +0200
@@ -1,14 +1,14 @@
--- !ruby/object:Gem::Specification
name: activesupport
version: !ruby/object:Gem::Version
- version: 7.0.2.4
+ version: 7.0.3
platform: ruby
authors:
- David Heinemeier Hansson
autorequire:
bindir: bin
cert_chain: []
-date: 2022-04-26 00:00:00.000000000 Z
+date: 2022-05-09 00:00:00.000000000 Z
dependencies:
- !ruby/object:Gem::Dependency
name: i18n
@@ -359,10 +359,10 @@
- MIT
metadata:
bug_tracker_uri: https://github.com/rails/rails/issues
- changelog_uri:
https://github.com/rails/rails/blob/v7.0.2.4/activesupport/CHANGELOG.md
- documentation_uri: https://api.rubyonrails.org/v7.0.2.4/
+ changelog_uri:
https://github.com/rails/rails/blob/v7.0.3/activesupport/CHANGELOG.md
+ documentation_uri: https://api.rubyonrails.org/v7.0.3/
mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
- source_code_uri: https://github.com/rails/rails/tree/v7.0.2.4/activesupport
+ source_code_uri: https://github.com/rails/rails/tree/v7.0.3/activesupport
rubygems_mfa_required: 'true'
post_install_message:
rdoc_options:
@@ -381,7 +381,7 @@
- !ruby/object:Gem::Version
version: '0'
requirements: []
-rubygems_version: 3.1.6
+rubygems_version: 3.3.7
signing_key:
specification_version: 4
summary: A toolkit of support libraries and Ruby core extensions extracted
from the