TYPO3 Forge: Issueshttp://forge.typo3.org/http://forge.typo3.org/themes/typo3_forge/favicon/favicon.png?17058661692024-03-21T04:31:37ZTYPO3 Forge
Redmine TYPO3 Core - Bug #103444 (Resolved): YamlFileLoader has no logger instancehttp://forge.typo3.org/issues/1034442024-03-21T04:31:37ZBenjamin Franzkeben@bnf.dev
<p>Uncaught TYPO3 Exception Call to a member function error() on null<br />thrown in file /home/ben/src/TYPO3.CMS/typo3/sysext/core/Classes/Configuration/Loader/YamlFileLoader.php<br />in line 171</p> TYPO3 Core - Task #103278 (Resolved): Use TypoScript static file dependency chain in EXT:styleguidehttp://forge.typo3.org/issues/1032782024-03-04T22:46:48ZBenjamin Franzkeben@bnf.dev
<p>Load TypoScript dependencies via include_static_file.txt which<br />is the defined pattern for loading dependencies of a static template,<br />ensuring that both constants and typoscript setup of dependencies are<br />loaded, without having to load all required dependencies both in<br />constants.typoscript and setup.typoscript.</p> TYPO3 Core - Bug #102520 (Resolved): UserSessionManager tries to access normalizedParams since 12...http://forge.typo3.org/issues/1025202023-11-27T07:59:44ZBenjamin Franzkeben@bnf.dev
<p>Extensions relied on the fact that `normalizedParams` was not provided until 12.4.7, so they could pass a blunt ServerRequest to <code>BackendUserAuthentication->start()</code></p>
<p>This leads to an exception with EXT:container upgrade wizards, see attachment and following link<br />See also <a class="external" href="https://github.com/b13/container/issues/460">https://github.com/b13/container/issues/460</a></p> TYPO3 Core - Task #101782 (Closed): Use TypeScript tsconfig include instead of excludehttp://forge.typo3.org/issues/1017822023-08-28T20:26:45ZBenjamin Franzkeben@bnf.dev
<p>This helps to prevent hard-to-discover build failures, that only<br />happen on clean installs (e.g. CI).<br />This is because TypeScript will by default scan the entire source<br />dictionary (Build/ in our case) for possible includes.<br />We previously excluded /Build/composer in <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Build/composer/ is picked up by grunt build (Closed)" href="http://forge.typo3.org/issues/95046">#95046</a>, but it is actually<br />much better to explicitly include the actually used source paths<br />to also exclude build output (Build/JavaScript/) from being<br />reinterpreted by subsequential eslint or tsc compile runs.</p>
<p>Note that we also refactor the types/ directory in order to<br />be a folder that conforms to the @types/* packages conventions,<br />by being actually usable in the compilerOptions.types property.</p>
<p>Note that our custom global type definitions (types/) were previously<br />implicitly loaded as globally available sourcepaths. <br />With the new `include` option we could add them back, but then we<br />wouldn't notice if we do not add proper index.d.ts files (like we<br />did until now). Therefore index.d.ts files are added in here.</p>
<p>Now, with TypeScript being "clean", we need a another small<br />adjustment in order for eslint to still being able to lint<br />our types/ folder. Therefore tsconfig.json is extended to <br />include the types directory. See [1] for more information on<br />why eslint needs that.</p>
<p>Note that this happened with <a class="external" href="https://review.typo3.org/c/Packages/TYPO3.CMS/+/80736">https://review.typo3.org/c/Packages/TYPO3.CMS/+/80736</a> where clean installs failed with:<br /><pre>
Build/Scripts/runTests.sh -s lintTypescript
00:35
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
added 988 packages, and audited 989 packages in 9s
129 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
clean: postcss.plugin was deprecated. Migration guide:
https://evilmartians.com/chronicles/postcss-8-plugin-migration
Running "eslint:files" (eslint) task
Warning: Debug Failure. Unhandled declaration kind! ModuleDeclaration for { name: TYPO3; flags: ExportDoesNotSupportDefaultModifier|Property|ValueModule|ExportHasLocal|NamespaceModule|Module|Namespace|AccessorExcludes|GetAccessorExcludes|SetAccessorExcludes|PropertyOrAccessor|MethodExcludes|ClassMember|ValueModuleExcludes|FunctionExcludes|FunctionScopedVariableExcludes|Value|BlockScopedVariableExcludes|ParameterExcludes|RegularEnumExcludes|ClassExcludes|ConstEnumExcludes|EnumMemberExcludes|ModuleMember|Classifiable|Transient|All|Assignment; declarations: PropertyAccessExpression,Identifier,ModuleDeclaration,ModuleDeclaration,ModuleDeclaration,ModuleDeclaration }
Occurred while linting /builds/typo3/CI/cms/Build/Sources/TypeScript/backend/date-time-picker.ts:221
Rule: "@typescript-eslint/prefer-readonly" Use --force to continue.
</pre></p>
<p>Note that the error did not happen when the Build output <code>Build/JavaScript</code> was present. Removing that folder, made the error appear, addeding it back, made it disappear.<br />That show that eslint plugin (@typescript-eslint/prefer-readonly), which uses the typescript node module underneath, actually took the previous build output into account for the new build – this <strong>MUST</strong> be avoided.</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 - Epic #98287 (New): Use web components (via lit) in TYPO3 Backendhttp://forge.typo3.org/issues/982872022-09-07T18:46:15ZBenjamin Franzkeben@bnf.dev
<p>The scope of this epic is to use web components as replacement for the distribution of application logic between HTML templates and CSS/JavaScript files.</p>
<p>A side effect will often be that jQuery becomes useless/cumbersome and is implicitly superseded due do the native reactivity and scroping of web components.</p>
<p>Also see <a class="external" href="https://review.typo3.org/q/topic:lit">https://review.typo3.org/q/topic:lit</a></p> TYPO3 Core - Bug #95854 (Closed): Virtual root page is not shown when in workspace (or group mounts)http://forge.typo3.org/issues/958542021-11-03T08:04:50ZBenjamin Franzkeben@bnf.dev
<p>Since TYPO3 v9 (and until current v11.5.2) the page tree doesn't show the virtual root page (uid=0) when there are active webmounts.<br />This has the drawback that workspace users can no longer get an overview of all changes of <strong>all</strong> webmounts (via the virtual root page uid=0).</p>
<p>Desired state (as in v8):<br /><img src="http://forge.typo3.org/attachments/download/36516/pagetree-workspace-v8.png" alt="" loading="lazy" /></p>
<p>Current state (as in v9-v11):<br /><img src="http://forge.typo3.org/attachments/download/36515/pagetree-workspace-v11.png" alt="" loading="lazy" /></p> TYPO3 Core - Bug #95125 (Closed): Warning during ext_localconf loading causes deprecate write to ...http://forge.typo3.org/issues/951252021-09-06T15:55:54ZBenjamin Franzkeben@bnf.dev
<p>Steps to reproduce</p>
<p>Add something to ext_localconf.php that causes a PHP warning to occur, e.g.</p>
<p>`ext_localconf.php`:</p>
<pre><code class="php syntaxhl" data-language="php"><span class="nv">$foo</span> <span class="o">=</span> <span class="nb">file_get_contents</span><span class="p">(</span><span class="s1">'/tmp/path-to-missing-file.txt'</span><span class="p">);</span>
</code></pre>
<p>Then execute:</p>
<pre>
bin/typo3 cache:warmup
</pre>
<p>(or any other CLI command, but make sure to remove cached before)</p>
<p>Output:</p>
<pre>
PHP Deprecated: TYPO3\CMS\Core\Database\ConnectionPool can not be injected/instantiated during ext_localconf.php/TCA/ext_tables.php loading. Use lazy loading instead. in […]/typo3/sysext/core/Classes/ServiceProvider.php on line 142
</pre> TYPO3 Core - Bug #94415 (Closed): Use runtime cache for LanguageServicehttp://forge.typo3.org/issues/944152021-06-25T14:18:28ZBenjamin Franzkeben@bnf.dev
<p>Move state for caching purposes<br />from $GLOBALS[LANG] into the runtime cache<br />allowing for further reducing the need to keep<br />the LanguageService in a global state.</p> TYPO3 Core - Feature #93988 (Closed): Web Component based backend moduleshttp://forge.typo3.org/issues/939882021-04-26T11:53:50ZBenjamin Franzkeben@bnf.dev
<p>Pros:</p>
<ul>
<li>Avoid usage of iframes</li>
<li>Avoid inter-frame communication</li>
<li>Avoid page-reloads.</li>
<li>Less backend-generated HTML, HTML via Webcomponents/Lit.</li>
</ul> TYPO3 Core - Task #93967 (Closed): yarn install shows bootstrap@5.0.0-beta3 incorrect peer depend...http://forge.typo3.org/issues/939672021-04-22T12:46:27ZBenjamin Franzkeben@bnf.dev
<pre>
yarn install
warning " > bootstrap@5.0.0-beta3" has incorrect peer dependency "@popperjs/core@^2.9.1".
</pre> TYPO3 Core - Bug #88808 (Closed): Warning in AbstractConfigurationManagerTesthttp://forge.typo3.org/issues/888082019-07-19T20:45:19ZBenjamin Franzkeben@bnf.dev
<pre>
TYPO3\CMS\Extbase\Tests\Unit\Configuration\AbstractConfigurationManager
⚠ Controller of switchable controller actions can be a fully qualified class name
┐
├ Trying to configure method "getSwitchableControllerActions" which cannot be configured because it does not exist, has not been specified, is final, or is static
│
</pre> TYPO3 Core - Task #87742 (Closed): Use real ObjectManager stubs in unit testshttp://forge.typo3.org/issues/877422019-02-19T12:19:14ZBenjamin Franzkeben@bnf.dev
<p>Prevent invocation of the constructor (which instantiates<br />an internal instance of the extbase container) and do not<br />mix usage of mocked and stubbed methods.</p>
<p>The mixture happened due to using setMethods(['get']) – where<br />all other methods (besides 'get()') are actually proxied to the<br />real ObjectManager.</p> TYPO3 Core - Bug #87504 (Closed): Use statement for Typo3DatabaseBackend as used in Bootstrap::cr...http://forge.typo3.org/issues/875042019-01-21T13:22:59ZBenjamin Franzkeben@bnf.devTYPO3 Core - Bug #78728 (Closed): YouTubeRender should urlencode the originhttp://forge.typo3.org/issues/787282016-11-17T07:01:01ZBenjamin Franzkeben@bnf.dev
<p>Commit 84ab413 (<a class="external" href="https://review.typo3.org/49416">https://review.typo3.org/49416</a>) fixed the origin<br />parameter to incude the full host (and thus the scheme).<br />The full host url was not urlencoded. As the scheme contains<br />slashes we should really urlencode that.</p>