TYPO3 Forge: Issueshttp://forge.typo3.org/http://forge.typo3.org/themes/typo3_forge/favicon/favicon.png?17058661692021-08-25T13:11:10ZTYPO3 Forge
Redmine TYPO3 Core - Feature #94993 (Closed): Allow to use GeneralUtility::xml2array without cachehttp://forge.typo3.org/issues/949932021-08-25T13:11:10ZDaniel Siepmanncoding@daniel-siepmann.de
We need this for two reasons in our customer projects:
<ul>
<li>Many unique calls that consume unnecessary memory due to internal caching</li>
<li>Usage within PHPUnit data providers. It would generate a singleton instance which is unexpected and unrelated to the test, but breaks tests as it is called before resetting singletons. This should also work without tests in UnitTests.</li>
</ul> TYPO3 Core - Bug #94812 (Closed): Autoloading for EXT:filelist is missinghttp://forge.typo3.org/issues/948122021-08-11T12:43:34ZDaniel Siepmanncoding@daniel-siepmann.de
<p>The bug was introduced with <a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Task: Avoid root-only fields in extensions composer.json (Closed)" href="http://forge.typo3.org/issues/94747">#94747</a> where autoloading was accidentally removed.</p> TYPO3 Core - Bug #92761 (Closed): TypeError in Wizard TableController if db contains nullhttp://forge.typo3.org/issues/927612020-11-03T15:33:09ZDaniel Siepmanncoding@daniel-siepmann.de
<p>A TypeError might occur when using the TableController as wizard for an input field in TCA.<br />Given the following configuration for TCA field:<br /><pre>
'example_field' => [
'exclude' => true,
'label' => 'example field for table wizard',
'config' => [
'default' => '',
'type' => 'text',
'renderType' => 'textTable',
'cols' => 80,
'rows' => 15,
'wrap' => 'off',
],
],
</pre></p>
<p>And the following ext_tables.sql:<br /><pre>
example_field mediumtext,
</pre></p>
<p>That will result in:<br /><pre>
(1/1) TypeError
Argument 1 passed to TYPO3\CMS\Backend\Controller\Wizard\TableController::configurationStringToArray() must be of the type string, null given, called in /typo3/sysext/backend/Classes/Controller/Wizard/TableController.php on line 316
</pre></p>
<p>As the called method requires a string, but null is passed from db query result.</p>
<p>The code is the same for 9, 10 and master, the issue should exist in all three versions. We've encountered the issue in v10 LTS.</p> TYPO3 Core - Bug #92732 (Closed): API example setFormat in changelog is wronghttp://forge.typo3.org/issues/927322020-10-29T11:39:43ZDaniel Siepmanncoding@daniel-siepmann.de
<p><a class="external" href="https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/10.3/Feature-90266-Fluid-basedTemplatedEmails.html">https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/10.3/Feature-90266-Fluid-basedTemplatedEmails.html</a> states `setFormat` should be used, while `format` is implemented.</p>
<p>See implementation:<br /><a class="external" href="https://github.com/TYPO3/TYPO3.CMS/blob/10.4/typo3/sysext/core/Classes/Mail/FluidEmail.php#L70">https://github.com/TYPO3/TYPO3.CMS/blob/10.4/typo3/sysext/core/Classes/Mail/FluidEmail.php#L70</a><br /><a class="external" href="https://github.com/TYPO3/TYPO3.CMS/blob/master/typo3/sysext/core/Classes/Mail/FluidEmail.php#L70">https://github.com/TYPO3/TYPO3.CMS/blob/master/typo3/sysext/core/Classes/Mail/FluidEmail.php#L70</a></p> TYPO3 Core - Bug #92428 (Closed): redirects:checkintegrity command fails when saving again withou...http://forge.typo3.org/issues/924282020-09-28T08:31:59ZDaniel Siepmanncoding@daniel-siepmann.de
<p>When creating a scheduler task for "redirects:checkintegrity" and saving it again without providing a site identifier, an empty string will be saved.</p>
<p>The code expects either null for no site, or an string with identifier of a single site.</p>
<p>This leads to the following failure during execution:</p>
<pre>
[WARNING] No site found for identifier
</pre> TYPO3 Core - Bug #92215 (Rejected): Respect system collection order by defaulthttp://forge.typo3.org/issues/922152020-09-07T14:57:12ZDaniel Siepmanncoding@daniel-siepmann.de
<p>When creating a system collection via API, it is created from database but ignores defined sorting.</p>
<p>Steps to reproduce:</p>
<p>Create a new system collection and add at least two records. Fetch the system collection via API: <br /><pre>
\TYPO3\CMS\Core\Collection\StaticRecordCollection::create([], true);
</pre></p>
<p>The records might be in expected order.<br />Now adjust order of items in system collection record.<br />Refresh and the old order should be returned.</p> TYPO3 Core - Bug #91950 (Closed): Reverting redirect via ajax fails when using sqlitehttp://forge.typo3.org/issues/919502020-08-07T14:22:46ZDaniel Siepmanncoding@daniel-siepmann.de
<p>When using sqlite, data fetched from DB is not casted. Therefore the record uid is an string instead of integer.<br />This conflicts with strict type annotation.</p>
<p>Steps to reproduce:<br />Open a page record, change slug and save.<br />TYPO3 should now show an notification with two actions.<br />Select "Revert redirects only".<br />This should result in an 500 due to the mentioned issue.</p> TYPO3 Core - Bug #91894 (Closed): Cast transOrigPointerField value to integer to ensure return ty...http://forge.typo3.org/issues/918942020-07-30T08:26:37ZDaniel Siepmanncoding@daniel-siepmann.de
<p>When using sqlite, data fetched from DB is not of expected data types.<br />Therefore some return type hints will break.</p>
<p>In order to not break resolvePreviewRecordId(), there has to be a cast.</p>
<p>This prevents users from editing translated records.</p> TYPO3 Core - Bug #91370 (Closed): CSH (Context Sensitive Help) does not open the contexthttp://forge.typo3.org/issues/913702020-05-12T17:40:37ZDaniel Siepmanncoding@daniel-siepmann.de
<p>When clicking on CSH links, the help opens in a popup. But the content displayed is always the manual TOC, not the entry within CSH.<br />Same for "see also" links referencing between detail information within CSH.</p> TYPO3 Core - Bug #90969 (Closed): Administration log broken due to unsupported type annotationhttp://forge.typo3.org/issues/909692020-04-07T12:27:54ZDaniel Siepmanncoding@daniel-siepmann.de
<p><a class="external" href="https://github.com/TYPO3/TYPO3.CMS/commit/555e116f405295edf63394b647d680a9d46de0f7">https://github.com/TYPO3/TYPO3.CMS/commit/555e116f405295edf63394b647d680a9d46de0f7</a> adjusted the type annotation for two properties in the model.<br />These are not supported by extbase and result in the following error:</p>
<blockquote>
<p>(1/1) #1579965021 TYPO3\CMS\Extbase\Persistence\Generic\Mapper\Exception\UnknownPropertyTypeException<br />The type of property TYPO3\CMS\Belog\Domain\Model\LogEntry::tableName could not be identified, therefore the desired value (0) cannot be mapped onto it. The type of a class property is usually defined via php doc blocks. Make sure the property has a valid @var tag set which defines the type.</p>
</blockquote> TYPO3 Core - Bug #90241 (Closed): ArrayUtility "array_key_exists() expects parameter 2 to be array"http://forge.typo3.org/issues/902412020-01-29T12:58:15ZDaniel Siepmanncoding@daniel-siepmann.de
<p>Inside <em>\TYPO3\CMS\Core\Utility\ArrayUtility::getValueByPath()</em> no type check is executed when working with array.<br />This can lead to the PHP warning "array_key_exists() expects parameter 2 to be array".<br />Example call causing the warning:</p>
<pre><code class="php syntaxhl" data-language="php"><span class="nc">\TYPO3\CMS\Core\Utility\ArrayUtility</span><span class="o">::</span><span class="nf">getValueByPath</span><span class="p">(</span>
<span class="p">[</span>
<span class="s1">'foo'</span> <span class="o">=></span> <span class="p">[</span>
<span class="s1">'baz'</span> <span class="o">=></span> <span class="mi">42</span>
<span class="p">],</span>
<span class="p">],</span>
<span class="s1">'foo/baz/baz'</span>
<span class="p">);</span>
</code></pre>
<p>as during 2nd baz, the "array" is an integer.</p>
<p>The expected behaviour would be <em>throw new MissingArrayPathException('Segment ' . $segment . ' of path ' . implode($delimiter, $path) . ' does not exist in array', 1341397869);</em>, just like when the segment does not exist. As it does not exist.</p> TYPO3 Core - Bug #89980 (Closed): Numeric keys in $_SERVER array lead to type errorhttp://forge.typo3.org/issues/899802019-12-17T22:16:32ZDaniel Siepmanncoding@daniel-siepmann.de
<p>Calling whatever URL results in the following error:</p>
<pre>
TypeError
strpos() expects parameter 1 to be string, int given
</pre>
<p>In order to create the error the Variable <em>$_SERVER['1']</em> can be set.</p>
<p>The error is created in in /home/daniels/Projects/own/website-typo3/project/private/typo3/sysext/core/Classes/Http/ServerRequestFactory.php line 101:</p>
<pre>
protected static function prepareHeaders(array $server)
{
$headers = [];
foreach ($server as $key => $value) {
if (strpos($key, 'HTTP_COOKIE') === 0) {
// Cookies are handled using the $_COOKIE superglobal
continue;
}
</pre> TYPO3 Core - Bug #89432 (Closed): Fix Extbase redirect param type annotationhttp://forge.typo3.org/issues/894322019-10-16T15:33:20ZDaniel Siepmanncoding@daniel-siepmann.de
<p>Right now the method accepts strings and nulls for some arguments, but only string is defined within PHPDoc.</p>
<p>This prevents static code analysis for further code using this method, e.g. inside extensions.</p> TYPO3 Core - Bug #89419 (Closed): EXT:backend depends on EXT:install for environment routes, but ...http://forge.typo3.org/issues/894192019-10-15T13:17:01ZDaniel Siepmanncoding@daniel-siepmann.de
<p>EXT:install is defining route tools_toolsenvironment while this is used by EXT:backend. Still I can not see a requires to ext install from ext backend.</p>
<pre>
ag "tools_toolsenv"
typo3/sysext/backend/Resources/Private/Templates/ToolbarItems/SystemInformationDropDown.html
8:<p class="dropdown-text typo3-module-menu-item submodule mod-tools_toolsenvironment" data-modulename="tools_toolsenvironment">
typo3/sysext/backend/Classes/Backend/ToolbarItems/SystemInformationToolbarItem.php
173: 'environmentToolUrl' => (string)$uriBuilder->buildUriFromRoute('tools_toolsenvironment'),
typo3/sysext/install/ext_tables.php
51: 'name' => 'tools_toolsenvironment',
</pre>
<p>Possible solution:</p>
<blockquote>
<p>a.fernandez 1:12 PM<br />I think this requires two steps:<br />1) generate and render the link only if the route exists (try/catch on RouteNotFoundException or alike)<br />2) add EXT:install as suggestion</p>
</blockquote> TYPO3 Core - Task #89409 (Closed): Fix Extbase getArgument return type annotationhttp://forge.typo3.org/issues/894092019-10-14T13:32:50ZDaniel Siepmanncoding@daniel-siepmann.de
<p>Right now the method can return whatever an argument is, but only string is defined within PHPDoc. E.g. arguments can be an array instead.</p>
<p>This prevents static code analysis for further code using this method, e.g. inside extensions.</p>