TYPO3 Forge: Issueshttp://forge.typo3.org/http://forge.typo3.org/themes/typo3_forge/favicon/favicon.png?17058661692024-03-06T10:42:13ZTYPO3 Forge
Redmine TYPO3 Core - Task #103297 (Resolved): Add composer-mode to our acceptance test matrixhttp://forge.typo3.org/issues/1032972024-03-06T10:42:13ZBenjamin Franzkeben@bnf.dev
<p>All applicable acceptance tests should also executed<br />in composer mode in order to cover possible regressions for this mode.</p> TYPO3 Core - Feature #103043 (Resolved): Modernize tree rendering and implement RTL and dark modehttp://forge.typo3.org/issues/1030432024-02-05T06:09:42ZBenjamin Franzkeben@bnf.devTYPO3 Core - Bug #101684 (Under Review): <typo3-backend-icon> changed to inline element in TYPO3 v12http://forge.typo3.org/issues/1016842023-08-15T07:32:44ZBenjamin Franzkeben@bnf.dev
<p>Expect: <typo3-backend-icon> should render as in TYPO3 v11</p> TYPO3 Core - Task #98491 (Closed): Remove outdated t3editor requirejs configurationhttp://forge.typo3.org/issues/984912022-10-01T07:38:24ZBenjamin Franzkeben@bnf.devTYPO3 Core - Task #97066 (Closed): Add a replacement for FormEngine requireJsModules arrayhttp://forge.typo3.org/issues/970662022-03-01T09:04:22ZBenjamin Franzkeben@bnf.dev
<p><code>requireJsModules</code> contains JavaScriptModuleInstructions anyway, so ES6 is already supported, but naming suggest that we only talk about RequireJS modules here.</p>
<p>An additional array <code>javaScriptModules</code> should be added/supported, and merged with <code>requireJsModules</code> in order for ES6 related code to use a clean-API.</p> TYPO3 Core - Task #96610 (Closed): Support FLAG_USE_TOP_WINDOW for ES6 module instructionshttp://forge.typo3.org/issues/966102022-01-21T13:30:15ZBenjamin Franzkeben@bnf.devTYPO3 Core - Task #96607 (Closed): Add and use includeJavaScriptModules for <f:be.pageRenderer>http://forge.typo3.org/issues/966072022-01-21T10:30:20ZBenjamin Franzkeben@bnf.devTYPO3 Core - Task #96410 (Closed): Add missing grunt copy action for web-animate polyfillhttp://forge.typo3.org/issues/964102021-12-21T08:15:48ZBenjamin Franzkeben@bnf.dev
<p>web-animate.js has only been copied from github in <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Task: Replace web animations polyfill (Closed)" href="http://forge.typo3.org/issues/91072">#91072</a>, we should provide a grunt-copy action and load the dependency via yarn.</p> TYPO3 Core - Task #95359 (Closed): Adapt documentation to showcase conditional service dependenci...http://forge.typo3.org/issues/953592021-09-25T12:28:29ZBenjamin Franzkeben@bnf.dev
<p>The current recommendation to use ExtensionManagementUtility::isLoaded was never officially supported from the technical point of view:<br /><a class="external" href="https://docs.typo3.org/c/typo3/cms-dashboard/master/en-us/Configuration/WidgetRegistration.html#services-php-file">https://docs.typo3.org/c/typo3/cms-dashboard/master/en-us/Configuration/WidgetRegistration.html#services-php-file</a></p>
<p>Therefore proper stateless container-builder checks via `hasDefinition()` should be encouraged instead.<br />Also see <a class="external" href="https://review.typo3.org/c/Packages/TYPO3.CMS/+/71214">https://review.typo3.org/c/Packages/TYPO3.CMS/+/71214</a> for an explanation for alternatives.</p> TYPO3 Core - Task #95341 (Closed): `grunt scripts` generates double-compressed javascript fileshttp://forge.typo3.org/issues/953412021-09-24T06:20:50ZBenjamin Franzkeben@bnf.dev
<p>Execute<br /><pre>
(cd Build; node_modules/.bin/grunt build)
(cd Build; node_modules/.bin/grunt scripts)
git status
</pre></p>
<p>Output:<br /><pre>
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: typo3/sysext/adminpanel/Resources/Public/JavaScript/AdminPanel.js
modified: typo3/sysext/adminpanel/Resources/Public/JavaScript/Modules/Cache.js
modified: typo3/sysext/adminpanel/Resources/Public/JavaScript/Modules/Preview.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/ActionButton/AbstractAction.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/AjaxDataHandler.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/BackendException.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/ColorPicker.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/ContextMenu.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/ContextMenuActions.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Event/ConsumerScope.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Container/FlexFormSectionContainer.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Container/InlineControlContainer.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Container/SiteLanguageContainer.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/CategoryElement.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/Extra/SelectBoxFilter.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/InputLinkElement.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/MfaInfoElement.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/Modifier/Resizable.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/Modifier/Tabbable.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/SelectTreeElement.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/Element/SlugElement.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngine/FieldWizard/LocalizationStateSelector.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/FormEngineSuggest.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/GlobalEventHandler.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/GridEditor.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Icons.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/LayoutModule/Paste.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/LiveSearch.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Localization.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Login.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/LoginRefresh.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/ModuleMenu.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/MultiStepWizard.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/NewMultiplePages.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/OnlineMedia.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/PageActions.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/PageTree/PageTreeElement.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Popover.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Storage/AbstractClientStorage.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Storage/Persistent.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/SvgTree.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Tabs.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/ClearCacheMenu.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/ShortcutMenu.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Toolbar/SystemInformationMenu.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Tree/DragDrop.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Tree/FileStorageBrowser.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Tree/PageBrowser.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Viewport.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Viewport/AbstractContainer.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Viewport/NavigationContainer.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Viewport/Toolbar.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Wizard.js
modified: typo3/sysext/backend/Resources/Public/JavaScript/Wizard/NewContentElement.js
modified: typo3/sysext/backend/Tests/JavaScript/NotificationTest.js
modified: typo3/sysext/core/Resources/Public/JavaScript/Ajax/AjaxRequest.js
modified: typo3/sysext/core/Resources/Public/JavaScript/Ajax/AjaxResponse.js
modified: typo3/sysext/core/Resources/Public/JavaScript/Ajax/ResponseError.js
modified: typo3/sysext/core/Tests/JavaScript/Ajax/InputTransformerTest.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/ChartInitializer.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/DashboardDelete.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/DashboardModal.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/Grid.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/WidgetContentCollector.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/WidgetRemover.js
modified: typo3/sysext/dashboard/Resources/Public/JavaScript/WidgetSelector.js
modified: typo3/sysext/extensionmanager/Resources/Public/JavaScript/Repository.js
modified: typo3/sysext/extensionmanager/Resources/Public/JavaScript/Update.js
modified: typo3/sysext/extensionmanager/Resources/Public/JavaScript/UploadForm.js
modified: typo3/sysext/filelist/Resources/Public/JavaScript/ContextMenuActions.js
modified: typo3/sysext/filelist/Resources/Public/JavaScript/FileDelete.js
modified: typo3/sysext/impexp/Resources/Public/JavaScript/ContextMenuActions.js
modified: typo3/sysext/impexp/Resources/Public/JavaScript/ImportExport.js
modified: typo3/sysext/info/Resources/Public/JavaScript/TranslationStatus.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Install.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Installer.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Module/AbstractInlineModule.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Module/AbstractInteractableModule.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Module/PasswordStrength.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Module/Settings/SystemMaintainer.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Module/Upgrade/UpgradeDocs.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Renderable/FlashMessage.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Renderable/InfoBox.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Renderable/ProgressBar.js
modified: typo3/sysext/install/Resources/Public/JavaScript/Router.js
modified: typo3/sysext/linkvalidator/Resources/Public/JavaScript/Linkvalidator.js
modified: typo3/sysext/lowlevel/Resources/Public/JavaScript/QueryGenerator.js
modified: typo3/sysext/lowlevel/Resources/Public/JavaScript/ReferenceIndex.js
modified: typo3/sysext/opendocs/Resources/Public/JavaScript/Toolbar/OpendocsMenu.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/BrowseDatabase.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/FileLinkHandler.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/LinkBrowser.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/MailLinkHandler.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/PageLinkHandler.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/RecordLinkHandler.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/RecordSearch.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/TelephoneLinkHandler.js
modified: typo3/sysext/recordlist/Resources/Public/JavaScript/UrlLinkHandler.js
modified: typo3/sysext/tstemplate/Resources/Public/JavaScript/ConstantEditor.js
modified: typo3/sysext/workspaces/Resources/Public/JavaScript/Workspaces.js
</pre></p>
<p>Expected:</p>
<p>No changed files.</p>
<p>Issue is that `grunt scripts` uses `newer:terser:typescript` while `grunt build` does not and therefore `grunt scripts` retersed all files on the first run after `grunt build` has been executed.</p> TYPO3 Core - Task #93773 (Closed): Move SVG Tree to Lit Elementshttp://forge.typo3.org/issues/937732021-03-18T13:41:48ZBenjamin Franzkeben@bnf.dev
<p>The entire SVG Tree should be a HTML element, to allow further<br />reduction of d3 usage in favor of native HTML5 APIs.</p> TYPO3 Core - Task #93473 (Closed): Add a Custom component for Backend Icons inside Shadow DOMhttp://forge.typo3.org/issues/934732021-02-09T13:08:17ZBenjamin Franzkeben@bnf.dev
<p>For components that want to use LitElement with shadow DOM, icons need to be renderable (e.g. as SVGs) inside shadow dom.</p>
<p>A <code><typo3-backend-icon identifier="blub"></code> element would be ideal.</p> TYPO3 Core - Task #93425 (Closed): Adapt for upcoming Symfony 5.3 console.command DI properties: ...http://forge.typo3.org/issues/934252021-02-03T21:03:04ZBenjamin Franzkeben@bnf.dev
<p>See <a class="external" href="https://github.com/symfony/symfony/pull/39851">https://github.com/symfony/symfony/pull/39851</a></p>
<p>Example of new possible syntax as of symfony 5.3:</p>
<pre><code class="yaml syntaxhl" data-language="yaml"> <span class="na">TYPO3\CMS\Core\Command\ExtensionListCommand</span><span class="pi">:</span>
<span class="na">tags</span><span class="pi">:</span>
<span class="pi">-</span> <span class="na">name</span><span class="pi">:</span> <span class="s1">'</span><span class="s">console.command'</span>
<span class="na">command</span><span class="pi">:</span> <span class="s1">'</span><span class="s">extension:list'</span>
<span class="na">description</span><span class="pi">:</span> <span class="s1">'</span><span class="s">Shows</span><span class="nv"> </span><span class="s">the</span><span class="nv"> </span><span class="s">list</span><span class="nv"> </span><span class="s">of</span><span class="nv"> </span><span class="s">extensions</span><span class="nv"> </span><span class="s">available</span><span class="nv"> </span><span class="s">to</span><span class="nv"> </span><span class="s">the</span><span class="nv"> </span><span class="s">system'</span>
<span class="na">hidden</span><span class="pi">:</span> <span class="kc">false</span>
<span class="na">schedulable</span><span class="pi">:</span> <span class="kc">false</span>
</code></pre> TYPO3 Core - Bug #91220 (Accepted): ExtensionManager dependency calculation does not take extensi...http://forge.typo3.org/issues/912202020-04-28T11:40:12ZBenjamin Franzkeben@bnf.dev
<p>When one extension depends on two extensions where both extensions depend on a third one, but with a different set of matching versions, then ExtensionManager is unable to find the common dependency version that is allowed by both extensions, because it decided for a very too early.</p>
<p>Sound very complicated in written words, therefore an example:</p>
<p>Two custom extensions: "master" and "other_ext"</p>
<p>EXT:master (allowing powermail v6-v8 and depending on `other_ext`)</p>
<pre><code>'constraints' => array(<br /> 'depends' => array(<br /> 'typo3' => '9.5.0-9.5.99',<br /> 'powermail' => '6.0.0-8.99.99',<br /> 'other_ext' => '*',<br /> ),<br /> ),<br />EXT:other_ext (allowing only powermail v6)</code></pre>
<pre><code>'constraints' => array(<br /> 'depends' => array(<br /> 'typo3' => '9.5.0-9.5.99',<br /> 'powermail' => '6.0.0-6.99.99',<br /> ),<br /> ),</code></pre>
<p>When installing "master" on 9.5 the error "powermail was requested to be downloaded in different versions (6.2.0 and 7.4.0)." will be thrown.</p>
<p>That is because the latest version of powermail is used when checking dependencies for "EXT:master" – the compatible v6 should/could be taken into account as both extensions are marked to be compatible with it and v6 itself is marked to be v9.5 compatible.</p>
<p>Note: This is <strong>not</strong> a bug that was introduced with <a class="external" href="https://review.typo3.org/c/Packages/TYPO3.CMS/+/64308/">https://review.typo3.org/c/Packages/TYPO3.CMS/+/64308/</a> (that patch is fine) – it's just an additional and more complex case.</p>
<p><a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Special dependencies are not checked during install of dependencies (Closed)" href="http://forge.typo3.org/issues/91179">#91179</a> is therefore related, but not the source of this bug.</p> TYPO3 Core - Bug #86492 (Closed): stdWrap on config.additionalHeaders is broken for (fully) cache...http://forge.typo3.org/issues/864922018-10-01T09:56:28ZBenjamin Franzkeben@bnf.dev
<p>The feature to use stdWrap for additionalHeaders was introduced in v9 development cycle: <a class="external" href="https://review.typo3.org/c/50142/">https://review.typo3.org/c/50142/</a><br />It seems this is broken since the initial commit (and is still in master).</p>
<p>Suppose using the following TypoScript (as suggested in the documentation):</p>
<pre>
config.additionalHeaders {
10 {
# The header string
header = X-TYPO3-foo:
header.dataWrap = |{page:uid}
}
}
</pre>
<p>Both the original commit 2124bba49f68f5c35705c5c499abe6a0ee95a6cf and current master result in an Exception for a page that is read from cache because <code>TypoScriptFrontendController->cObj</code> is not initialized:</p>
<pre>
? $this->cObj->stdWrap(trim($header), $options['header.'])
Oops, an error occurred!
Call to a member function stdWrap() on string.
</pre>
<p>cObj is initialized in TSFE::newCObj, which is called by <code>TSFE::preparePageContentGeneration</code>, which itself is only called if the page is uncached or rendered initially (for good reasons).</p>
<p>I'm not sure whether we should revert this feature, instead of fixing this and implcitly allowing uncached stuff to be executed (through stdWrap) for a fully cached page. Things like these may be better handled by middlewares.</p>