Problem/Motivation

Three pages render from the string, translation, project and release tables but were cached with a permanent max-age and no cache tags: explore languages, explore projects and the welcome page. Dynamic page cache therefore kept serving each user the first version it rendered, so after a release was parsed the languages page still said 'No strings to translate.' until a cache clear, and the projects page ignored the initial filter because that query argument was not part of the cache key.

The fix adds the entity list cache tags for strings, translations, projects, releases and languages, which Drupal invalidates automatically whenever one of those entities is saved, plus the user.permissions context and, on the projects page, the url.query_args:initial context. The permanent max-age is dropped. It touches only the three controllers, no data or template changes.

Was found while writing tests for #3621205: Port the Drupal 7 l10n_community test suite to 3.0.x functional tests so test coverage is included there.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

API changes

Data model changes

LLM disclosuer

LLM was used to find, diagnose and fix this issue.

Comments

gábor hojtsy created an issue. See original summary.

gábor hojtsy’s picture

Status: Active » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

gábor hojtsy’s picture

Issue summary: View changes

  • afc8c185 committed on 3.0.x
    fix #3621206: Languages, projects and welcome pages are cached without...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.