rails-rfc6570 3.3.0 → 3.5.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +25 -0
- data/README.md +3 -1
- data/lib/rails/rfc6570/formatter.rb +9 -12
- data/lib/rails/rfc6570/patches.rb +1 -1
- data/lib/rails/rfc6570/version.rb +1 -1
- data/lib/rails/rfc6570.rb +10 -29
- data/spec/dummy/config/application.rb +5 -1
- data/spec/dummy/config/environments/test.rb +1 -1
- data/spec/rails/rfc6570/extensions/route_set_spec.rb +29 -0
- data/spec/rails/rfc6570/helper_spec.rb +44 -0
- data/spec/rails/rfc6570/visitor_spec.rb +12 -0
- data/spec/rails/rfc6570_spec.rb +49 -1
- data/spec/spec_helper.rb +6 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-3bcd2110ca87/LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-3bcd2110ca87/README.md +23 -0
- data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-3bcd2110ca87/rubocop-config.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.3/CHANGELOG.md +285 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.3/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.3/README.rdoc +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.3/CHANGELOG.md +129 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.3/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.3/README.rdoc +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/CHANGELOG.md +309 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.3/README.rdoc +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/CHANGELOG.md +301 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/LICENSE.txt +202 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/README.md +121 -0
- data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/addressable.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/gems/base64-0.3.0/README.md +48 -0
- data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.1/README.md +138 -0
- data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.1/benchmark.gemspec +32 -0
- data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.2.3/LICENSE +56 -0
- data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.2.3/bigdecimal.gemspec +57 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/README.md +258 -0
- data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/builder.gemspec +49 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/CHANGELOG.md +603 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/LICENSE.txt +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/README.md +407 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.4/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.4/README.md +188 -0
- data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.4/connection_pool.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/LICENSE +18 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/README.md +192 -0
- data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/crass.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.6.2/CHANGELOG.md +518 -0
- data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.6.2/README.md +92 -0
- data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.3/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.3/drb.gemspec +42 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/CHANGELOG +111 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/README.rdoc +151 -0
- data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.7/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.7/README.md +127 -0
- data/vendor/bundle/ruby/3.4.0/gems/logger-1.7.0/README.md +104 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.1/CHANGELOG.md +598 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.1/MIT-LICENSE.txt +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.1/README.md +410 -0
- data/vendor/bundle/ruby/3.4.0/gems/minitest-5.25.5/README.rdoc +842 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.10-x86_64-linux-gnu/LICENSE-DEPENDENCIES.md +2224 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.10-x86_64-linux-gnu/LICENSE.md +9 -0
- data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.10-x86_64-linux-gnu/README.md +293 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.2/CHANGELOG.md +498 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.2/LICENSE.txt +22 -0
- data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.2/README.md +222 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
- data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.rdoc +60 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.2.1/CHANGELOG.md +1236 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.2.1/MIT-LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-3.2.1/README.md +376 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/MIT-LICENSE.txt +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/README.md +139 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.3.0/MIT-LICENSE +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.3.0/README.md +94 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/CHANGELOG.md +255 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/MIT-LICENSE +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/README.md +267 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.3.0/MIT-LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.3.0/README.rdoc +155 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-13.3.0/rake.gemspec +101 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/LICENSE +21 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/README.md +107 -0
- data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/rake-release.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.1/LICENSE.md +27 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.1/README.md +47 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.5/LICENSE.md +26 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.5/README.md +389 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.5/LICENSE.md +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.5/README.md +326 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.5/LICENSE.md +25 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.5/README.md +465 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.6/LICENSE.md +23 -0
- data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.6/README.md +40 -0
- data/vendor/bundle/ruby/3.4.0/gems/securerandom-0.4.1/README.md +72 -0
- data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/LICENSE +19 -0
- data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/README.md +406 -0
- data/vendor/bundle/ruby/3.4.0/gems/uri-1.0.3/README.md +55 -0
- data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/LICENSE +20 -0
- data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/README.md +42 -0
- data/vendor/bundle/ruby/3.4.0/specifications/actionpack-8.0.3.gemspec +36 -0
- data/vendor/bundle/ruby/3.4.0/specifications/actionview-8.0.3.gemspec +33 -0
- data/vendor/bundle/ruby/3.4.0/specifications/activesupport-8.0.3.gemspec +38 -0
- data/vendor/bundle/ruby/3.4.0/specifications/addressable-2.8.7.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/base64-0.3.0.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/benchmark-0.4.1.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/bigdecimal-3.2.3.gemspec +25 -0
- data/vendor/bundle/ruby/3.4.0/specifications/builder-3.3.0.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/concurrent-ruby-1.3.5.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/connection_pool-2.5.4.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/crass-1.0.6.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/diff-lcs-1.6.2.gemspec +35 -0
- data/vendor/bundle/ruby/3.4.0/specifications/drb-2.2.3.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/erubi-1.13.1.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/i18n-1.14.7.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/logger-1.7.0.gemspec +22 -0
- data/vendor/bundle/ruby/3.4.0/specifications/loofah-2.24.1.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/minitest-5.25.5.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/nokogiri-1.18.10-x86_64-linux-gnu.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/public_suffix-6.0.2.gemspec +24 -0
- data/vendor/bundle/ruby/3.4.0/specifications/racc-1.8.1.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-3.2.1.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-session-2.1.1.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rack-test-2.2.0.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rails-dom-testing-2.3.0.gemspec +28 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rails-html-sanitizer-1.6.2.gemspec +27 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rake-13.3.0.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rake-release-1.3.0.gemspec +26 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-3.13.1.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-core-3.13.5.gemspec +31 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-expectations-3.13.5.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-mocks-3.13.5.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/rspec-support-3.13.6.gemspec +29 -0
- data/vendor/bundle/ruby/3.4.0/specifications/securerandom-0.4.1.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/tzinfo-2.0.6.gemspec +30 -0
- data/vendor/bundle/ruby/3.4.0/specifications/uri-1.0.3.gemspec +23 -0
- data/vendor/bundle/ruby/3.4.0/specifications/useragent-0.16.11.gemspec +25 -0
- metadata +129 -8
- data/spec/dummy/log/test.log +0 -432
@@ -0,0 +1,309 @@
|
|
1
|
+
## Rails 8.0.3 (September 22, 2025) ##
|
2
|
+
|
3
|
+
* `ActiveSupport::FileUpdateChecker` does not depend on `Time.now` to prevent unnecessary reloads with time travel test helpers
|
4
|
+
|
5
|
+
*Jan Grodowski*
|
6
|
+
|
7
|
+
* Fix `ActiveSupport::BroadcastLogger` from executing a block argument for each logger (tagged, info, etc.).
|
8
|
+
|
9
|
+
*Jared Armstrong*
|
10
|
+
|
11
|
+
* Make `ActiveSupport::Logger` `#freeze`-friendly.
|
12
|
+
|
13
|
+
*Joshua Young*
|
14
|
+
|
15
|
+
* Fix `ActiveSupport::HashWithIndifferentAccess#transform_keys!` removing defaults.
|
16
|
+
|
17
|
+
*Hartley McGuire*
|
18
|
+
|
19
|
+
* Fix `ActiveSupport::HashWithIndifferentAccess#tranform_keys!` to handle collisions.
|
20
|
+
|
21
|
+
If the transformation would result in a key equal to another not yet transformed one,
|
22
|
+
it would result in keys being lost.
|
23
|
+
|
24
|
+
Before:
|
25
|
+
|
26
|
+
```ruby
|
27
|
+
>> {a: 1, b: 2}.with_indifferent_access.transform_keys!(&:succ)
|
28
|
+
=> {"c" => 1}
|
29
|
+
```
|
30
|
+
|
31
|
+
After:
|
32
|
+
|
33
|
+
```ruby
|
34
|
+
>> {a: 1, b: 2}.with_indifferent_access.transform_keys!(&:succ)
|
35
|
+
=> {"c" => 1, "d" => 2}
|
36
|
+
```
|
37
|
+
|
38
|
+
*Jason T Johnson*, *Jean Boussier*
|
39
|
+
|
40
|
+
* Fix `ActiveSupport::Cache::MemCacheStore#read_multi` to handle network errors.
|
41
|
+
|
42
|
+
This method specifically wasn't handling network errors like other codepaths.
|
43
|
+
|
44
|
+
*Alessandro Dal Grande*
|
45
|
+
|
46
|
+
* Fix configuring `RedisCacheStore` with `raw: true`.
|
47
|
+
|
48
|
+
*fatkodima*
|
49
|
+
|
50
|
+
* Fix `Enumerable#sole` for infinite collections.
|
51
|
+
|
52
|
+
*fatkodima*
|
53
|
+
|
54
|
+
|
55
|
+
## Rails 8.0.2.1 (August 13, 2025) ##
|
56
|
+
|
57
|
+
* No changes.
|
58
|
+
|
59
|
+
|
60
|
+
## Rails 8.0.2 (March 12, 2025) ##
|
61
|
+
|
62
|
+
* Fix setting `to_time_preserves_timezone` from `new_framework_defaults_8_0.rb`.
|
63
|
+
|
64
|
+
*fatkodima*
|
65
|
+
|
66
|
+
* Fix Active Support Cache `fetch_multi` when local store is active.
|
67
|
+
|
68
|
+
`fetch_multi` now properly yield to the provided block for missing entries
|
69
|
+
that have been recorded as such in the local store.
|
70
|
+
|
71
|
+
*Jean Boussier*
|
72
|
+
|
73
|
+
* Fix execution wrapping to report all exceptions, including `Exception`.
|
74
|
+
|
75
|
+
If a more serious error like `SystemStackError` or `NoMemoryError` happens,
|
76
|
+
the error reporter should be able to report these kinds of exceptions.
|
77
|
+
|
78
|
+
*Gannon McGibbon*
|
79
|
+
|
80
|
+
* Fix `RedisCacheStore` and `MemCacheStore` to also handle connection pool related errors.
|
81
|
+
|
82
|
+
These errors are rescued and reported to `Rails.error`.
|
83
|
+
|
84
|
+
*Jean Boussier*
|
85
|
+
|
86
|
+
* Fix `ActiveSupport::Cache#read_multi` to respect version expiry when using local cache.
|
87
|
+
|
88
|
+
*zzak*
|
89
|
+
|
90
|
+
* Fix `ActiveSupport::MessageVerifier` and `ActiveSupport::MessageEncryptor` configuration of `on_rotation` callback.
|
91
|
+
|
92
|
+
```ruby
|
93
|
+
verifier.rotate(old_secret).on_rotation { ... }
|
94
|
+
```
|
95
|
+
|
96
|
+
Now both work as documented.
|
97
|
+
|
98
|
+
*Jean Boussier*
|
99
|
+
|
100
|
+
* Fix `ActiveSupport::MessageVerifier` to always be able to verify both URL-safe and URL-unsafe payloads.
|
101
|
+
|
102
|
+
This is to allow transitioning seemlessly from either configuration without immediately invalidating
|
103
|
+
all previously generated signed messages.
|
104
|
+
|
105
|
+
*Jean Boussier*, *Florent Beaurain*, *Ali Sepehri*
|
106
|
+
|
107
|
+
* Fix `cache.fetch` to honor the provided expiry when `:race_condition_ttl` is used.
|
108
|
+
|
109
|
+
```ruby
|
110
|
+
cache.fetch("key", expires_in: 1.hour, race_condition_ttl: 5.second) do
|
111
|
+
"something"
|
112
|
+
end
|
113
|
+
```
|
114
|
+
|
115
|
+
In the above example, the final cache entry would have a 10 seconds TTL instead
|
116
|
+
of the requested 1 hour.
|
117
|
+
|
118
|
+
*Dhia*
|
119
|
+
|
120
|
+
* Better handle procs with splat arguments in `set_callback`.
|
121
|
+
|
122
|
+
*Radamés Roriz*
|
123
|
+
|
124
|
+
* Fix `String#mb_chars` to not mutate the receiver.
|
125
|
+
|
126
|
+
Previously it would call `force_encoding` on the receiver,
|
127
|
+
now it dups the receiver first.
|
128
|
+
|
129
|
+
*Jean Boussier*
|
130
|
+
|
131
|
+
* Improve `ErrorSubscriber` to also mark error causes as reported.
|
132
|
+
|
133
|
+
This avoid some cases of errors being reported twice, notably in views because of how
|
134
|
+
errors are wrapped in `ActionView::Template::Error`.
|
135
|
+
|
136
|
+
*Jean Boussier*
|
137
|
+
|
138
|
+
* Fix `Module#module_parent_name` to return the correct name after the module has been named.
|
139
|
+
|
140
|
+
When called on an anonymous module, the return value wouldn't change after the module was given a name
|
141
|
+
later by being assigned to a constant.
|
142
|
+
|
143
|
+
```ruby
|
144
|
+
mod = Module.new
|
145
|
+
mod.module_parent_name # => "Object"
|
146
|
+
MyModule::Something = mod
|
147
|
+
mod.module_parent_name # => "MyModule"
|
148
|
+
```
|
149
|
+
|
150
|
+
*Jean Boussier*
|
151
|
+
|
152
|
+
|
153
|
+
## Rails 8.0.1 (December 13, 2024) ##
|
154
|
+
|
155
|
+
* Fix a bug in `ERB::Util.tokenize` that causes incorrect tokenization when ERB tags are preceeded by multibyte characters.
|
156
|
+
|
157
|
+
*Martin Emde*
|
158
|
+
|
159
|
+
* Restore the ability to decorate methods generated by `class_attribute`.
|
160
|
+
|
161
|
+
It always has been complicated to use Module#prepend or an alias method chain
|
162
|
+
to decorate methods defined by `class_attribute`, but became even harder in 8.0.
|
163
|
+
|
164
|
+
This capability is now supported for both reader and writer methods.
|
165
|
+
|
166
|
+
*Jean Boussier*
|
167
|
+
|
168
|
+
|
169
|
+
## Rails 8.0.0.1 (December 10, 2024) ##
|
170
|
+
|
171
|
+
* No changes.
|
172
|
+
|
173
|
+
|
174
|
+
## Rails 8.0.0 (November 07, 2024) ##
|
175
|
+
|
176
|
+
* No changes.
|
177
|
+
|
178
|
+
|
179
|
+
## Rails 8.0.0.rc2 (October 30, 2024) ##
|
180
|
+
|
181
|
+
* No changes.
|
182
|
+
|
183
|
+
|
184
|
+
## Rails 8.0.0.rc1 (October 19, 2024) ##
|
185
|
+
|
186
|
+
* Remove deprecated support to passing an array of strings to `ActiveSupport::Deprecation#warn`.
|
187
|
+
|
188
|
+
*Rafael Mendonça França*
|
189
|
+
|
190
|
+
* Remove deprecated support to setting `attr_internal_naming_format` with a `@` prefix.
|
191
|
+
|
192
|
+
*Rafael Mendonça França*
|
193
|
+
|
194
|
+
* Remove deprecated `ActiveSupport::ProxyObject`.
|
195
|
+
|
196
|
+
*Rafael Mendonça França*
|
197
|
+
|
198
|
+
* Don't execute i18n watcher on boot. It shouldn't catch any file changes initially,
|
199
|
+
and unnecessarily slows down boot of applications with lots of translations.
|
200
|
+
|
201
|
+
*Gannon McGibbon*, *David Stosik*
|
202
|
+
|
203
|
+
* Fix `ActiveSupport::HashWithIndifferentAccess#stringify_keys` to stringify all keys not just symbols.
|
204
|
+
|
205
|
+
Previously:
|
206
|
+
|
207
|
+
```ruby
|
208
|
+
{ 1 => 2 }.with_indifferent_access.stringify_keys[1] # => 2
|
209
|
+
```
|
210
|
+
|
211
|
+
After this change:
|
212
|
+
|
213
|
+
```ruby
|
214
|
+
{ 1 => 2 }.with_indifferent_access.stringify_keys["1"] # => 2
|
215
|
+
```
|
216
|
+
|
217
|
+
This change can be seen as a bug fix, but since it behaved like this for a very long time, we're deciding
|
218
|
+
to not backport the fix and to make the change in a major release.
|
219
|
+
|
220
|
+
*Jean Boussier*
|
221
|
+
|
222
|
+
## Rails 8.0.0.beta1 (September 26, 2024) ##
|
223
|
+
|
224
|
+
* Include options when instrumenting `ActiveSupport::Cache::Store#delete` and `ActiveSupport::Cache::Store#delete_multi`.
|
225
|
+
|
226
|
+
*Adam Renberg Tamm*
|
227
|
+
|
228
|
+
* Print test names when running `rails test -v` for parallel tests.
|
229
|
+
|
230
|
+
*John Hawthorn*, *Abeid Ahmed*
|
231
|
+
|
232
|
+
* Deprecate `Benchmark.ms` core extension.
|
233
|
+
|
234
|
+
The `benchmark` gem will become bundled in Ruby 3.5
|
235
|
+
|
236
|
+
*Earlopain*
|
237
|
+
|
238
|
+
* `ActiveSupport::TimeWithZone#inspect` now uses ISO 8601 style time like `Time#inspect`
|
239
|
+
|
240
|
+
*John Hawthorn*
|
241
|
+
|
242
|
+
* `ActiveSupport::ErrorReporter#report` now assigns a backtrace to unraised exceptions.
|
243
|
+
|
244
|
+
Previously reporting an un-raised exception would result in an error report without
|
245
|
+
a backtrace. Now it automatically generates one.
|
246
|
+
|
247
|
+
*Jean Boussier*
|
248
|
+
|
249
|
+
* Add `escape_html_entities` option to `ActiveSupport::JSON.encode`.
|
250
|
+
|
251
|
+
This allows for overriding the global configuration found at
|
252
|
+
`ActiveSupport.escape_html_entities_in_json` for specific calls to `to_json`.
|
253
|
+
|
254
|
+
This should be usable from controllers in the following manner:
|
255
|
+
```ruby
|
256
|
+
class MyController < ApplicationController
|
257
|
+
def index
|
258
|
+
render json: { hello: "world" }, escape_html_entities: false
|
259
|
+
end
|
260
|
+
end
|
261
|
+
```
|
262
|
+
|
263
|
+
*Nigel Baillie*
|
264
|
+
|
265
|
+
* Raise when using key which can't respond to `#to_sym` in `EncryptedConfiguration`.
|
266
|
+
|
267
|
+
As is the case when trying to use an Integer or Float as a key, which is unsupported.
|
268
|
+
|
269
|
+
*zzak*
|
270
|
+
|
271
|
+
* Deprecate addition and since between two `Time` and `ActiveSupport::TimeWithZone`.
|
272
|
+
|
273
|
+
Previously adding time instances together such as `10.days.ago + 10.days.ago` or `10.days.ago.since(10.days.ago)` produced a nonsensical future date. This behavior is deprecated and will be removed in Rails 8.1.
|
274
|
+
|
275
|
+
*Nick Schwaderer*
|
276
|
+
|
277
|
+
* Support rfc2822 format for Time#to_fs & Date#to_fs.
|
278
|
+
|
279
|
+
*Akshay Birajdar*
|
280
|
+
|
281
|
+
* Optimize load time for `Railtie#initialize_i18n`. Filter `I18n.load_path`s passed to the file watcher to only those
|
282
|
+
under `Rails.root`. Previously the watcher would grab all available locales, including those in gems
|
283
|
+
which do not require a watcher because they won't change.
|
284
|
+
|
285
|
+
*Nick Schwaderer*
|
286
|
+
|
287
|
+
* Add a `filter` option to `in_order_of` to prioritize certain values in the sorting without filtering the results
|
288
|
+
by these values.
|
289
|
+
|
290
|
+
*Igor Depolli*
|
291
|
+
|
292
|
+
* Improve error message when using `assert_difference` or `assert_changes` with a
|
293
|
+
proc by printing the proc's source code (MRI only).
|
294
|
+
|
295
|
+
*Richard Böhme*, *Jean Boussier*
|
296
|
+
|
297
|
+
* Add a new configuration value `:zone` for `ActiveSupport.to_time_preserves_timezone` and rename the previous `true` value to `:offset`. The new default value is `:zone`.
|
298
|
+
|
299
|
+
*Jason Kim*, *John Hawthorn*
|
300
|
+
|
301
|
+
* Align instrumentation `payload[:key]` in ActiveSupport::Cache to follow the same pattern, with namespaced and normalized keys.
|
302
|
+
|
303
|
+
*Frederik Erbs Spang Thomsen*
|
304
|
+
|
305
|
+
* Fix `travel_to` to set usec 0 when `with_usec` is `false` and the given argument String or DateTime.
|
306
|
+
|
307
|
+
*mopp*
|
308
|
+
|
309
|
+
Please check [7-2-stable](https://github.com/rails/rails/blob/7-2-stable/activesupport/CHANGELOG.md) for previous changes.
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) David Heinemeier Hansson
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,40 @@
|
|
1
|
+
= Active Support -- Utility classes and Ruby extensions from \Rails
|
2
|
+
|
3
|
+
Active Support is a collection of utility classes and standard library
|
4
|
+
extensions that were found useful for the \Rails framework. These additions
|
5
|
+
reside in this package so they can be loaded as needed in Ruby projects
|
6
|
+
outside of \Rails.
|
7
|
+
|
8
|
+
You can read more about the extensions in the {Active Support Core Extensions}[https://guides.rubyonrails.org/active_support_core_extensions.html] guide.
|
9
|
+
|
10
|
+
== Download and installation
|
11
|
+
|
12
|
+
The latest version of Active Support can be installed with RubyGems:
|
13
|
+
|
14
|
+
$ gem install activesupport
|
15
|
+
|
16
|
+
Source code can be downloaded as part of the \Rails project on GitHub:
|
17
|
+
|
18
|
+
* https://github.com/rails/rails/tree/main/activesupport
|
19
|
+
|
20
|
+
|
21
|
+
== License
|
22
|
+
|
23
|
+
Active Support is released under the MIT license:
|
24
|
+
|
25
|
+
* https://opensource.org/licenses/MIT
|
26
|
+
|
27
|
+
|
28
|
+
== Support
|
29
|
+
|
30
|
+
API documentation is at:
|
31
|
+
|
32
|
+
* https://api.rubyonrails.org
|
33
|
+
|
34
|
+
Bug reports for the Ruby on \Rails project can be filed here:
|
35
|
+
|
36
|
+
* https://github.com/rails/rails/issues
|
37
|
+
|
38
|
+
Feature requests should be discussed on the rubyonrails-core forum here:
|
39
|
+
|
40
|
+
* https://discuss.rubyonrails.org/c/rubyonrails-core
|
@@ -0,0 +1,301 @@
|
|
1
|
+
# Addressable 2.8.7 <a name="v2.8.7">
|
2
|
+
- Allow `public_suffix` 6 ([#535])
|
3
|
+
|
4
|
+
[#535]: https://github.com/sporkmonger/addressable/pull/535
|
5
|
+
|
6
|
+
# Addressable 2.8.6 <a name="v2.8.6">
|
7
|
+
- Memoize regexps for common character classes ([#524])
|
8
|
+
|
9
|
+
[#524]: https://github.com/sporkmonger/addressable/pull/524
|
10
|
+
|
11
|
+
# Addressable 2.8.5 <a name="v2.8.5">
|
12
|
+
- Fix thread safety issue with encoding tables ([#515])
|
13
|
+
- Define URI::NONE as a module to avoid serialization issues ([#509])
|
14
|
+
- Fix YAML serialization ([#508])
|
15
|
+
|
16
|
+
[#508]: https://github.com/sporkmonger/addressable/pull/508
|
17
|
+
[#509]: https://github.com/sporkmonger/addressable/pull/509
|
18
|
+
[#515]: https://github.com/sporkmonger/addressable/pull/515
|
19
|
+
|
20
|
+
# Addressable 2.8.4 <a name="v2.8.4">
|
21
|
+
- Restore `Addressable::IDNA.unicode_normalize_kc` as a deprecated method ([#504])
|
22
|
+
|
23
|
+
[#504]: https://github.com/sporkmonger/addressable/pull/504
|
24
|
+
|
25
|
+
# Addressable 2.8.3 <a name="v2.8.3">
|
26
|
+
- Fix template expand level 2 hash support for non-string objects ([#499], [#498])
|
27
|
+
|
28
|
+
[#499]: https://github.com/sporkmonger/addressable/pull/499
|
29
|
+
[#498]: https://github.com/sporkmonger/addressable/pull/498
|
30
|
+
|
31
|
+
# Addressable 2.8.2 <a name="v2.8.2">
|
32
|
+
- Improve cache hits and JIT friendliness ([#486](https://github.com/sporkmonger/addressable/pull/486))
|
33
|
+
- Improve code style and test coverage ([#482](https://github.com/sporkmonger/addressable/pull/482))
|
34
|
+
- Ensure reset of deferred validation ([#481](https://github.com/sporkmonger/addressable/pull/481))
|
35
|
+
- Resolve normalization differences between `IDNA::Native` and `IDNA::Pure` ([#408](https://github.com/sporkmonger/addressable/issues/408), [#492])
|
36
|
+
- Remove redundant colon in `Addressable::URI::CharacterClasses::AUTHORITY` regex ([#438](https://github.com/sporkmonger/addressable/pull/438)) (accidentally reverted by [#449] merge but [added back](https://github.com/sporkmonger/addressable/pull/492#discussion_r1105125280) in [#492])
|
37
|
+
|
38
|
+
[#492]: https://github.com/sporkmonger/addressable/pull/492
|
39
|
+
|
40
|
+
# Addressable 2.8.1 <a name="v2.8.1">
|
41
|
+
- refactor `Addressable::URI.normalize_path` to address linter offenses ([#430](https://github.com/sporkmonger/addressable/pull/430))
|
42
|
+
- update gemspec to reflect supported Ruby versions ([#466], [#464], [#463])
|
43
|
+
- compatibility w/ public_suffix 5.x ([#466], [#465], [#460])
|
44
|
+
- fixes "invalid byte sequence in UTF-8" exception when unencoding URLs containing non UTF-8 characters ([#459](https://github.com/sporkmonger/addressable/pull/459))
|
45
|
+
- `Ractor` compatibility ([#449])
|
46
|
+
- use the whole string instead of a single line for template match ([#431](https://github.com/sporkmonger/addressable/pull/431))
|
47
|
+
- force UTF-8 encoding only if needed ([#341](https://github.com/sporkmonger/addressable/pull/341))
|
48
|
+
|
49
|
+
[#449]: https://github.com/sporkmonger/addressable/pull/449
|
50
|
+
[#460]: https://github.com/sporkmonger/addressable/pull/460
|
51
|
+
[#463]: https://github.com/sporkmonger/addressable/pull/463
|
52
|
+
[#464]: https://github.com/sporkmonger/addressable/pull/464
|
53
|
+
[#465]: https://github.com/sporkmonger/addressable/pull/465
|
54
|
+
[#466]: https://github.com/sporkmonger/addressable/pull/466
|
55
|
+
|
56
|
+
# Addressable 2.8.0 <a name="v2.8.0">
|
57
|
+
- fixes ReDoS vulnerability in Addressable::Template#match
|
58
|
+
- no longer replaces `+` with spaces in queries for non-http(s) schemes
|
59
|
+
- fixed encoding ipv6 literals
|
60
|
+
- the `:compacted` flag for `normalized_query` now dedupes parameters
|
61
|
+
- fix broken `escape_component` alias
|
62
|
+
- dropping support for Ruby 2.0 and 2.1
|
63
|
+
- adding Ruby 3.0 compatibility for development tasks
|
64
|
+
- drop support for `rack-mount` and remove Addressable::Template#generate
|
65
|
+
- performance improvements
|
66
|
+
- switch CI/CD to GitHub Actions
|
67
|
+
|
68
|
+
# Addressable 2.7.0 <a name="v2.7.0">
|
69
|
+
- added `:compacted` flag to `normalized_query`
|
70
|
+
- `heuristic_parse` handles `mailto:` more intuitively
|
71
|
+
- dropped explicit support for JRuby 9.0.5.0
|
72
|
+
- compatibility w/ public_suffix 4.x
|
73
|
+
- performance improvements
|
74
|
+
|
75
|
+
# Addressable 2.6.0 <a name="v2.6.0">
|
76
|
+
- added `tld=` method to allow assignment to the public suffix
|
77
|
+
- most `heuristic_parse` patterns are now case-insensitive
|
78
|
+
- `heuristic_parse` handles more `file://` URI variations
|
79
|
+
- fixes bug in `heuristic_parse` when uri starts with digit
|
80
|
+
- fixes bug in `request_uri=` with query strings
|
81
|
+
- fixes template issues with `nil` and `?` operator
|
82
|
+
- `frozen_string_literal` pragmas added
|
83
|
+
- minor performance improvements in regexps
|
84
|
+
- fixes to eliminate warnings
|
85
|
+
|
86
|
+
# Addressable 2.5.2 <a name="v2.5.2">
|
87
|
+
- better support for frozen string literals
|
88
|
+
- fixed bug w/ uppercase characters in scheme
|
89
|
+
- IDNA errors w/ emoji URLs
|
90
|
+
- compatibility w/ public_suffix 3.x
|
91
|
+
|
92
|
+
# Addressable 2.5.1 <a name="v2.5.1">
|
93
|
+
- allow unicode normalization to be disabled for URI Template expansion
|
94
|
+
- removed duplicate test
|
95
|
+
|
96
|
+
# Addressable 2.5.0 <a name="v2.5.0">
|
97
|
+
- dropping support for Ruby 1.9
|
98
|
+
- adding support for Ruby 2.4 preview
|
99
|
+
- add support for public suffixes and tld; first runtime dependency
|
100
|
+
- hostname escaping should match RFC; underscores in hostnames no longer escaped
|
101
|
+
- paths beginning with // and missing an authority are now considered invalid
|
102
|
+
- validation now also takes place after setting a path
|
103
|
+
- handle backslashes in authority more like a browser for `heuristic_parse`
|
104
|
+
- unescaped backslashes in host now raise an `InvalidURIError`
|
105
|
+
- `merge!`, `join!`, `omit!` and `normalize!` don't disable deferred validation
|
106
|
+
- `heuristic_parse` now trims whitespace before parsing
|
107
|
+
- host parts longer than 63 bytes will be ignored and not passed to libidn
|
108
|
+
- normalized values always encoded as UTF-8
|
109
|
+
|
110
|
+
# Addressable 2.4.0 <a name="v2.4.0">
|
111
|
+
- support for 1.8.x dropped
|
112
|
+
- double quotes in a host now raises an error
|
113
|
+
- newlines in host will no longer get unescaped during normalization
|
114
|
+
- stricter handling of bogus scheme values
|
115
|
+
- stricter handling of encoded port values
|
116
|
+
- calling `require 'addressable'` will now load both the URI and Template files
|
117
|
+
- assigning to the `hostname` component with an `IPAddr` object is now supported
|
118
|
+
- assigning to the `origin` component is now supported
|
119
|
+
- fixed minor bug where an exception would be thrown for a missing ACE suffix
|
120
|
+
- better partial expansion of URI templates
|
121
|
+
|
122
|
+
# Addressable 2.3.8 <a name="v2.3.8">
|
123
|
+
- fix warnings
|
124
|
+
- update dependency gems
|
125
|
+
- support for 1.8.x officially deprecated
|
126
|
+
|
127
|
+
# Addressable 2.3.7 <a name="v2.3.7">
|
128
|
+
- fix scenario in which invalid URIs don't get an exception until inspected
|
129
|
+
- handle hostnames with two adjacent periods correctly
|
130
|
+
- upgrade of RSpec
|
131
|
+
|
132
|
+
# Addressable 2.3.6 <a name="v2.3.6">
|
133
|
+
- normalization drops empty query string
|
134
|
+
- better handling in template extract for missing values
|
135
|
+
- template modifier for `'?'` now treated as optional
|
136
|
+
- fixed issue where character class parameters were modified
|
137
|
+
- templates can now be tested for equality
|
138
|
+
- added `:sorted` option to normalization of query strings
|
139
|
+
- fixed issue with normalization of hosts given in `'example.com.'` form
|
140
|
+
|
141
|
+
# Addressable 2.3.5 <a name="v2.3.5">
|
142
|
+
- added Addressable::URI#empty? method
|
143
|
+
- Addressable::URI#hostname methods now strip square brackets from IPv6 hosts
|
144
|
+
- compatibility with Net::HTTP in Ruby 2.0.0
|
145
|
+
- Addressable::URI#route_from should always give relative URIs
|
146
|
+
|
147
|
+
# Addressable 2.3.4 <a name="v2.3.4">
|
148
|
+
- fixed issue with encoding altering its inputs
|
149
|
+
- query string normalization now leaves ';' characters alone
|
150
|
+
- FakeFS is detected before attempting to load unicode tables
|
151
|
+
- additional testing to ensure frozen objects don't cause problems
|
152
|
+
|
153
|
+
# Addressable 2.3.3 <a name="v2.3.3">
|
154
|
+
- fixed issue with converting common primitives during template expansion
|
155
|
+
- fixed port encoding issue
|
156
|
+
- removed a few warnings
|
157
|
+
- normalize should now ignore %2B in query strings
|
158
|
+
- the IDNA logic should now be handled by libidn in Ruby 1.9
|
159
|
+
- no template match should now result in nil instead of an empty MatchData
|
160
|
+
- added license information to gemspec
|
161
|
+
|
162
|
+
# Addressable 2.3.2 <a name="v2.3.2">
|
163
|
+
- added Addressable::URI#default_port method
|
164
|
+
- fixed issue with Marshalling Unicode data on Windows
|
165
|
+
- improved heuristic parsing to better handle IPv4 addresses
|
166
|
+
|
167
|
+
# Addressable 2.3.1 <a name="v2.3.1">
|
168
|
+
- fixed missing unicode data file
|
169
|
+
|
170
|
+
# Addressable 2.3.0 <a name="v2.3.0">
|
171
|
+
- updated Addressable::Template to use RFC 6570, level 4
|
172
|
+
- fixed compatibility problems with some versions of Ruby
|
173
|
+
- moved unicode tables into a data file for performance reasons
|
174
|
+
- removing support for multiple query value notations
|
175
|
+
|
176
|
+
# Addressable 2.2.8 <a name="v2.2.8">
|
177
|
+
- fixed issues with dot segment removal code
|
178
|
+
- form encoding can now handle multiple values per key
|
179
|
+
- updated development environment
|
180
|
+
|
181
|
+
# Addressable 2.2.7 <a name="v2.2.7">
|
182
|
+
- fixed issues related to Addressable::URI#query_values=
|
183
|
+
- the Addressable::URI.parse method is now polymorphic
|
184
|
+
|
185
|
+
# Addressable 2.2.6 <a name="v2.2.6">
|
186
|
+
- changed the way ambiguous paths are handled
|
187
|
+
- fixed bug with frozen URIs
|
188
|
+
- https supported in heuristic parsing
|
189
|
+
|
190
|
+
# Addressable 2.2.5 <a name="v2.2.5">
|
191
|
+
- 'parsing' a pre-parsed URI object is now a dup operation
|
192
|
+
- introduced conditional support for libidn
|
193
|
+
- fixed normalization issue on ampersands in query strings
|
194
|
+
- added additional tests around handling of query strings
|
195
|
+
|
196
|
+
# Addressable 2.2.4 <a name="v2.2.4">
|
197
|
+
- added origin support from draft-ietf-websec-origin-00
|
198
|
+
- resolved issue with attempting to navigate below root
|
199
|
+
- fixed bug with string splitting in query strings
|
200
|
+
|
201
|
+
# Addressable 2.2.3 <a name="v2.2.3">
|
202
|
+
- added :flat_array notation for query strings
|
203
|
+
|
204
|
+
# Addressable 2.2.2 <a name="v2.2.2">
|
205
|
+
- fixed issue with percent escaping of '+' character in query strings
|
206
|
+
|
207
|
+
# Addressable 2.2.1 <a name="v2.2.1">
|
208
|
+
- added support for application/x-www-form-urlencoded.
|
209
|
+
|
210
|
+
# Addressable 2.2.0 <a name="v2.2.0">
|
211
|
+
- added site methods
|
212
|
+
- improved documentation
|
213
|
+
|
214
|
+
# Addressable 2.1.2 <a name="v2.1.2">
|
215
|
+
- added HTTP request URI methods
|
216
|
+
- better handling of Windows file paths
|
217
|
+
- validation_deferred boolean replaced with defer_validation block
|
218
|
+
- normalization of percent-encoded paths should now be correct
|
219
|
+
- fixed issue with constructing URIs with relative paths
|
220
|
+
- fixed warnings
|
221
|
+
|
222
|
+
# Addressable 2.1.1 <a name="v2.1.1">
|
223
|
+
- more type checking changes
|
224
|
+
- fixed issue with unicode normalization
|
225
|
+
- added method to find template defaults
|
226
|
+
- symbolic keys are now allowed in template mappings
|
227
|
+
- numeric values and symbolic values are now allowed in template mappings
|
228
|
+
|
229
|
+
# Addressable 2.1.0 <a name="v2.1.0">
|
230
|
+
- refactored URI template support out into its own class
|
231
|
+
- removed extract method due to being useless and unreliable
|
232
|
+
- removed Addressable::URI.expand_template
|
233
|
+
- removed Addressable::URI#extract_mapping
|
234
|
+
- added partial template expansion
|
235
|
+
- fixed minor bugs in the parse and heuristic_parse methods
|
236
|
+
- fixed incompatibility with Ruby 1.9.1
|
237
|
+
- fixed bottleneck in Addressable::URI#hash and Addressable::URI#to_s
|
238
|
+
- fixed unicode normalization exception
|
239
|
+
- updated query_values methods to better handle subscript notation
|
240
|
+
- worked around issue with freezing URIs
|
241
|
+
- improved specs
|
242
|
+
|
243
|
+
# Addressable 2.0.2 <a name="v2.0.2">
|
244
|
+
- fixed issue with URI template expansion
|
245
|
+
- fixed issue with percent escaping characters 0-15
|
246
|
+
|
247
|
+
# Addressable 2.0.1 <a name="v2.0.1">
|
248
|
+
- fixed issue with query string assignment
|
249
|
+
- fixed issue with improperly encoded components
|
250
|
+
|
251
|
+
# Addressable 2.0.0 <a name="v2.0.0">
|
252
|
+
- the initialize method now takes an options hash as its only parameter
|
253
|
+
- added query_values method to URI class
|
254
|
+
- completely replaced IDNA implementation with pure Ruby
|
255
|
+
- renamed Addressable::ADDRESSABLE_VERSION to Addressable::VERSION
|
256
|
+
- completely reworked the Rakefile
|
257
|
+
- changed the behavior of the port method significantly
|
258
|
+
- Addressable::URI.encode_segment, Addressable::URI.unencode_segment renamed
|
259
|
+
- documentation is now in YARD format
|
260
|
+
- more rigorous type checking
|
261
|
+
- to_str method implemented, implicit conversion to Strings now allowed
|
262
|
+
- Addressable::URI#omit method added, Addressable::URI#merge method replaced
|
263
|
+
- updated URI Template code to match v 03 of the draft spec
|
264
|
+
- added a bunch of new specifications
|
265
|
+
|
266
|
+
# Addressable 1.0.4 <a name="v1.0.4">
|
267
|
+
- switched to using RSpec's pending system for specs that rely on IDN
|
268
|
+
- fixed issue with creating URIs with paths that are not prefixed with '/'
|
269
|
+
|
270
|
+
# Addressable 1.0.3 <a name="v1.0.3">
|
271
|
+
- implemented a hash method
|
272
|
+
|
273
|
+
# Addressable 1.0.2 <a name="v1.0.2">
|
274
|
+
- fixed minor bug with the extract_mapping method
|
275
|
+
|
276
|
+
# Addressable 1.0.1 <a name="v1.0.1">
|
277
|
+
- fixed minor bug with the extract_mapping method
|
278
|
+
|
279
|
+
# Addressable 1.0.0 <a name="v1.0.0">
|
280
|
+
- heuristic parse method added
|
281
|
+
- parsing is slightly more strict
|
282
|
+
- replaced to_h with to_hash
|
283
|
+
- fixed routing methods
|
284
|
+
- improved specifications
|
285
|
+
- improved heckle rake task
|
286
|
+
- no surviving heckle mutations
|
287
|
+
|
288
|
+
# Addressable 0.1.2 <a name="v0.1.2">
|
289
|
+
- improved normalization
|
290
|
+
- fixed bug in joining algorithm
|
291
|
+
- updated specifications
|
292
|
+
|
293
|
+
# Addressable 0.1.1 <a name="v0.1.1">
|
294
|
+
- updated documentation
|
295
|
+
- added URI Template variable extraction
|
296
|
+
|
297
|
+
# Addressable 0.1.0 <a name="v0.1.0">
|
298
|
+
- initial release
|
299
|
+
- implementation based on RFC 3986, 3987
|
300
|
+
- support for IRIs via libidn
|
301
|
+
- support for the URI Template draft spec
|