Bug #84227
closedpage tsconfig file includes (and record field) are reversed in FE
100%
Description
Test case 1¶
Consider two tsconfig files:
foo1.tsconfig
foo = 1
foo2.tsconfig
foo =2
Include them on a page in this order: foo1, foo2
The info module says that on this page the resulting page TSconfig is foo = 2
, which is correct.
Debugging frontend (TypoScriptFrontendController::getPagesTSconfig) though, reveals that foo = 1
in FE.
Test case 2¶
Include the above foo1.tsconfig file and add foo = 2
in the TSconfig field of the page record.
The same behaviour as above can be observed.
Analysis¶
The reason is that page TSconfig resolution is implemented differently for FE and BE.
BE walks the rootline and collects TSconfig from top to bottom, whereas FE walks from bottom to top and reverses the array afterwards, BUT the individual tsconfig_includes of each pages are always fetched in the given order in the page record, which mean that their order is reversed too in FE context causing the observed behaviour above.