Cannot uninstall External Entities Files

Created on 8 July 2025, 18 days ago

Problem/Motivation

I'm trying to uninstall External Entities, which requires me to first uninstall External Entities Files.
External Entities files is unable to be uninstalled without deleting all external files in my site (which were not created or provided with this module)
When I check the list of files it has flagged for deletion, it includes a long list that has files that exist internally

Steps to reproduce

Attempt to uninstall the module and visit the list of files it has flagged: /admin/modules/uninstall/entity/xnttfile

Proposed resolution

Change how this check is performed, or how this mapping is defined to allow files that do not depend on this module to persist. If for whatever reason, files existing in the system prior to installation have become dependent on this module, we need a way to decouple those.

Remaining tasks

User interface changes

API changes

Data model changes

🐛 Bug report
Status

Needs work

Version

3.0

Component

Code

Created by

🇦🇺Australia roxflame Melbourne

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @roxflame
  • 🇫🇷France guignonv Montpellier

    I'll check that once I'm done with the translation support issue.
    It's weird though. I don't see how the system would know about external files since their virtual file identifier is not in the database.

  • 🇫🇷France guignonv Montpellier
  • 🇫🇷France guignonv Montpellier

    First, I'd like to clarify one thing: from my perspective, you cannot use External Entities 3.0.0 with the xnttfiles module as they are not compatible. The "xnttfiles" module is compatible with external entity 2.0.x and has been integrated into 3.0.0 core now.

    The problem you are referring to, however, is reproducible in 3.0.0 using the "External entities file and image fields support" sub-module.
    I can reproduce the problem and I'll fix for v3. If you really have xnttfiles module installed, it might probably be because you updated from 2.0.0 to 3.0.0. I got a dev site with both xntt 3.0.0 and xnttfiles, so it is not impossible but it should not happen on clean installs.

    Could you confirm which version of External Entity module you're running (2.0.x or 3.0.x) and if you are really using the xnttfiles module (while a 3.0.0 update should have replaced the use of the xnttfiles module by the xntt 3.0.0 core file features).

  • 🇫🇷France guignonv Montpellier

    UPDATE: It needs more than a simple fix. An "external file storage" class needs to be created to replace all the default file storage class methods that relies on database entries. I've started some work and it will be fixed for v3. I hesitated to change the priority to "Major" as it should be uninstallable without any issue but it does not prevent the system from working.

Production build 0.71.5 2024