actionview 7.0.6 → 7.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f57ef65d88131e8219b715bdea12c94d887fb424c8a971a97aab3cf0a59de9b9
4
- data.tar.gz: 93ebbe585c3a8d0947324de248724a9dfa4e18f7c4d8420d0dde6471cfb01f39
3
+ metadata.gz: 13f4c70dc0bfbbb891aa5066f6449c9dad918e5be7da1a718e6935fdea238194
4
+ data.tar.gz: 07af26b3506af65dfdcd05138d5238d3010f190850604b95e42b5c682fe04488
5
5
  SHA512:
6
- metadata.gz: 61d79153b519577a9a4200403a54123341cfc9793188ba3abebc8ded45273482c538bfecdc8e3e9f497fcb66ec6b3ba1f2d600fa89158ea97be9ff9e6ac76d72
7
- data.tar.gz: 7efc390ba184dfbc4143bc7bfcf27a34ee024afb9a122569b7899451ae64fd167236dbf323a48ed2fc006e467c8391051b694574a1e37026106049dbc1a192ec
6
+ metadata.gz: a910e0c2a04e7af77d67ccd4effc1b4da3b373155b2710492f2bc7cb478d5f771c1f80f6fa79db3b265e5f704cc4104a3282c552ae9d7857d558deb5967ba5f0
7
+ data.tar.gz: 8205d8b299f10d91afa0032b78e444b73c2f95640d1099e9780b9ceaec8a833411cdf52bf46f57a542c3f11321de58b894909fd66a758fefbfa3899bac17499a
data/CHANGELOG.md CHANGED
@@ -1,3 +1,19 @@
1
+ ## Rails 7.0.7 (August 09, 2023) ##
2
+
3
+ * Fix `render collection: @records, cache: true` to cache fragments as bare strings
4
+
5
+ Previously it would incorrectly cache them as Action View buffers.
6
+
7
+ *Jean Boussier*
8
+
9
+ * Don't double-encode nested `field_id` and `field_name` index values
10
+
11
+ Pass `index: @options` as a default keyword argument to `field_id` and
12
+ `field_name` view helper methods.
13
+
14
+ *Sean Doyle*
15
+
16
+
1
17
  ## Rails 7.0.6 (June 29, 2023) ##
2
18
 
3
19
  * No changes.
@@ -9,7 +9,7 @@ module ActionView
9
9
  module VERSION
10
10
  MAJOR = 7
11
11
  MINOR = 0
12
- TINY = 6
12
+ TINY = 7
13
13
  PRE = nil
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
@@ -1754,7 +1754,7 @@ module ActionView
1754
1754
  # <tt>aria-describedby</tt> attribute referencing the <tt><span></tt>
1755
1755
  # element, sharing a common <tt>id</tt> root (<tt>post_title</tt>, in this
1756
1756
  # case).
1757
- def field_id(method, *suffixes, namespace: @options[:namespace], index: @index)
1757
+ def field_id(method, *suffixes, namespace: @options[:namespace], index: @options[:index])
1758
1758
  @template.field_id(@object_name, method, *suffixes, namespace: namespace, index: index)
1759
1759
  end
1760
1760
 
@@ -1774,7 +1774,7 @@ module ActionView
1774
1774
  # <%# => <input type="text" name="post[tag][]">
1775
1775
  # <% end %>
1776
1776
  #
1777
- def field_name(method, *methods, multiple: false, index: @index)
1777
+ def field_name(method, *methods, multiple: false, index: @options[:index])
1778
1778
  object_name = @options.fetch(:as) { @object_name }
1779
1779
 
1780
1780
  @template.field_name(object_name, method, *methods, index: index, multiple: multiple)
@@ -88,15 +88,25 @@ module ActionView
88
88
  # If the partial is not already cached it will also be
89
89
  # written back to the underlying cache store.
90
90
  def fetch_or_cache_partial(cached_partials, template, order_by:)
91
- order_by.index_with do |cache_key|
91
+ entries_to_write = {}
92
+
93
+ keyed_partials = order_by.index_with do |cache_key|
92
94
  if content = cached_partials[cache_key]
93
95
  build_rendered_template(content, template)
94
96
  else
95
- yield.tap do |rendered_partial|
96
- collection_cache.write(cache_key, rendered_partial.body)
97
+ rendered_partial = yield
98
+ if fragment = rendered_partial.body&.to_str
99
+ entries_to_write[cache_key] = fragment
97
100
  end
101
+ rendered_partial
98
102
  end
99
103
  end
104
+
105
+ unless entries_to_write.empty?
106
+ collection_cache.write_multi(entries_to_write)
107
+ end
108
+
109
+ keyed_partials
100
110
  end
101
111
  end
102
112
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actionview
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.6
4
+ version: 7.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-29 00:00:00.000000000 Z
11
+ date: 2023-08-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 7.0.6
19
+ version: 7.0.7
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 7.0.6
26
+ version: 7.0.7
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: builder
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -92,28 +92,28 @@ dependencies:
92
92
  requirements:
93
93
  - - '='
94
94
  - !ruby/object:Gem::Version
95
- version: 7.0.6
95
+ version: 7.0.7
96
96
  type: :development
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - '='
101
101
  - !ruby/object:Gem::Version
102
- version: 7.0.6
102
+ version: 7.0.7
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: activemodel
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - '='
108
108
  - !ruby/object:Gem::Version
109
- version: 7.0.6
109
+ version: 7.0.7
110
110
  type: :development
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - '='
115
115
  - !ruby/object:Gem::Version
116
- version: 7.0.6
116
+ version: 7.0.7
117
117
  description: Simple, battle-tested conventions and helpers for building web pages.
118
118
  email: david@loudthinking.com
119
119
  executables: []
@@ -246,12 +246,12 @@ licenses:
246
246
  - MIT
247
247
  metadata:
248
248
  bug_tracker_uri: https://github.com/rails/rails/issues
249
- changelog_uri: https://github.com/rails/rails/blob/v7.0.6/actionview/CHANGELOG.md
250
- documentation_uri: https://api.rubyonrails.org/v7.0.6/
249
+ changelog_uri: https://github.com/rails/rails/blob/v7.0.7/actionview/CHANGELOG.md
250
+ documentation_uri: https://api.rubyonrails.org/v7.0.7/
251
251
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
252
- source_code_uri: https://github.com/rails/rails/tree/v7.0.6/actionview
252
+ source_code_uri: https://github.com/rails/rails/tree/v7.0.7/actionview
253
253
  rubygems_mfa_required: 'true'
254
- post_install_message:
254
+ post_install_message:
255
255
  rdoc_options: []
256
256
  require_paths:
257
257
  - lib
@@ -267,8 +267,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
267
267
  version: '0'
268
268
  requirements:
269
269
  - none
270
- rubygems_version: 3.4.13
271
- signing_key:
270
+ rubygems_version: 3.4.10
271
+ signing_key:
272
272
  specification_version: 4
273
273
  summary: Rendering framework putting the V in MVC (part of Rails).
274
274
  test_files: []