| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ |
|
| |
|
|
|
|
|
|
| |
Avoid computing the same fragment digest many times when looping over templates.
The cache is cleared on every request so template changes are still picked up.
|
|\
| |
| | |
Allow `pluralize` helper to take a locale.
|
| |
| |
| |
| | |
This is already supported in `ActiveSupport::Inflector#pluralize` and `String#pluralize`, so we just forward the locale.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a template includes `# Template Collection: ...` anywhere in its
source, that name will be used as the cache name for the partial that is
rendered for the collection.
This allows users to enable collection caching even if the template
doesn't start with `<% cache ... do %>`.
Moreover, the `# Template Collection: ...` notation is recognized in all
template types (and template types other than ERB can define a
resource_cache_call_pattern method to allow the `cache ... do` pattern
to be recognized too).
|
|\
| |
| |
| | |
Passing nil to image_tag
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adds the `virtual_path` option to `cache_fragment_name` so it can
be provided when needed.
That allows `cache_collection_render` to get the appropriate cache
key with the digest generated based on the template and prevent
collision with other templates that cache the same collection.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
The regular expression which was used to detect partial templates that
begin with a `<% cache ... do %>` call missed some cases. This commits
attempts to improve the detection for some cases such as multi-line
comments at the beginning of the template. The different templates are
listed in two new unit test methods.
Note that specially crafted Ruby code can still evade such `cache`-call
detection: for example, a user might have its own method which itself
calls the Rails `cache` helper. In such a case, the template's code
doesn't start with a literal `cache` string and therefore will not be
eligible for collection caching.
|
|\
| |
| | |
Add missing spec and documentation for button_tag helper
|
| | |
|
|\ \
| | |
| | | |
Removed not needed includes, As record_tag_helper is moved to a gem we..
|
| |/
| |
| |
| | |
testing is completely here now. RenderErbUtils and AM::Conversion are not used
|
|\ \
| | |
| | | |
add error log that notify 'file not found' when using cache_digest dependency rake
|
| |/
| |
| |
| | |
cache_digests:dependency and cache_digests:nested_dependency tasks
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`Tags::Base#select_content_tag`.
Previously, passing a falsey value to `include_blank` would be ignored if the
field was required, and a blank line would still be inserted. The following will
now raise instead of quietly failing:
`select("post", "category", %w(a required field), { include_blank: false }, required: 'required')`
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
When one rendered a partial template without specifying an object
or a collection (e.g. <%= render partial: 'partial_name' %>), Rails
would make an object called :partial_name available in local_assigns.
I don't think this was the intended behavior, since no local variable
called 'partial_name' gets defined in the view.
|
|\ \
| |/
|/| |
remove redundant parenthesis.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Prompted by:
https://github.com/rails/rails/commit/e38dd7bfa4360e241eadf0cf44abdf86ea33a393#commitcomment-11011496
/cc @kuldeepaggarwal
|
| |
| |
| |
| | |
supported by I18n.
|
|\ \
| | |
| | | |
Handle raise flag in translate when both main and default translation is missing.
|
| | |
| | |
| | |
| | | |
missing. Fixes #19967
|
|\ \ \
| |/ /
|/| | |
Actionview image tag size option override
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This illustrates the purpose of the block for `link_to_if` and
`link_to_unless` helper methods.
It should help to prevent further mistakes like #19844.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
stevenspiel/link_to_if_block_helper_addition"
This reverts commit d459b001b43d25053e7982e96eb8383538a6e358, reversing
changes made to 4d4950fae9e2a6970b5f1793aadc56a0b44e28a3.
:sweat:
The block is not supposed to be passed to `link_to`. It's used for a
customized behavior of the `condtion = false` case. The docs
illustrate that like so:
```
<%=
link_to_if(@current_user.nil?, "Login", { controller: "sessions", action: "new" }) do
link_to(@current_user.login, { controller: "accounts", action: "show", id: @current_user })
end
%>
```
|
|\ \ \
| |_|/
|/| |
| | | |
Update url_helper.rb
|
| | | |
|
| |/
|/|
| |
| | |
This method is not in use since 479c7cacd5db58ab7200bc1de58c829a1a643278
|
|/
|
|
|
|
|
|
|
| |
Running Action View test case currently printing out this warning:
lib/mathn.rb is deprecated
This should silence the warning since we really want to require this
file in this test.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
4.2.1 introduced a change to the way `translate`/`t` works with an
option of `default: [[]]`. In 4.2.0, this would give a default value of
`[]`, but in 4.2.1, it leads to a missing translation.
`default: [[]]` is again allowed for cases where a default of `[]` is
needed.
This addresses GitHub issue 19640.
|
|
|
|
| |
Strip nils out of default translations. Fixes #19419
|
| |
|
| |
|
| |
|
|
|
|
| |
Prevents double escaping errors, such as "&" becoming "&amp;".
|
|
|
|
| |
Closes #19227.
|
|
|
|
| |
can't acquire a encoding from StreamingBuffer. fixes #12001
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous version of rails(4.2.0) you can pass objects
to the default option of translation helper.
For example:
```ruby
t('foo', default: 1)
```
But on rails 4.2.1 version this kind of use stopped to work,
because started only to accept String types.
Now with this fix we can use orther value types on this
helper again.
|
|\
| |
| |
| |
| | |
Mession/fix_test_dependency_of_erb_template_partial_with_layout
Fix dependency tracker bug
|
| | |
|
|\ \
| |/
|/| |
Merge multi_fetch_fragments.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Collections can take advantage of `multi_read` if they render one template
and their partials begin with a cache call.
The cache call must correspond to either what the collections elements are
rendered as, or match the inferred name of the partial.
So with a notifications/_notification.html.erb template like:
```ruby
<% cache notification %>
<%# ... %>
<% end %>
```
A collection would be able to use `multi_read` if rendered like:
```ruby
<%= render @notifications %>
<%= render partial: 'notifications/notification', collection: @notifications, as: :notification %>
```
|
| |
| |
| |
| |
| |
| |
| |
| | |
Makes caching a collection of template partials faster using `read_multi`
on the Rails cache store.
Some caching implementations have optimized `read_multi` so we don't have
to check in the cache store for every template.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The testing of error messages have been implemented wrongly a few times.
This is an attempt to fix it.
For example, some of these test should have failed with the new code.
The reason they are not failling with the new string is the fact they
were not being tested beforehand.
|