TYPO3 Forge: Issueshttp://forge.typo3.org/http://forge.typo3.org/themes/typo3_forge/favicon/favicon.png?17058661692023-08-25T04:08:11ZTYPO3 Forge
Redmine TYPO3 Core - Bug #101749 (Closed): EXT:form element type URL element inspector shows a stray Vali...http://forge.typo3.org/issues/1017492023-08-25T04:08:11ZBenjamin Franzkeben@bnf.dev
<p><img src="http://forge.typo3.org/attachments/download/37931/formeditor-url-zero-validators.png" alt="" loading="lazy" /></p>
<p>With the deprecation removal of regular expressions<br />based EXT:form validators in <a class="issue tracker-4 status-5 priority-4 priority-default closed child" title="Task: Remove RegularExpressionValidator based validation in ext:form (Closed)" href="http://forge.typo3.org/issues/101070">#101070</a>, the set of available<br />validators for the form element type URL became empty.<br />(See EXT:form/Configuration/Yaml/FormElements/Url.yaml)</p>
<p>Instead of only removing the select element from the DOM,<br />the entire form-group should e removed, in order to also hide<br />the corresponding <label> tag, as such a stray label tag<br />isn't hehlpful for an enduser and is therefore actually even<br />invalid HTML (as the reference to an input element is missing).</p> TYPO3 Core - Bug #101747 (Rejected): Web Components with CSS in shadowRoot are not usable in cros...http://forge.typo3.org/issues/1017472023-08-24T11:06:22ZBenjamin Franzkeben@bnf.dev
<p>As already reported in <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Task: Streamline icon elements (Closed)" href="http://forge.typo3.org/issues/100270">#100270</a> and reverted in <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Task: Reactivate usage of constructable stylesheets for icon element (Closed)" href="http://forge.typo3.org/issues/101464">#101464</a>, web Components with CSS in shadowRoot are not usable in cross frame boundaries.<br />This happens when a custom element is created within <code>window.list_frame</code> via <code>document.createElement()</code> and is then attached to another frame via <code>appendChild()</code>.<br />This mostly happens when code is written that renders web components into a Modal (which is placed in the outer frame)</p>
<p>Following exception is logged in that case.<br /><pre>
css-tag.js?bust=1692874613:6 Uncaught DOMException: Failed to set the 'adoptedStyleSheets' property on 'ShadowRoot': Sharing constructed stylesheets in multiple documents is not allowed
at S (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/@lit/reactive-element/css-tag.js?bust=1692874613:6:1012)
at IconElement.createRenderRoot (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/@lit/reactive-element/reactive-element.js?bust=1692874613:6:2898)
at IconElement.createRenderRoot (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-element/lit-element.js?bust=1692874613:6:163)
at IconElement.connectedCallback (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/@lit/reactive-element/reactive-element.js?bust=1692874613:6:3010)
at IconElement.connectedCallback (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-element/lit-element.js?bust=1692874613:6:478)
at R.k (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-html/lit-html.js?bust=1692874613:6:4627)
at R.$ (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-html/lit-html.js?bust=1692874613:6:4701)
at R.g (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-html/lit-html.js?bust=1692874613:6:5085)
at R._$AI (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-html/lit-html.js?bust=1692874613:6:4534)
at D (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-html/lit-html.js?bust=1692874613:6:7898)
</pre></p>
<p>This can easily reproduced via:<br /><pre><code class="javascript syntaxhl" data-language="javascript"><span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">.</span><span class="nf">appendChild</span><span class="p">(</span><span class="nb">window</span><span class="p">.</span><span class="nx">list_frame</span><span class="p">.</span><span class="nb">document</span><span class="p">.</span><span class="nf">createElement</span><span class="p">(</span><span class="dl">'</span><span class="s1">typo3-backend-icon</span><span class="dl">'</span><span class="p">))</span>
</code></pre></p>
<p>Which also logs to the console:<br /><pre>
css-tag.js?bust=1692874613:6 Uncaught DOMException: Failed to set the 'adoptedStyleSheets' property on 'ShadowRoot': Sharing constructed stylesheets in multiple documents is not allowed
at S (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/@lit/reactive-element/css-tag.js?bust=1692874613:6:1012)
at IconElement.createRenderRoot (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/@lit/reactive-element/reactive-element.js?bust=1692874613:6:2898)
at IconElement.createRenderRoot (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-element/lit-element.js?bust=1692874613:6:163)
at IconElement.connectedCallback (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/@lit/reactive-element/reactive-element.js?bust=1692874613:6:3010)
at IconElement.connectedCallback (http://t3core.localhost/typo3/sysext/core/Resources/Public/JavaScript/Contrib/lit-element/lit-element.js?bust=1692874613:6:478)
at <anonymous>:1:15
</pre></p>
<p>Note that this is known in lit, but not easily fixable, as the <code>css``</code> template literaly implicitly use <code>(window).CSSStyleSheet</code></p>
<p><a class="external" href="https://github.com/lit/lit-element/issues/1139">https://github.com/lit/lit-element/issues/1139</a><br /><a class="external" href="https://github.com/lit/lit/issues/2068">https://github.com/lit/lit/issues/2068</a></p> TYPO3 Core - Bug #99590 (Closed): Accordion in image processing environment test not visiblehttp://forge.typo3.org/issues/995902023-01-18T09:09:02ZBenjamin Franzkeben@bnf.dev
<p>Current output:</p>
<p><img src="http://forge.typo3.org/attachments/download/37323/panel-missing.png" alt="" loading="lazy" /></p>
<p>Expected output:</p>
<p><img src="http://forge.typo3.org/attachments/download/37322/panel-expected.png" alt="" loading="lazy" /></p> TYPO3 Core - Bug #99352 (Closed): PDF Metadata double-encoded by index-search indexer with popple...http://forge.typo3.org/issues/993522022-12-13T08:13:14ZBenjamin Franzkeben@bnf.dev
<pre>
pdfinfo version 21.08.0
Copyright 2005-2021 The Poppler Developers - http://poppler.freedesktop.org
Copyright 1996-2011 Glyph & Cog, LLC
</pre>
<p>There are different versions of pdfinfo available in the wild.<br />Debian/Fedora use pdfinfo (>v20) from the poppler-utils package.<br />Also good hosters like Hetzner use this version.<br />This tool defaults to UTF-8 output for metadata:</p>
<pre>
pdfinfo umlauts-metadata.pdf | grep Title
Title: Test æ ø å ü ö ä
</pre>
<p>On the other hand there are hosters like Mittwald and Domainfactory, which use the older v3 of pdfinfo which defaults to Latin1 output.</p>
<pre>
pdfinfo -v
pdfinfo version 3.02
Copyright 1996-2007 Glyph & Cog, LLC
</pre>
<p>This tool produces Latin1 output by default:</p>
<pre>
pdfinfo umlauts-metadata.pdf | grep Title
Title: Test � � � � � �
</pre>
<p>Both versions support an <code>-enc UTF-8</code> option, which should be used by TYPO3 to circumvent the differences between these tools, instead of always implying that v3 is used and forcefully converting from ISO-8859-1 to UTF_8 – as added in See <a class="external" href="https://review.typo3.org/c/Packages/TYPO3.CMS/+/76861">https://review.typo3.org/c/Packages/TYPO3.CMS/+/76861</a><br /> – which leads to double-encoding with the poppler-utils pdfinfo variant.</p>
<p><img src="http://forge.typo3.org/attachments/download/37256/umlauts-double-encoding.png" alt="" loading="lazy" /></p> TYPO3 Core - Bug #97331 (Closed): PageTree contextmenu click on node backgrounds shows both, syst...http://forge.typo3.org/issues/973312022-04-07T17:03:13ZBenjamin Franzkeben@bnf.dev
<p><img src="http://forge.typo3.org/attachments/download/36832/two-context-menus.png" alt="" loading="lazy" /></p> TYPO3 Core - Bug #97301 (Closed): Avoid global jQuery usage in RTE link wizardhttp://forge.typo3.org/issues/973012022-04-05T11:52:37ZBenjamin Franzkeben@bnf.dev
<p>The global variable $ (window.$) has been removed with <a class="issue tracker-4 status-5 priority-4 priority-default closed child" title="Task: Remove global jquery object window.$ in TYPO3 Backend (Closed)" href="http://forge.typo3.org/issues/97243">#97243</a>.<br />This caused the RTE link wizard to fail with a JavaScript<br />error as $.isEmptyObject is used in typo3link.js.</p> TYPO3 Core - Bug #97144 (Closed): Slow module scrolling in Google Chrome on Linuxhttp://forge.typo3.org/issues/971442022-03-08T15:09:57ZBenjamin Franzkeben@bnf.dev
<p>Scrolling the list module with 100 entries causes FPS to drop to <15fps on Google Chrome (v99) with Linux during scrolling.<br />This is for sure a Chrome Bug, but reveals that <code>overflow: hidden</code> and <code>scrolling="no"</code> on the module iframe is not a good idea.</p>
<p>It would be great to remove the <code>scrolling="no"</code> parameter from the module iframe and enable scrolling on <html> instead of .module-body</p>
<p>There are some past issues to take into account when changing the module-scrolling semantics: <a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: Correct horizontal scrolling in iOS browsers (Closed)" href="http://forge.typo3.org/issues/83841">#83841</a> <a class="issue tracker-1 status-5 priority-3 priority-lowest closed" title="Bug: rte_ckeditor displaces dropdown overlays and jumps to top of page on crome/safari (Closed)" href="http://forge.typo3.org/issues/80116">#80116</a> <a class="issue tracker-1 status-5 priority-6 priority-high2 closed" title="Bug: RTE CKeditor top-positioning for maximize and combopanels is broken in browsers with webkit (Closed)" href="http://forge.typo3.org/issues/82780">#82780</a></p>
<p>Using overflow: auto on <code><html></code> as suggested in <a class="external" href="https://forge.typo3.org/issues/80116#note-7">https://forge.typo3.org/issues/80116#note-7</a> was mainly avoided because of mobile iOS overscroll behaviour, otherwise this could have already been changed with: <a class="external" href="https://review.typo3.org/c/Packages/TYPO3.CMS/+/55647">https://review.typo3.org/c/Packages/TYPO3.CMS/+/55647</a></p>
<p>Consider using the standardized <code>overscroll-behaviour</code> property to fix issues on that part.</p> TYPO3 Core - Bug #97123 (Closed): ResourceCompressorTest.php fails in random ordered unit testshttp://forge.typo3.org/issues/971232022-03-06T06:44:52ZBenjamin Franzkeben@bnf.dev
<p><a class="external" href="https://git.typo3.org/typo3/CI/cms/-/jobs/1109375">https://git.typo3.org/typo3/CI/cms/-/jobs/1109375</a></p>
<pre>
1) TYPO3\CMS\Core\Tests\Unit\Resource\ResourceCompressorTest::getFilenamesFromMainDirInBackendContext with data set #3 ('typo3temp/assets/compressed/.htaccess', '../typo3temp/assets/compresse...access')
Failed asserting that two strings are identical.
--- Expected
+++ Actual
@@ @@
-'../typo3temp/assets/compressed/.htaccess'
+'typo3temp/assets/compressed/.htaccess'
/builds/typo3/CI/cms/typo3/sysext/core/Tests/Unit/Resource/ResourceCompressorTest.php:604
</pre>
<p>Steps to reproduce:</p>
<pre>
rm -rf typo3temp/Build/Scripts/runTests.sh -s unitRandom -o 1646183048
</pre>
<p>Also reproducible with:</p>
<pre>
rm -f typo3temp/assets/compressed/.htaccess && Build/Scripts/runTests.sh -s unit -e "--filter getFilenamesFromMainDirInBackendContext" typo3/sysext/core/Tests/Unit/Resource/ResourceCompressorTest.php
</pre> TYPO3 Core - Bug #96978 (Closed): Backend "Stay logged in" button does refresh the login-sessionhttp://forge.typo3.org/issues/969782022-02-20T13:50:53ZBenjamin Franzkeben@bnf.dev
<p><strong>Steps to reproduce:</strong></p>
<p>1. Set <code>$GLOBALS['TYPO3_CONF_VARS']['BE']['sessionTimeout']</code> to <code>70</code>.<br />2. Login via /typo3/<br />3. Wait 60 seconds for the login-refresh-popup to occur<br />4. Click the "Stay logged in" button<br />5a Wait 10 seconds and click on a module => A redirect to the login screen will appear<br />5b Wait another 60 seconds => A password-box will appear because the session has not been updated.</p>
<p><strong>Description:</strong><br />For unknown reasons the /ajax/login/refresh<br />route has never been used (all the way back to v6),<br />to request a session timeout update.</p>
<p>Instead the route /ajax/login/timedout, <strong>without</strong> the<br />skipSessionUpdate=1 parameter has been used to<br />refresh an existing session.</p>
<p>With the introducting of configurable loute parameters<br />in <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Feature: Move skipSessionUpdate values to AjaxRoutes config (Closed)" href="http://forge.typo3.org/issues/81409">#81409</a> this inconsitency wasn't noticed and the<br />skipSessionUpdate parameter has been moved into the<br />route-configuration, which meant /ajax/login/timedout was<br />always called with skipSessionUpdate=1,<br />even as result of the "Stay logged in" button, where<br />a session update was intended.</p>
<p>Use the dedicated /ajax/login/refresh route<br />in order to actually refresh the session.</p> TYPO3 Core - Bug #96960 (Closed): PHP 8.1 warning in StoragePermissionsAspect causes 404 in tx_cm...http://forge.typo3.org/issues/969602022-02-18T07:07:41ZBenjamin Franzkeben@bnf.dev
<p>index.php?eID=tx_cms_showpic always returns 404 with PHP 8.1 because of a PHP Warning in StoragePermissionsAspect that is catched in ShowImageController and always converted to 404.</p>
<p>Inspecting the exception catched in <a class="external" href="https://github.com/TYPO3/typo3/blob/b843e0dac3b59097b3fdda04d22d362ec2de4be1/typo3/sysext/frontend/Classes/Controller/ShowImageController.php#L221-L223">https://github.com/TYPO3/typo3/blob/b843e0dac3b59097b3fdda04d22d362ec2de4be1/typo3/sysext/frontend/Classes/Controller/ShowImageController.php#L221-L223</a><br />reveals the following PHP warning:</p>
<pre>
PHP Warning: Undefined global variable $BE_USER in /var/www/html/typo3/sysext/core/Classes/Resource/Security/StoragePermissionsAspect.php line 46
</pre> TYPO3 Core - Bug #96947 (Closed): preselected TCA useOrOverridePlaceholder checkbox/input fields ...http://forge.typo3.org/issues/969472022-02-17T12:34:04ZBenjamin Franzkeben@bnf.dev
<p>For example styleguide input_28 is autofocused on initial load because <code>useOrOverridePlaceholder</code> fields are triggered unconditionally since <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Task: Focus assigned fields of of null placeholder fields on activation (Closed)" href="http://forge.typo3.org/issues/90879">#90879</a></p> TYPO3 Core - Bug #96937 (Closed): t3editor CodeCompletionController fails for integer based TypeS...http://forge.typo3.org/issues/969372022-02-17T06:40:45ZBenjamin Franzkeben@bnf.dev
<p>When walking through the treeMap, the controller fails for</p>
<p>typo3/sysext/fluid_styled_content/Configuration/TypoScript/ContentElement/Bullets.typoscript:<br /><code>10 = TYPO3\CMS\Frontend\DataProcessing\SplitProcessor</code></p>
<p>as 10 will be parsed into <code>int</code> by the TemplateService.</p>
<pre>
(1/1) TypeError
substr(): Argument #1 ($string) must be of type string, int given
in /var/www/html/typo3/sysext/t3editor/Classes/Controller/CodeCompletionController.php line 94
</pre> TYPO3 Core - Bug #96933 (Closed): External URL LinkBrowser throws JavaScript error because of mis...http://forge.typo3.org/issues/969332022-02-16T20:53:20ZBenjamin Franzkeben@bnf.dev
<pre>
java-script-item-processor.js?bust=1645042473:13 Uncaught (in promise) TypeError: Failed to resolve module specifier "@typo3/backend/modal.js". Relative references must start with either "/", "./", or "../".
at moduleImporter (java-script-item-processor.js?bust=1645042473:13:263)
at loadModule (java-script-item-processor.js?bust=1645042473:13:663)
at executeJavaScriptModuleInstruction (java-script-item-processor.js?bust=1645042473:13:1367)
at JavaScriptItemProcessor.javaScriptModuleInstruction (java-script-item-processor.js?bust=1645042473:13:2136)
at JavaScriptItemProcessor.invoke (java-script-item-processor.js?bust=1645042473:13:2047)
at java-script-item-processor.js?bust=1645042473:13:1889
at Array.forEach (<anonymous>)
at JavaScriptItemProcessor.processItems (java-script-item-processor.js?bust=1645042473:13:1873)
at java-script-item-handler.js?1645042365:13:275
</pre> TYPO3 Core - Bug #91074 (Rejected): typo3conf/ folder is not created when using a custom app-dir ...http://forge.typo3.org/issues/910742020-04-17T01:15:10ZBenjamin Franzkeben@bnf.dev
<p>In composer mode in composer.json:</p>
<pre><code>"extra": {<br /> "typo3/cms": {<br /> "app-dir": "custom",<br /> "web-dir": "public" <br /> }<br /> },</code></pre>
<p>In this case Environment::$projectPath would be /path/to/root/custom and Environment::$publicPath would be /path/to/root/public.</p>
<p>The typo3conf folder is then generated in /path/to/root/custom/typo3conf instead of /path/to/root/public/typo3conf.</p>
<p>This is actually by accident, because "custom" and "public" have the same length.<br />Reason is the code in <a class="external" href="https://git.typo3.org/Packages/TYPO3.CMS.git/blob/9fb677f6f3b3a1cd584b9ef183b35da771d3e25d:/typo3/sysext/install/Classes/FolderStructure/DefaultFactory.php#l134">https://git.typo3.org/Packages/TYPO3.CMS.git/blob/9fb677f6f3b3a1cd584b9ef183b35da771d3e25d:/typo3/sysext/install/Classes/FolderStructure/DefaultFactory.php#l134</a><br /><pre>
$publicPath = substr(Environment::getPublicPath(), strlen(Environment::getProjectPath())+1);
</pre><br />which tries to substract the project path from the public path, while assuming that project path is an ancestor, which results in a public path <code>""</code> to be calculate.<br />The result should rather be <code>"../public"</code>.</p>
<p>We should rather generate a relative path and adapt the FolderStructur Factory to handle relative paths, include partent dots ("..").</p> TYPO3 Core - Bug #87997 (Rejected): Links to workspace overlays should not be generated without b...http://forge.typo3.org/issues/879972019-03-25T11:49:57ZBenjamin Franzkeben@bnf.dev
<p>If an editor links to a versioned page id (let's say 1011) directly (e.g. by specifying that id in header_link),<br />that link is currently generated as /index.php?id=1011 when the frontend is visited as a regular visitor (e.g. without backend/workspace context).</p>
<p>Visiting that page will fail with "page not found" (which is fine).</p>
<p>It would be expected that links wouldn't be generated at all (that means: link is empty), as for hidden/deleted pages.</p>