Consider checking checksum of interfaces during container building for proxy services

Created on 27 June 2015, almost 10 years ago
Updated 19 May 2025, 15 days ago

Follow-up to #2408371: Proxies of module interfaces don't work β†’

Problem/Motivation

#2408371: Proxies of module interfaces don't work β†’ introduced manual building of proxies. However when / if an interface changes, the proxy could get outdated, which would result in a fatal error when the service is used.

This is especially important when a service is seldom used and no full test suite exists that test this code path.

Proposed resolution

- Add a checksum into the proxies either as an annotation or as a static class property.
- Calculate the checksum based on the dump of the reflection class (ignores comments) OR parse token result. (see e.g. symfony class map generator)

Probably using Reflection is the simplest both for the property and the checksum.

Remaining tasks

- Discuss
- Do it

User interface changes

- None

API changes

- None

Data model changes

- None

πŸ“Œ Task
Status

Postponed: needs info

Version

11.0 πŸ”₯

Component

base system

Created by

πŸ‡©πŸ‡ͺGermany Fabianx

Live updates comments and jobs are added and updated live.
  • Performance

    It affects performance. It is often combined with the Needs profiling tag.

  • stale-issue-cleanup

    To track issues in the developing policy for closing stale issues, [Policy, no patch] closing older issues

Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • πŸ‡ΊπŸ‡ΈUnited States smustgrave

    Thank you for creating this issue to improve Drupal.

    We are working to decide if this task is still relevant to a currently supported version of Drupal. There hasn't been any discussion here for over 8 years which suggests that this has either been implemented or is no longer relevant. Your thoughts on this will allow a decision to be made.

    Since we need more information to move forward with this issue, the status is now Postponed (maintainer needs more info). If we don't receive additional information to help with the issue, it may be closed after three months.

    Thanks!

Production build 0.71.5 2024