Bug #89348

EXT:core has hidden dependency on EXT:frontend (circular dependency)

Added by Claus Due about 1 year ago. Updated 7 months ago.

Status:
Accepted
Priority:
Should have
Assignee:
-
Category:
Code Cleanup
Start date:
2019-10-04
Due date:
% Done:

0%

TYPO3 Version:
9
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

In ext_tables.php of EXT:core, classes from EXT:frontend are used. However, EXT:frontend is not declared as dependency of EXT:core (since this would create a circular dependency).

The problem is usage of class constants from a class that does not exist without EXT:frontend installed.

Suggest moving these constants to EXT:core (since they relate to "pages" table which is supposed to be operable even without EXT:frontend installed and is fully declared as SQL in EXT:core).

History

#1 Updated by Frank Naegler about 1 year ago

  • Status changed from New to Needs Feedback

I guess you mean PageRepository::DOKTYPE_* ?
This class is moved into core for v10. I guess this must not be fixed in v9 or is this a pressing issue?

#2 Updated by Claus Due 10 months ago

IMHO this would still need to be fixed/backported to v9. There's another case that was fixed recently in EXT:extbase - https://github.com/TYPO3/TYPO3.CMS/commit/49dcd95090faffb7931131348c6d9ac17428998f

Until this is fixed in v9 the circular dependency still exists therein.

#3 Updated by Riccardo De Contardi 10 months ago

  • Status changed from Needs Feedback to New

#4 Updated by Christian Eßl 8 months ago

  • Category set to Code Cleanup

#5 Updated by Georg Ringer 7 months ago

  • Status changed from New to Accepted
  • Target version set to Candidate for Major Version

#6 Updated by Susanne Moog 7 months ago

For version 9 I would not fix that. Both core and frontend are marked as "partOfMinimalUsableSystem" - so circular dependency or not, we are clearly stating that the system won't work if one of them isn't there.

Also available in: Atom PDF