activesupport 7.0.8.7 → 7.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +229 -397
  3. data/MIT-LICENSE +1 -1
  4. data/README.rdoc +5 -5
  5. data/lib/active_support/actionable_error.rb +3 -1
  6. data/lib/active_support/array_inquirer.rb +3 -1
  7. data/lib/active_support/backtrace_cleaner.rb +39 -7
  8. data/lib/active_support/benchmarkable.rb +1 -0
  9. data/lib/active_support/broadcast_logger.rb +238 -0
  10. data/lib/active_support/builder.rb +1 -1
  11. data/lib/active_support/cache/coder.rb +153 -0
  12. data/lib/active_support/cache/entry.rb +134 -0
  13. data/lib/active_support/cache/file_store.rb +51 -19
  14. data/lib/active_support/cache/mem_cache_store.rb +98 -134
  15. data/lib/active_support/cache/memory_store.rb +85 -30
  16. data/lib/active_support/cache/null_store.rb +8 -2
  17. data/lib/active_support/cache/redis_cache_store.rb +166 -153
  18. data/lib/active_support/cache/serializer_with_fallback.rb +152 -0
  19. data/lib/active_support/cache/strategy/local_cache.rb +64 -13
  20. data/lib/active_support/cache.rb +364 -292
  21. data/lib/active_support/callbacks.rb +121 -136
  22. data/lib/active_support/code_generator.rb +15 -10
  23. data/lib/active_support/concern.rb +4 -2
  24. data/lib/active_support/concurrency/load_interlock_aware_monitor.rb +42 -3
  25. data/lib/active_support/concurrency/null_lock.rb +13 -0
  26. data/lib/active_support/configurable.rb +10 -0
  27. data/lib/active_support/core_ext/array/conversions.rb +1 -2
  28. data/lib/active_support/core_ext/array.rb +0 -1
  29. data/lib/active_support/core_ext/benchmark.rb +1 -0
  30. data/lib/active_support/core_ext/class/attribute.rb +2 -2
  31. data/lib/active_support/core_ext/class/subclasses.rb +17 -34
  32. data/lib/active_support/core_ext/date/blank.rb +4 -0
  33. data/lib/active_support/core_ext/date/conversions.rb +1 -2
  34. data/lib/active_support/core_ext/date.rb +0 -1
  35. data/lib/active_support/core_ext/date_and_time/calculations.rb +10 -0
  36. data/lib/active_support/core_ext/date_and_time/compatibility.rb +28 -1
  37. data/lib/active_support/core_ext/date_time/blank.rb +4 -0
  38. data/lib/active_support/core_ext/date_time/conversions.rb +6 -4
  39. data/lib/active_support/core_ext/date_time.rb +0 -1
  40. data/lib/active_support/core_ext/digest/uuid.rb +7 -10
  41. data/lib/active_support/core_ext/enumerable.rb +20 -80
  42. data/lib/active_support/core_ext/erb/util.rb +201 -0
  43. data/lib/active_support/core_ext/hash/conversions.rb +1 -1
  44. data/lib/active_support/core_ext/hash/deep_merge.rb +22 -14
  45. data/lib/active_support/core_ext/hash/keys.rb +4 -4
  46. data/lib/active_support/core_ext/module/attr_internal.rb +17 -6
  47. data/lib/active_support/core_ext/module/attribute_accessors.rb +6 -0
  48. data/lib/active_support/core_ext/module/attribute_accessors_per_thread.rb +34 -16
  49. data/lib/active_support/core_ext/module/concerning.rb +6 -6
  50. data/lib/active_support/core_ext/module/delegation.rb +20 -119
  51. data/lib/active_support/core_ext/module/deprecation.rb +12 -12
  52. data/lib/active_support/core_ext/module/introspection.rb +3 -1
  53. data/lib/active_support/core_ext/numeric/bytes.rb +9 -0
  54. data/lib/active_support/core_ext/numeric/conversions.rb +5 -3
  55. data/lib/active_support/core_ext/numeric.rb +0 -1
  56. data/lib/active_support/core_ext/object/blank.rb +45 -1
  57. data/lib/active_support/core_ext/object/deep_dup.rb +16 -0
  58. data/lib/active_support/core_ext/object/inclusion.rb +13 -5
  59. data/lib/active_support/core_ext/object/instance_variables.rb +4 -2
  60. data/lib/active_support/core_ext/object/json.rb +17 -7
  61. data/lib/active_support/core_ext/object/try.rb +2 -2
  62. data/lib/active_support/core_ext/object/with.rb +46 -0
  63. data/lib/active_support/core_ext/object/with_options.rb +4 -4
  64. data/lib/active_support/core_ext/object.rb +1 -0
  65. data/lib/active_support/core_ext/pathname/blank.rb +20 -0
  66. data/lib/active_support/core_ext/pathname/existence.rb +2 -0
  67. data/lib/active_support/core_ext/pathname.rb +1 -0
  68. data/lib/active_support/core_ext/range/conversions.rb +28 -7
  69. data/lib/active_support/core_ext/range/overlap.rb +40 -0
  70. data/lib/active_support/core_ext/range/sole.rb +17 -0
  71. data/lib/active_support/core_ext/range.rb +2 -2
  72. data/lib/active_support/core_ext/securerandom.rb +24 -12
  73. data/lib/active_support/core_ext/string/conversions.rb +1 -1
  74. data/lib/active_support/core_ext/string/filters.rb +24 -18
  75. data/lib/active_support/core_ext/string/indent.rb +1 -1
  76. data/lib/active_support/core_ext/string/inflections.rb +16 -5
  77. data/lib/active_support/core_ext/string/multibyte.rb +3 -3
  78. data/lib/active_support/core_ext/string/output_safety.rb +34 -177
  79. data/lib/active_support/core_ext/thread/backtrace/location.rb +12 -0
  80. data/lib/active_support/core_ext/time/calculations.rb +36 -30
  81. data/lib/active_support/core_ext/time/compatibility.rb +24 -0
  82. data/lib/active_support/core_ext/time/conversions.rb +1 -3
  83. data/lib/active_support/core_ext/time/zones.rb +4 -4
  84. data/lib/active_support/core_ext/time.rb +0 -1
  85. data/lib/active_support/core_ext.rb +0 -1
  86. data/lib/active_support/current_attributes.rb +60 -46
  87. data/lib/active_support/deep_mergeable.rb +53 -0
  88. data/lib/active_support/delegation.rb +202 -0
  89. data/lib/active_support/dependencies/autoload.rb +9 -16
  90. data/lib/active_support/deprecation/behaviors.rb +65 -42
  91. data/lib/active_support/deprecation/constant_accessor.rb +47 -25
  92. data/lib/active_support/deprecation/deprecators.rb +104 -0
  93. data/lib/active_support/deprecation/disallowed.rb +3 -5
  94. data/lib/active_support/deprecation/method_wrappers.rb +6 -23
  95. data/lib/active_support/deprecation/proxy_wrappers.rb +34 -22
  96. data/lib/active_support/deprecation/reporting.rb +49 -27
  97. data/lib/active_support/deprecation.rb +39 -9
  98. data/lib/active_support/deprecator.rb +7 -0
  99. data/lib/active_support/descendants_tracker.rb +66 -172
  100. data/lib/active_support/duration/iso8601_parser.rb +2 -2
  101. data/lib/active_support/duration/iso8601_serializer.rb +1 -4
  102. data/lib/active_support/duration.rb +13 -7
  103. data/lib/active_support/encrypted_configuration.rb +30 -9
  104. data/lib/active_support/encrypted_file.rb +9 -4
  105. data/lib/active_support/environment_inquirer.rb +22 -2
  106. data/lib/active_support/error_reporter/test_helper.rb +15 -0
  107. data/lib/active_support/error_reporter.rb +163 -36
  108. data/lib/active_support/evented_file_update_checker.rb +0 -1
  109. data/lib/active_support/execution_wrapper.rb +5 -6
  110. data/lib/active_support/file_update_checker.rb +6 -4
  111. data/lib/active_support/fork_tracker.rb +4 -32
  112. data/lib/active_support/gem_version.rb +4 -4
  113. data/lib/active_support/gzip.rb +2 -0
  114. data/lib/active_support/hash_with_indifferent_access.rb +50 -30
  115. data/lib/active_support/html_safe_translation.rb +19 -6
  116. data/lib/active_support/i18n.rb +1 -1
  117. data/lib/active_support/i18n_railtie.rb +20 -13
  118. data/lib/active_support/inflector/inflections.rb +2 -0
  119. data/lib/active_support/inflector/methods.rb +23 -11
  120. data/lib/active_support/inflector/transliterate.rb +3 -1
  121. data/lib/active_support/isolated_execution_state.rb +26 -22
  122. data/lib/active_support/json/decoding.rb +3 -2
  123. data/lib/active_support/json/encoding.rb +48 -48
  124. data/lib/active_support/key_generator.rb +9 -1
  125. data/lib/active_support/lazy_load_hooks.rb +7 -5
  126. data/lib/active_support/locale/en.yml +2 -0
  127. data/lib/active_support/log_subscriber.rb +74 -34
  128. data/lib/active_support/logger.rb +22 -60
  129. data/lib/active_support/logger_thread_safe_level.rb +10 -32
  130. data/lib/active_support/message_encryptor.rb +197 -53
  131. data/lib/active_support/message_encryptors.rb +141 -0
  132. data/lib/active_support/message_pack/cache_serializer.rb +23 -0
  133. data/lib/active_support/message_pack/extensions.rb +305 -0
  134. data/lib/active_support/message_pack/serializer.rb +63 -0
  135. data/lib/active_support/message_pack.rb +50 -0
  136. data/lib/active_support/message_verifier.rb +229 -89
  137. data/lib/active_support/message_verifiers.rb +137 -0
  138. data/lib/active_support/messages/codec.rb +65 -0
  139. data/lib/active_support/messages/metadata.rb +111 -45
  140. data/lib/active_support/messages/rotation_coordinator.rb +93 -0
  141. data/lib/active_support/messages/rotator.rb +38 -31
  142. data/lib/active_support/messages/serializer_with_fallback.rb +158 -0
  143. data/lib/active_support/multibyte/chars.rb +8 -3
  144. data/lib/active_support/multibyte/unicode.rb +9 -37
  145. data/lib/active_support/notifications/fanout.rb +248 -87
  146. data/lib/active_support/notifications/instrumenter.rb +93 -25
  147. data/lib/active_support/notifications.rb +29 -28
  148. data/lib/active_support/number_helper/number_converter.rb +16 -7
  149. data/lib/active_support/number_helper/number_to_currency_converter.rb +6 -6
  150. data/lib/active_support/number_helper/number_to_human_size_converter.rb +3 -3
  151. data/lib/active_support/number_helper/number_to_phone_converter.rb +1 -0
  152. data/lib/active_support/number_helper.rb +379 -318
  153. data/lib/active_support/option_merger.rb +2 -2
  154. data/lib/active_support/ordered_hash.rb +3 -3
  155. data/lib/active_support/ordered_options.rb +67 -15
  156. data/lib/active_support/parameter_filter.rb +84 -69
  157. data/lib/active_support/proxy_object.rb +8 -3
  158. data/lib/active_support/railtie.rb +25 -20
  159. data/lib/active_support/reloader.rb +12 -4
  160. data/lib/active_support/rescuable.rb +2 -0
  161. data/lib/active_support/secure_compare_rotator.rb +16 -9
  162. data/lib/active_support/string_inquirer.rb +4 -2
  163. data/lib/active_support/subscriber.rb +10 -27
  164. data/lib/active_support/syntax_error_proxy.rb +60 -0
  165. data/lib/active_support/tagged_logging.rb +64 -25
  166. data/lib/active_support/test_case.rb +156 -7
  167. data/lib/active_support/testing/assertions.rb +28 -12
  168. data/lib/active_support/testing/autorun.rb +0 -2
  169. data/lib/active_support/testing/constant_stubbing.rb +54 -0
  170. data/lib/active_support/testing/deprecation.rb +20 -27
  171. data/lib/active_support/testing/error_reporter_assertions.rb +107 -0
  172. data/lib/active_support/testing/isolation.rb +21 -9
  173. data/lib/active_support/testing/method_call_assertions.rb +7 -8
  174. data/lib/active_support/testing/parallelization/server.rb +18 -2
  175. data/lib/active_support/testing/parallelization/worker.rb +2 -2
  176. data/lib/active_support/testing/parallelization.rb +12 -1
  177. data/lib/active_support/testing/parallelize_executor.rb +8 -3
  178. data/lib/active_support/testing/setup_and_teardown.rb +2 -0
  179. data/lib/active_support/testing/stream.rb +1 -1
  180. data/lib/active_support/testing/tests_without_assertions.rb +19 -0
  181. data/lib/active_support/testing/time_helpers.rb +38 -16
  182. data/lib/active_support/time_with_zone.rb +12 -18
  183. data/lib/active_support/values/time_zone.rb +25 -14
  184. data/lib/active_support/version.rb +1 -1
  185. data/lib/active_support/xml_mini/jdom.rb +3 -10
  186. data/lib/active_support/xml_mini/nokogiri.rb +1 -1
  187. data/lib/active_support/xml_mini/nokogirisax.rb +1 -1
  188. data/lib/active_support/xml_mini/rexml.rb +1 -1
  189. data/lib/active_support/xml_mini.rb +14 -3
  190. data/lib/active_support.rb +15 -3
  191. metadata +142 -24
  192. data/lib/active_support/core_ext/array/deprecated_conversions.rb +0 -25
  193. data/lib/active_support/core_ext/date/deprecated_conversions.rb +0 -40
  194. data/lib/active_support/core_ext/date_time/deprecated_conversions.rb +0 -36
  195. data/lib/active_support/core_ext/numeric/deprecated_conversions.rb +0 -60
  196. data/lib/active_support/core_ext/range/deprecated_conversions.rb +0 -36
  197. data/lib/active_support/core_ext/range/include_time_with_zone.rb +0 -5
  198. data/lib/active_support/core_ext/range/overlaps.rb +0 -10
  199. data/lib/active_support/core_ext/time/deprecated_conversions.rb +0 -73
  200. data/lib/active_support/core_ext/uri.rb +0 -5
  201. data/lib/active_support/deprecation/instance_delegator.rb +0 -38
  202. data/lib/active_support/per_thread_registry.rb +0 -65
  203. data/lib/active_support/ruby_features.rb +0 -7
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activesupport
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.8.7
4
+ version: 7.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-12-10 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: i18n
@@ -37,6 +36,9 @@ dependencies:
37
36
  - - "~>"
38
37
  - !ruby/object:Gem::Version
39
38
  version: '2.0'
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ version: 2.0.5
40
42
  type: :runtime
41
43
  prerelease: false
42
44
  version_requirements: !ruby/object:Gem::Requirement
@@ -44,6 +46,9 @@ dependencies:
44
46
  - - "~>"
45
47
  - !ruby/object:Gem::Version
46
48
  version: '2.0'
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: 2.0.5
47
52
  - !ruby/object:Gem::Dependency
48
53
  name: concurrent-ruby
49
54
  requirement: !ruby/object:Gem::Requirement
@@ -53,7 +58,7 @@ dependencies:
53
58
  version: '1.0'
54
59
  - - ">="
55
60
  - !ruby/object:Gem::Version
56
- version: 1.0.2
61
+ version: 1.3.1
57
62
  type: :runtime
58
63
  prerelease: false
59
64
  version_requirements: !ruby/object:Gem::Requirement
@@ -63,7 +68,21 @@ dependencies:
63
68
  version: '1.0'
64
69
  - - ">="
65
70
  - !ruby/object:Gem::Version
66
- version: 1.0.2
71
+ version: 1.3.1
72
+ - !ruby/object:Gem::Dependency
73
+ name: connection_pool
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ">="
77
+ - !ruby/object:Gem::Version
78
+ version: 2.2.5
79
+ type: :runtime
80
+ prerelease: false
81
+ version_requirements: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: 2.2.5
67
86
  - !ruby/object:Gem::Dependency
68
87
  name: minitest
69
88
  requirement: !ruby/object:Gem::Requirement
@@ -78,6 +97,90 @@ dependencies:
78
97
  - - ">="
79
98
  - !ruby/object:Gem::Version
80
99
  version: '5.1'
100
+ - !ruby/object:Gem::Dependency
101
+ name: base64
102
+ requirement: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - ">="
105
+ - !ruby/object:Gem::Version
106
+ version: '0'
107
+ type: :runtime
108
+ prerelease: false
109
+ version_requirements: !ruby/object:Gem::Requirement
110
+ requirements:
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ version: '0'
114
+ - !ruby/object:Gem::Dependency
115
+ name: drb
116
+ requirement: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - ">="
119
+ - !ruby/object:Gem::Version
120
+ version: '0'
121
+ type: :runtime
122
+ prerelease: false
123
+ version_requirements: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ version: '0'
128
+ - !ruby/object:Gem::Dependency
129
+ name: bigdecimal
130
+ requirement: !ruby/object:Gem::Requirement
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ version: '0'
135
+ type: :runtime
136
+ prerelease: false
137
+ version_requirements: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
143
+ name: logger
144
+ requirement: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ version: 1.4.2
149
+ type: :runtime
150
+ prerelease: false
151
+ version_requirements: !ruby/object:Gem::Requirement
152
+ requirements:
153
+ - - ">="
154
+ - !ruby/object:Gem::Version
155
+ version: 1.4.2
156
+ - !ruby/object:Gem::Dependency
157
+ name: securerandom
158
+ requirement: !ruby/object:Gem::Requirement
159
+ requirements:
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ version: '0.3'
163
+ type: :runtime
164
+ prerelease: false
165
+ version_requirements: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - ">="
168
+ - !ruby/object:Gem::Version
169
+ version: '0.3'
170
+ - !ruby/object:Gem::Dependency
171
+ name: benchmark
172
+ requirement: !ruby/object:Gem::Requirement
173
+ requirements:
174
+ - - ">="
175
+ - !ruby/object:Gem::Version
176
+ version: '0.3'
177
+ type: :runtime
178
+ prerelease: false
179
+ version_requirements: !ruby/object:Gem::Requirement
180
+ requirements:
181
+ - - ">="
182
+ - !ruby/object:Gem::Version
183
+ version: '0.3'
81
184
  description: A toolkit of support libraries and Ruby core extensions extracted from
82
185
  the Rails framework. Rich support for multibyte strings, internationalization, time
83
186
  zones, and testing.
@@ -95,19 +198,24 @@ files:
95
198
  - lib/active_support/array_inquirer.rb
96
199
  - lib/active_support/backtrace_cleaner.rb
97
200
  - lib/active_support/benchmarkable.rb
201
+ - lib/active_support/broadcast_logger.rb
98
202
  - lib/active_support/builder.rb
99
203
  - lib/active_support/cache.rb
204
+ - lib/active_support/cache/coder.rb
205
+ - lib/active_support/cache/entry.rb
100
206
  - lib/active_support/cache/file_store.rb
101
207
  - lib/active_support/cache/mem_cache_store.rb
102
208
  - lib/active_support/cache/memory_store.rb
103
209
  - lib/active_support/cache/null_store.rb
104
210
  - lib/active_support/cache/redis_cache_store.rb
211
+ - lib/active_support/cache/serializer_with_fallback.rb
105
212
  - lib/active_support/cache/strategy/local_cache.rb
106
213
  - lib/active_support/cache/strategy/local_cache_middleware.rb
107
214
  - lib/active_support/callbacks.rb
108
215
  - lib/active_support/code_generator.rb
109
216
  - lib/active_support/concern.rb
110
217
  - lib/active_support/concurrency/load_interlock_aware_monitor.rb
218
+ - lib/active_support/concurrency/null_lock.rb
111
219
  - lib/active_support/concurrency/share_lock.rb
112
220
  - lib/active_support/configurable.rb
113
221
  - lib/active_support/configuration_file.rb
@@ -115,7 +223,6 @@ files:
115
223
  - lib/active_support/core_ext/array.rb
116
224
  - lib/active_support/core_ext/array/access.rb
117
225
  - lib/active_support/core_ext/array/conversions.rb
118
- - lib/active_support/core_ext/array/deprecated_conversions.rb
119
226
  - lib/active_support/core_ext/array/extract.rb
120
227
  - lib/active_support/core_ext/array/extract_options.rb
121
228
  - lib/active_support/core_ext/array/grouping.rb
@@ -133,7 +240,6 @@ files:
133
240
  - lib/active_support/core_ext/date/blank.rb
134
241
  - lib/active_support/core_ext/date/calculations.rb
135
242
  - lib/active_support/core_ext/date/conversions.rb
136
- - lib/active_support/core_ext/date/deprecated_conversions.rb
137
243
  - lib/active_support/core_ext/date/zones.rb
138
244
  - lib/active_support/core_ext/date_and_time/calculations.rb
139
245
  - lib/active_support/core_ext/date_and_time/compatibility.rb
@@ -144,10 +250,10 @@ files:
144
250
  - lib/active_support/core_ext/date_time/calculations.rb
145
251
  - lib/active_support/core_ext/date_time/compatibility.rb
146
252
  - lib/active_support/core_ext/date_time/conversions.rb
147
- - lib/active_support/core_ext/date_time/deprecated_conversions.rb
148
253
  - lib/active_support/core_ext/digest.rb
149
254
  - lib/active_support/core_ext/digest/uuid.rb
150
255
  - lib/active_support/core_ext/enumerable.rb
256
+ - lib/active_support/core_ext/erb/util.rb
151
257
  - lib/active_support/core_ext/file.rb
152
258
  - lib/active_support/core_ext/file/atomic.rb
153
259
  - lib/active_support/core_ext/hash.rb
@@ -184,7 +290,6 @@ files:
184
290
  - lib/active_support/core_ext/numeric.rb
185
291
  - lib/active_support/core_ext/numeric/bytes.rb
186
292
  - lib/active_support/core_ext/numeric/conversions.rb
187
- - lib/active_support/core_ext/numeric/deprecated_conversions.rb
188
293
  - lib/active_support/core_ext/numeric/time.rb
189
294
  - lib/active_support/core_ext/object.rb
190
295
  - lib/active_support/core_ext/object/acts_like.rb
@@ -198,16 +303,17 @@ files:
198
303
  - lib/active_support/core_ext/object/to_param.rb
199
304
  - lib/active_support/core_ext/object/to_query.rb
200
305
  - lib/active_support/core_ext/object/try.rb
306
+ - lib/active_support/core_ext/object/with.rb
201
307
  - lib/active_support/core_ext/object/with_options.rb
202
308
  - lib/active_support/core_ext/pathname.rb
309
+ - lib/active_support/core_ext/pathname/blank.rb
203
310
  - lib/active_support/core_ext/pathname/existence.rb
204
311
  - lib/active_support/core_ext/range.rb
205
312
  - lib/active_support/core_ext/range/compare_range.rb
206
313
  - lib/active_support/core_ext/range/conversions.rb
207
- - lib/active_support/core_ext/range/deprecated_conversions.rb
208
314
  - lib/active_support/core_ext/range/each.rb
209
- - lib/active_support/core_ext/range/include_time_with_zone.rb
210
- - lib/active_support/core_ext/range/overlaps.rb
315
+ - lib/active_support/core_ext/range/overlap.rb
316
+ - lib/active_support/core_ext/range/sole.rb
211
317
  - lib/active_support/core_ext/regexp.rb
212
318
  - lib/active_support/core_ext/securerandom.rb
213
319
  - lib/active_support/core_ext/string.rb
@@ -226,16 +332,17 @@ files:
226
332
  - lib/active_support/core_ext/string/zones.rb
227
333
  - lib/active_support/core_ext/symbol.rb
228
334
  - lib/active_support/core_ext/symbol/starts_ends_with.rb
335
+ - lib/active_support/core_ext/thread/backtrace/location.rb
229
336
  - lib/active_support/core_ext/time.rb
230
337
  - lib/active_support/core_ext/time/acts_like.rb
231
338
  - lib/active_support/core_ext/time/calculations.rb
232
339
  - lib/active_support/core_ext/time/compatibility.rb
233
340
  - lib/active_support/core_ext/time/conversions.rb
234
- - lib/active_support/core_ext/time/deprecated_conversions.rb
235
341
  - lib/active_support/core_ext/time/zones.rb
236
- - lib/active_support/core_ext/uri.rb
237
342
  - lib/active_support/current_attributes.rb
238
343
  - lib/active_support/current_attributes/test_helper.rb
344
+ - lib/active_support/deep_mergeable.rb
345
+ - lib/active_support/delegation.rb
239
346
  - lib/active_support/dependencies.rb
240
347
  - lib/active_support/dependencies/autoload.rb
241
348
  - lib/active_support/dependencies/interlock.rb
@@ -243,11 +350,12 @@ files:
243
350
  - lib/active_support/deprecation.rb
244
351
  - lib/active_support/deprecation/behaviors.rb
245
352
  - lib/active_support/deprecation/constant_accessor.rb
353
+ - lib/active_support/deprecation/deprecators.rb
246
354
  - lib/active_support/deprecation/disallowed.rb
247
- - lib/active_support/deprecation/instance_delegator.rb
248
355
  - lib/active_support/deprecation/method_wrappers.rb
249
356
  - lib/active_support/deprecation/proxy_wrappers.rb
250
357
  - lib/active_support/deprecation/reporting.rb
358
+ - lib/active_support/deprecator.rb
251
359
  - lib/active_support/descendants_tracker.rb
252
360
  - lib/active_support/digest.rb
253
361
  - lib/active_support/duration.rb
@@ -257,6 +365,7 @@ files:
257
365
  - lib/active_support/encrypted_file.rb
258
366
  - lib/active_support/environment_inquirer.rb
259
367
  - lib/active_support/error_reporter.rb
368
+ - lib/active_support/error_reporter/test_helper.rb
260
369
  - lib/active_support/evented_file_update_checker.rb
261
370
  - lib/active_support/execution_context.rb
262
371
  - lib/active_support/execution_context/test_helper.rb
@@ -290,10 +399,19 @@ files:
290
399
  - lib/active_support/logger_silence.rb
291
400
  - lib/active_support/logger_thread_safe_level.rb
292
401
  - lib/active_support/message_encryptor.rb
402
+ - lib/active_support/message_encryptors.rb
403
+ - lib/active_support/message_pack.rb
404
+ - lib/active_support/message_pack/cache_serializer.rb
405
+ - lib/active_support/message_pack/extensions.rb
406
+ - lib/active_support/message_pack/serializer.rb
293
407
  - lib/active_support/message_verifier.rb
408
+ - lib/active_support/message_verifiers.rb
409
+ - lib/active_support/messages/codec.rb
294
410
  - lib/active_support/messages/metadata.rb
295
411
  - lib/active_support/messages/rotation_configuration.rb
412
+ - lib/active_support/messages/rotation_coordinator.rb
296
413
  - lib/active_support/messages/rotator.rb
414
+ - lib/active_support/messages/serializer_with_fallback.rb
297
415
  - lib/active_support/multibyte.rb
298
416
  - lib/active_support/multibyte/chars.rb
299
417
  - lib/active_support/multibyte/unicode.rb
@@ -314,24 +432,25 @@ files:
314
432
  - lib/active_support/ordered_hash.rb
315
433
  - lib/active_support/ordered_options.rb
316
434
  - lib/active_support/parameter_filter.rb
317
- - lib/active_support/per_thread_registry.rb
318
435
  - lib/active_support/proxy_object.rb
319
436
  - lib/active_support/rails.rb
320
437
  - lib/active_support/railtie.rb
321
438
  - lib/active_support/reloader.rb
322
439
  - lib/active_support/rescuable.rb
323
- - lib/active_support/ruby_features.rb
324
440
  - lib/active_support/secure_compare_rotator.rb
325
441
  - lib/active_support/security_utils.rb
326
442
  - lib/active_support/string_inquirer.rb
327
443
  - lib/active_support/subscriber.rb
444
+ - lib/active_support/syntax_error_proxy.rb
328
445
  - lib/active_support/tagged_logging.rb
329
446
  - lib/active_support/test_case.rb
330
447
  - lib/active_support/testing/assertions.rb
331
448
  - lib/active_support/testing/autorun.rb
332
449
  - lib/active_support/testing/constant_lookup.rb
450
+ - lib/active_support/testing/constant_stubbing.rb
333
451
  - lib/active_support/testing/declarative.rb
334
452
  - lib/active_support/testing/deprecation.rb
453
+ - lib/active_support/testing/error_reporter_assertions.rb
335
454
  - lib/active_support/testing/file_fixtures.rb
336
455
  - lib/active_support/testing/isolation.rb
337
456
  - lib/active_support/testing/method_call_assertions.rb
@@ -342,6 +461,7 @@ files:
342
461
  - lib/active_support/testing/setup_and_teardown.rb
343
462
  - lib/active_support/testing/stream.rb
344
463
  - lib/active_support/testing/tagged_logging.rb
464
+ - lib/active_support/testing/tests_without_assertions.rb
345
465
  - lib/active_support/testing/time_helpers.rb
346
466
  - lib/active_support/time.rb
347
467
  - lib/active_support/time_with_zone.rb
@@ -359,12 +479,11 @@ licenses:
359
479
  - MIT
360
480
  metadata:
361
481
  bug_tracker_uri: https://github.com/rails/rails/issues
362
- changelog_uri: https://github.com/rails/rails/blob/v7.0.8.7/activesupport/CHANGELOG.md
363
- documentation_uri: https://api.rubyonrails.org/v7.0.8.7/
482
+ changelog_uri: https://github.com/rails/rails/blob/v7.2.3/activesupport/CHANGELOG.md
483
+ documentation_uri: https://api.rubyonrails.org/v7.2.3/
364
484
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
365
- source_code_uri: https://github.com/rails/rails/tree/v7.0.8.7/activesupport
485
+ source_code_uri: https://github.com/rails/rails/tree/v7.2.3/activesupport
366
486
  rubygems_mfa_required: 'true'
367
- post_install_message:
368
487
  rdoc_options:
369
488
  - "--encoding"
370
489
  - UTF-8
@@ -374,15 +493,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
374
493
  requirements:
375
494
  - - ">="
376
495
  - !ruby/object:Gem::Version
377
- version: 2.7.0
496
+ version: 3.1.0
378
497
  required_rubygems_version: !ruby/object:Gem::Requirement
379
498
  requirements:
380
499
  - - ">="
381
500
  - !ruby/object:Gem::Version
382
501
  version: '0'
383
502
  requirements: []
384
- rubygems_version: 3.5.22
385
- signing_key:
503
+ rubygems_version: 3.6.9
386
504
  specification_version: 4
387
505
  summary: A toolkit of support libraries and Ruby core extensions extracted from the
388
506
  Rails framework.
@@ -1,25 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Array
4
- NOT_SET = Object.new # :nodoc:
5
- def to_s(format = NOT_SET) # :nodoc:
6
- case format
7
- when :db
8
- ActiveSupport::Deprecation.warn(
9
- "Array#to_s(#{format.inspect}) is deprecated. Please use Array#to_fs(#{format.inspect}) instead."
10
- )
11
- if empty?
12
- "null"
13
- else
14
- collect(&:id).join(",")
15
- end
16
- when NOT_SET
17
- to_default_s
18
- else
19
- ActiveSupport::Deprecation.warn(
20
- "Array#to_s(#{format.inspect}) is deprecated. Please use Array#to_fs(#{format.inspect}) instead."
21
- )
22
- to_default_s
23
- end
24
- end
25
- end
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "date"
4
-
5
- class Date
6
- NOT_SET = Object.new # :nodoc:
7
- def to_s(format = NOT_SET) # :nodoc:
8
- if formatter = DATE_FORMATS[format]
9
- ActiveSupport::Deprecation.warn(
10
- "Date#to_s(#{format.inspect}) is deprecated. Please use Date#to_fs(#{format.inspect}) instead."
11
- )
12
- if formatter.respond_to?(:call)
13
- formatter.call(self).to_s
14
- else
15
- strftime(formatter)
16
- end
17
- elsif format == NOT_SET
18
- if formatter = DATE_FORMATS[:default]
19
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
20
- Using a :default format for Date#to_s is deprecated. Please use Date#to_fs instead. If you fixed all places
21
- inside your application that you see this deprecation, you can set
22
- `ENV['RAILS_DISABLE_DEPRECATED_TO_S_CONVERSION']` to `"true"` in the `config/application.rb` file before
23
- the `Bundler.require` call to fix all the callers outside of your application.
24
- MSG
25
- if formatter.respond_to?(:call)
26
- formatter.call(self).to_s
27
- else
28
- strftime(formatter)
29
- end
30
- else
31
- to_default_s
32
- end
33
- else
34
- ActiveSupport::Deprecation.warn(
35
- "Date#to_s(#{format.inspect}) is deprecated. Please use Date#to_fs(#{format.inspect}) instead."
36
- )
37
- to_default_s
38
- end
39
- end
40
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "date"
4
-
5
- class DateTime
6
- NOT_SET = Object.new # :nodoc:
7
- def to_s(format = NOT_SET) # :nodoc:
8
- if formatter = ::Time::DATE_FORMATS[format]
9
- ActiveSupport::Deprecation.warn(
10
- "DateTime#to_s(#{format.inspect}) is deprecated. Please use DateTime#to_fs(#{format.inspect}) instead."
11
- )
12
- formatter.respond_to?(:call) ? formatter.call(self).to_s : strftime(formatter)
13
- elsif format == NOT_SET
14
- if formatter = ::Time::DATE_FORMATS[:default]
15
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
16
- Using a :default format for DateTime#to_s is deprecated. Please use DateTime#to_fs instead. If you fixed all
17
- places inside your application that you see this deprecation, you can set
18
- `ENV['RAILS_DISABLE_DEPRECATED_TO_S_CONVERSION']` to `"true"` in the `config/application.rb` file before
19
- the `Bundler.require` call to fix all the callers outside of your application.
20
- MSG
21
- if formatter.respond_to?(:call)
22
- formatter.call(self).to_s
23
- else
24
- strftime(formatter)
25
- end
26
- else
27
- to_default_s
28
- end
29
- else
30
- ActiveSupport::Deprecation.warn(
31
- "DateTime#to_s(#{format.inspect}) is deprecated. Please use DateTime#to_fs(#{format.inspect}) instead."
32
- )
33
- to_default_s
34
- end
35
- end
36
- end
@@ -1,60 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ActiveSupport
4
- module DeprecatedNumericWithFormat # :nodoc:
5
- def to_s(format = nil, options = nil)
6
- return super() if format.nil?
7
-
8
- case format
9
- when Integer, String
10
- super(format)
11
- when :phone
12
- ActiveSupport::Deprecation.warn(
13
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
14
- )
15
- ActiveSupport::NumberHelper.number_to_phone(self, options || {})
16
- when :currency
17
- ActiveSupport::Deprecation.warn(
18
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
19
- )
20
- ActiveSupport::NumberHelper.number_to_currency(self, options || {})
21
- when :percentage
22
- ActiveSupport::Deprecation.warn(
23
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
24
- )
25
- ActiveSupport::NumberHelper.number_to_percentage(self, options || {})
26
- when :delimited
27
- ActiveSupport::Deprecation.warn(
28
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
29
- )
30
- ActiveSupport::NumberHelper.number_to_delimited(self, options || {})
31
- when :rounded
32
- ActiveSupport::Deprecation.warn(
33
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
34
- )
35
- ActiveSupport::NumberHelper.number_to_rounded(self, options || {})
36
- when :human
37
- ActiveSupport::Deprecation.warn(
38
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
39
- )
40
- ActiveSupport::NumberHelper.number_to_human(self, options || {})
41
- when :human_size
42
- ActiveSupport::Deprecation.warn(
43
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
44
- )
45
- ActiveSupport::NumberHelper.number_to_human_size(self, options || {})
46
- when Symbol
47
- ActiveSupport::Deprecation.warn(
48
- "#{self.class}#to_s(#{format.inspect}) is deprecated. Please use #{self.class}#to_fs(#{format.inspect}) instead."
49
- )
50
- super()
51
- else
52
- super(format)
53
- end
54
- end
55
- end
56
- end
57
-
58
- Integer.prepend ActiveSupport::DeprecatedNumericWithFormat
59
- Float.prepend ActiveSupport::DeprecatedNumericWithFormat
60
- BigDecimal.prepend ActiveSupport::DeprecatedNumericWithFormat
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module ActiveSupport
4
- module DeprecatedRangeWithFormat # :nodoc:
5
- NOT_SET = Object.new # :nodoc:
6
- def to_s(format = NOT_SET)
7
- if formatter = RangeWithFormat::RANGE_FORMATS[format]
8
- ActiveSupport::Deprecation.warn(
9
- "Range#to_s(#{format.inspect}) is deprecated. Please use Range#to_fs(#{format.inspect}) instead."
10
- )
11
- formatter.call(first, last)
12
- elsif format == NOT_SET
13
- if formatter = RangeWithFormat::RANGE_FORMATS[:default]
14
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
15
- Using a :default format for Range#to_s is deprecated. Please use Range#to_fs instead. If you fixed all
16
- places inside your application that you see this deprecation, you can set
17
- `ENV['RAILS_DISABLE_DEPRECATED_TO_S_CONVERSION']` to `"true"` in the `config/application.rb` file before
18
- the `Bundler.require` call to fix all the callers outside of your application.
19
- MSG
20
- formatter.call(first, last)
21
- else
22
- super()
23
- end
24
- else
25
- ActiveSupport::Deprecation.warn(
26
- "Range#to_s(#{format.inspect}) is deprecated. Please use Range#to_fs(#{format.inspect}) instead."
27
- )
28
- super()
29
- end
30
- end
31
- alias_method :to_default_s, :to_s
32
- deprecate :to_default_s
33
- end
34
- end
35
-
36
- Range.prepend(ActiveSupport::DeprecatedRangeWithFormat)
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
4
- `active_support/core_ext/range/include_time_with_zone` is deprecated and will be removed in Rails 7.1.
5
- MSG
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- class Range
4
- # Compare two ranges and see if they overlap each other
5
- # (1..5).overlaps?(4..6) # => true
6
- # (1..5).overlaps?(7..9) # => false
7
- def overlaps?(other)
8
- other.begin == self.begin || cover?(other.begin) || other.cover?(self.begin)
9
- end
10
- end
@@ -1,73 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "time"
4
-
5
- class Time
6
- NOT_SET = Object.new # :nodoc:
7
- def to_s(format = NOT_SET) # :nodoc:
8
- if formatter = DATE_FORMATS[format]
9
- ActiveSupport::Deprecation.warn(
10
- "Time#to_s(#{format.inspect}) is deprecated. Please use Time#to_fs(#{format.inspect}) instead."
11
- )
12
- formatter.respond_to?(:call) ? formatter.call(self).to_s : strftime(formatter)
13
- elsif format == NOT_SET
14
- if formatter = ::Time::DATE_FORMATS[:default]
15
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
16
- Using a :default format for Time#to_s is deprecated. Please use Time#to_fs instead. If you fixed all places
17
- inside your application that you see this deprecation, you can set
18
- `ENV['RAILS_DISABLE_DEPRECATED_TO_S_CONVERSION']` to `"true"` in the `config/application.rb` file before
19
- the `Bundler.require` call to fix all the callers outside of your application.
20
- MSG
21
- if formatter.respond_to?(:call)
22
- formatter.call(self).to_s
23
- else
24
- strftime(formatter)
25
- end
26
- else
27
- to_default_s
28
- end
29
- else
30
- ActiveSupport::Deprecation.warn(
31
- "Time#to_s(#{format.inspect}) is deprecated. Please use Time#to_fs(#{format.inspect}) instead."
32
- )
33
- to_default_s
34
- end
35
- end
36
- end
37
-
38
- module ActiveSupport
39
- class TimeWithZone
40
- NOT_SET = Object.new # :nodoc:
41
-
42
- def to_s(format = NOT_SET) # :nodoc:
43
- if format == :db
44
- ActiveSupport::Deprecation.warn(
45
- "TimeWithZone#to_s(:db) is deprecated. Please use TimeWithZone#to_fs(:db) instead."
46
- )
47
- utc.to_fs(format)
48
- elsif formatter = ::Time::DATE_FORMATS[format]
49
- ActiveSupport::Deprecation.warn(
50
- "TimeWithZone#to_s(#{format.inspect}) is deprecated. Please use TimeWithZone#to_fs(#{format.inspect}) instead."
51
- )
52
- formatter.respond_to?(:call) ? formatter.call(self).to_s : strftime(formatter)
53
- elsif format == NOT_SET
54
- if formatter = ::Time::DATE_FORMATS[:default]
55
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
56
- Using a :default format for TimeWithZone#to_s is deprecated. Please use TimeWithZone#to_fs instead.
57
- If you fixed all places inside your application that you see this deprecation, you can set
58
- `ENV['RAILS_DISABLE_DEPRECATED_TO_S_CONVERSION']` to `"true"` in the `config/application.rb` file before
59
- the `Bundler.require` call to fix all the callers outside of your application.
60
- MSG
61
- formatter.respond_to?(:call) ? formatter.call(self).to_s : strftime(formatter)
62
- else
63
- "#{time.strftime("%Y-%m-%d %H:%M:%S")} #{formatted_offset(false, 'UTC')}" # mimicking Ruby Time#to_s format
64
- end
65
- else
66
- ActiveSupport::Deprecation.warn(
67
- "TimeWithZone#to_s(#{format.inspect}) is deprecated. Please use TimeWithZone#to_fs(#{format.inspect}) instead."
68
- )
69
- "#{time.strftime("%Y-%m-%d %H:%M:%S")} #{formatted_offset(false, 'UTC')}" # mimicking Ruby Time#to_s format
70
- end
71
- end
72
- end
73
- end
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- ActiveSupport::Deprecation.warn(<<-MSG.squish)
4
- `active_support/core_ext/uri` is deprecated and will be removed in Rails 7.1.
5
- MSG