TYPO3 Forge: Issueshttp://forge.typo3.org/http://forge.typo3.org/themes/typo3_forge/favicon/favicon.png?17058661692023-10-04T10:03:41ZTYPO3 Forge
Redmine TYPO3 Core - Bug #102083 (Resolved): Validation triggered for fields in fieldsets disabled by var...http://forge.typo3.org/issues/1020832023-10-04T10:03:41ZMathias Brodalambrodala@pagemachine.de
<p>Given fields are placed in a fieldset and that fieldset is disabled using variants. Also given that these fields have validators.</p>
<p>Now if one tries to submit the form, it is displayed again without explanation. Inspection of the validation results shows that the validators of the fields have been triggered and couldn't validate the input of the fields. These fields could not be filled by the user since they are disabled together with their fieldset.</p>
<p>Validators of fields within disabled fieldsets should be ignored.</p> TYPO3 Core - Bug #97522 (Closed): Word "new" in command "description" breaks DIhttp://forge.typo3.org/issues/975222022-04-29T16:44:01ZMathias Brodalambrodala@pagemachine.de
<p>Given a command definition like this ...</p>
<pre><code class="yaml syntaxhl" data-language="yaml"><span class="na">services</span><span class="pi">:</span>
<span class="na">_defaults</span><span class="pi">:</span>
<span class="na">autowire</span><span class="pi">:</span> <span class="kc">true</span>
<span class="na">autoconfigure</span><span class="pi">:</span> <span class="kc">true</span>
<span class="na">public</span><span class="pi">:</span> <span class="kc">false</span>
<span class="na">Acme\Foo\</span><span class="pi">:</span>
<span class="na">resource</span><span class="pi">:</span> <span class="s1">'</span><span class="s">../Classes/*'</span>
<span class="na">Acme\Foo\Command\BarCommand</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="s">console.command</span>
<span class="na">command</span><span class="pi">:</span> <span class="s">example:bar</span>
<span class="na">description</span><span class="pi">:</span> <span class="s">Build a new bar</span>
<span class="na">schedulable</span><span class="pi">:</span> <span class="kc">false</span>
<span class="na">Acme\Foo\Command\QuxCommand</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="s">console.command</span>
<span class="na">command</span><span class="pi">:</span> <span class="s">example:qux</span>
<span class="na">description</span><span class="pi">:</span> <span class="s">Do something</span>
<span class="na">schedulable</span><span class="pi">:</span> <span class="kc">false</span>
</code></pre>
<p>... you get an error like this:</p>
<pre>
[ ParseError ]
syntax error, unexpected '::' (T_PAAMAYIM_NEKUDOTAYIM), expecting '('
Exception trace:
#0 ()
var/cache/code/di/DependencyInjectionContainer_<hash>.php:<line>
...
</pre>
<p>The generated service in the DI cache file:</p>
<pre><code class="php syntaxhl" data-language="php"> <span class="cd">/**
* Gets the public 'Acme\Foo\Command\BarCommand' shared autowired service.
*
* @return \Acme\Foo\Command\BarCommand
*/</span>
<span class="k">protected</span> <span class="k">function</span> <span class="n">getBarCommandService</span><span class="p">()</span>
<span class="p">{</span>
<span class="nv">$this</span><span class="o">-></span><span class="n">services</span><span class="p">[</span><span class="s1">'Acme\\Foo\\Command\\BarCommand'</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$instance</span> <span class="o">=</span> <span class="nc">\TYPO3\CMS\Core\Utility\GeneralUtility</span><span class="o">::</span><span class="nf">makeInstanceForDi</span><span class="p">(</span><span class="nc">\Acme\Foo\Command\BarCommand</span><span class="o">::</span><span class="n">class</span><span class="p">,</span> <span class="nc">\TYPO3\CMS\Core\Utility\GeneralUtility</span><span class="o">::</span><span class="nf">makeInstanceForDi</span><span class="p">(</span><span class="nc">\Acme\Foo\Security\BarDependency</span><span class="o">::</span><span class="n">class</span><span class="p">));</span>
<span class="nv">$instance</span><span class="o">-></span><span class="nf">setName</span><span class="p">(</span><span class="s1">'example:bar'</span><span class="p">);</span>
<span class="nv">$instance</span><span class="o">-></span><span class="nf">setDescription</span><span class="p">(</span><span class="s1">'Build a \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstanceForDi(bar'</span><span class="p">);</span>
<span class="k">return</span> <span class="nv">$instance</span><span class="p">;</span>
<span class="p">}</span>
<span class="cd">/**
* Gets the public 'Acme\Foo\Command\QuxCommand' shared autowired service.
*
* @return \Acme\Foo\Command\QuxCommand
*/</span>
<span class="k">protected</span> <span class="k">function</span> <span class="n">getQuxCommandService</span><span class="p">::</span><span class="kt">class</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1"># ...</span>
<span class="p">}</span>
</code></pre>
<p>This is very likely caused by the rather simple replacement here:</p>
<p><a class="external" href="https://github.com/TYPO3/typo3/blob/6f7514f51634fd98a4d4def818c3f16e28aff538/typo3/sysext/core/Classes/DependencyInjection/ContainerBuilder.php#L166">https://github.com/TYPO3/typo3/blob/6f7514f51634fd98a4d4def818c3f16e28aff538/typo3/sysext/core/Classes/DependencyInjection/ContainerBuilder.php#L166</a></p>
<pre><code class="php syntaxhl" data-language="php"><span class="nv">$code</span> <span class="o">=</span> <span class="nb">preg_replace</span><span class="p">(</span><span class="s1">'/new ([^\(\s]+)\(/'</span><span class="p">,</span> <span class="s1">'\\TYPO3\\CMS\\Core\\Utility\\GeneralUtility::makeInstanceForDi(\\1::class, '</span><span class="p">,</span> <span class="nv">$code</span><span class="p">);</span>
</code></pre> TYPO3 Core - Task #85344 (Closed): Use trait for public method access deprecationhttp://forge.typo3.org/issues/853442018-06-22T17:43:56ZMathias Brodalambrodala@pagemachine.de
<p>There are a few locations which use <code>debug_backtrace()</code> to determine whether a method was called internally or by 3rd party.</p>
<p>This should be replaced by the <code>PublicMethodDeprecationTrait</code>.</p> TYPO3 Core - Bug #85083 (Closed): Validation error with DateTimeImmutablehttp://forge.typo3.org/issues/850832018-05-25T14:57:03ZMathias Brodalambrodala@pagemachine.de
<p>Having an object property typed as <code>\DateTimeImmutable</code> yields a validation error when using that object as Extbase controller argument:</p>
<blockquote>
<p>The given subject was not a valid DateTime. Got: 'object'</p>
</blockquote>
<p>This is caused by the <code>DateTimeValidator</code> which only checks for <code>DateTime</code> but not <code>DateTimeImmutable</code>. This should be changed to <code>DateTimeInterface</code> to cover both.</p> TYPO3 Core - Task #85031 (Closed): Use ServerRequestInterface in ImportExportControllerhttp://forge.typo3.org/issues/850312018-05-17T11:12:52ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Task #84369 (Closed): Use ServerRequestInterface in UserSettingsControllerhttp://forge.typo3.org/issues/843692018-03-16T19:22:24ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Task #84341 (Closed): Use ServerRequestInterface in NewRecordControllerhttp://forge.typo3.org/issues/843412018-03-16T12:59:36ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Task #84334 (Closed): Use ServerRequestInterface in File/ReplaceFileControllerhttp://forge.typo3.org/issues/843342018-03-16T11:51:11ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Task #84332 (Closed): Use ServerRequestInterface in File/RenameFileControllerhttp://forge.typo3.org/issues/843322018-03-16T11:35:38ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Task #84326 (Closed): Use ServerRequestInterface in File/FileUploadControllerhttp://forge.typo3.org/issues/843262018-03-16T09:35:57ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Task #84307 (Closed): Use ServerRequestInterface in ContentElement/NewContentElement...http://forge.typo3.org/issues/843072018-03-15T17:23:51ZMathias Brodalambrodala@pagemachine.deTYPO3 Core - Feature #81327 (Closed): View record from listhttp://forge.typo3.org/issues/813272017-05-24T09:57:50ZMathias Brodalambrodala@pagemachine.de
<p>Similar to the "Save and view page" feature which can be enabled for custom records via <a href="https://docs.typo3.org/typo3cms/TSconfigReference/PageTsconfig/TCEmain/Index.html#preview" class="external">the preview feature</a>, viewing records from the list module should be possible too. It could use the very same configuration for preparing the preview URL. Currently this behavior is supported for pages only.</p> TYPO3 Core - Bug #79859 (Closed): Wrong table "sys_language_overay" in Datahandler::localize()http://forge.typo3.org/issues/798592017-02-16T16:44:49ZMathias Brodalambrodala@pagemachine.de
<p>With <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Task: Remove support for transForeignTable in TCA (Closed)" href="http://forge.typo3.org/issues/78191">#78191</a> a regression was introduced by a typo for the <code>sys_language_overlay</code> table. This basically disables the localization guard for that table and can cause hard to track issues.</p> TYPO3 Core - Task #67271 (Closed): Use Travis caching featurehttp://forge.typo3.org/issues/672712015-06-03T11:00:49ZMathias Brodalambrodala@pagemachine.de
<p>Travis allows for <a href="http://docs.travis-ci.com/user/caching/" class="external">caching directories</a> between builds which vastly speeds up builds e.g. by not having to download Composer packages anymore.</p>
<p>This makes it necessary to switch to the <a href="http://docs.travis-ci.com/user/workers/container-based-infrastructure/" class="external">container based infrastructure</a> which in turn doesn't allow <code>sudo</code> e.g. to install additional APT packages, but the <a href="http://docs.travis-ci.com/user/apt/" class="external">APT</a> addon allows for a different solution based on a <a href="https://github.com/travis-ci/apt-package-whitelist" class="external">whitelist of packages</a> which our <code>parallel</code> is part of.</p> TYPO3 Core - Task #56177 (Closed): Windows issues with long CSV file name from commit 2db3d30http://forge.typo3.org/issues/561772014-02-21T11:49:53ZMathias Brodalambrodala@pagemachine.de
<p>The commit 2db3d30 added the following file:</p>
<blockquote>
<p>typo3/sysext/workspaces/Tests/Functional/DataHandling/InlineRelationalRecordEditing/CommaSeparatedValue/DataSet/Assertion/createAndLocalizeParentContentRecordWithHotelAndOfferChildRecordsAndDiscardLocalizedParentRecord.csv</p>
</blockquote>
<p>It seems like this file path is too long for either Windows or Git on Windows. If you pull/merge this commit, the file cannot be created, if you do a clean clone, this file is deleted immediately and cannot be restored.</p>
<p>Suggestion: use a shorter file name.</p>