- Jan 06, 2024
-
-
Benni Mack authored
This change does not render a page translation anymore if it was deleted (t3ver_state=2). It also enables the dropdown to create a new page translation but then DataHandler does not allow this anymore. This patch needs more work in DataHandler for "delete translation in WS + create a new translation in WS" Resolves: #98544 Releases: main, 12.4 Change-Id: Ie3a786f28faaf13c4165667ff8fc8a6d98f6e6db Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82376 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Stefan Bürk authored
Symfony 7 removed deprecated code paths [1][2] and therefore started using strict `in_array()` check for the `in` and `notIn` condition in the expression language. With #102746 the usage of symfony 7 has been allowed, which itself introduces breaking changes. It is optional to upgrade to symfony 7 and therefore breaking changes has been respected and excludes from the TYPO3 policies regarding breaking changes as it is not enforced. This change modifies two tests to assert results based on the used symfony version. [1] https://github.com/symfony/symfony/pull/50867 [2] https://github.com/symfony/symfony/commit/7050bc82dd25c540958 Resolves: #102766 Related: #102746 Releases: 12.4 Change-Id: I0624f33ff270ba793054d0ff84810beee1a98c06 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82358 Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech>
-
Stefan Bürk authored
This change upgrades the `typo3/cms-styleguide` version to pull in required changes for `symfony 7 compat`. The culprit was a missing method return type for the funny `kauderwelsch` command execute method. [1] Used command(s): > composer require --dev "typo3/cms-styleguide":"^12.0.3" Note: `ext:styleguide` has been integrated into the core monorepo starting with v13, but older core version still uses the dedicated package and needs to be updated manually. [1] https://github.com/TYPO3-CMS/styleguide/commit/5d2515e051af91a9a2fc Resolves: #102767 Releated: #102746 Releases: 12.4 Change-Id: Ib903f3927e5591e396966466dadb5bef45f5a604 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82359 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
-
Anja Leichsenring authored
New phpstan find some questionable null fallback occurences, that are not obvious. Add a baseline for now. > composer req --dev phpstan/phpstan:^1.10.51 > ./Build/Scripts/runTests.sh -s phpstanGenerateBaseline Resolves: #102756 Releases: main, 12.4 Change-Id: I3eef057d4fd04fe92f813bad7e1873718f6da765 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82357 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Stefan Bürk <stefan@buerk.tech>
-
- Jan 05, 2024
-
-
Oliver Bartsch authored
Using `treatIdAsReference` it's also possible to pass a file reference uid to the ThumbnailViewHelper. To allow processing such reference, the original file is now fetched to call `process` on it. Resolves: #102571 Releases: main, 12.4 Change-Id: If2f9cad99045d19c6dcc4b95bba6b7de71405956 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82375 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de>
-
Christian Rath-Ulrich authored
In the file list module, a file thumbnail does not contain alternative text. To exclude these thumbnails from screen readers and thus improve accessibility, an empty `alt` tag is set. This applies to both the list and tile view. Resolves: #102416 Releases: main, 12.4 Change-Id: Iaf0ce6736f669c0852f96c022fa55c128aecdb9e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82374 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de>
-
Oliver Bartsch authored
It's unlikely but possible that the `languageField` of a record does not use `sys_language_uid` as name. This is now properly respected in DataHandler. Resolves: #102757 Releases: main, 12.4 Change-Id: Icdb2b599e6ada75c3562c59a41f2b2449ec61d63 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82373 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Oliver Bartsch authored
An additional check is applied to prevent an InvalidArgumentException for cases where `checkPid_value` contains an empty string. Resolves: #102751 Releases: main, 12.4 Change-Id: I906837e75ab505af1e46f55eeccd068c24005e98 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82372 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Oliver Bartsch <bo@cedev.de>
-
- Jan 04, 2024
-
-
Benni Mack authored
PHP-CS-Fixer rule `array_indentation` is activated to have consistent indentation of arrays. In addition, a full run of php-cs-fixer without caches shows also affected areas where comments did not apply properly. Resolves: #102753 Releases: main, 12.4, 11.5 Change-Id: I759149606c4b042f1ac4329d4f5b7166d591456b Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82334 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Benni Mack <benni@typo3.org>
-
Benni Mack authored
This change enables Symfony 7 in addition to symfony 6 in TYPO3. Symfony7 requires PHP 8.2, thus is not installed by default for the time being, as this change is also allowed for TYPO3 v12 support when running with PHP 8.2 and composer. Used commands: composer req -W \ "symfony/config:^6.4 || ^7.0" \ "symfony/console:^6.4 || ^7.0" \ "symfony/dependency-injection:^6.4 || ^7.0" \ "symfony/doctrine-messenger:^6.4 || ^7.0" \ "symfony/expression-language:^6.4 || ^7.0" \ "symfony/filesystem:^6.4 || ^7.0" \ "symfony/finder:^6.4 || ^7.0" \ "symfony/http-foundation:^6.4 || ^7.0" \ "symfony/mailer:^6.4 || ^7.0" \ "symfony/messenger:^6.4 || ^7.0" \ "symfony/mime:^6.4 || ^7.0" \ "symfony/options-resolver:^6.4 || ^7.0" \ "symfony/property-access:^6.4 || ^7.0" \ "symfony/property-info:^6.4 || ^7.0" \ "symfony/rate-limiter:^6.4 || ^7.0" \ "symfony/routing:^6.4 || ^7.0" \ "symfony/uid:^6.4 || ^7.0" \ "symfony/var-dumper:^6.4 || ^7.0" \ "symfony/yaml:^6.4 || ^7.0" composer req --dev -W \ "codeception/codeception:^5.0.13" \ "codeception/module-filesystem:^3.0.1" \ "friendsofphp/php-cs-fixer:^3.46" \ "symfony/translation:^6.4 || ^7.0" Resolves: #102746 Releases: main, 12.4 Change-Id: I6bbbfb0bc6e26c00fba0010234b5c8b698cf0a81 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82314 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org>
-
Anja Leichsenring authored
TYPO3 uses a composer package [1] to import locales along with translations and a custom script has been added to create and update included translation files. This change updates the language files with the last updates and requires the package with the current highest version as minimum. Used command(s): > composer req --dev \ "sokil/php-isocodes-db-i18n":"^4.0.18" > Build/Scripts/runTests.sh \ -s checkIsoDatabase \ -p 8.1 [1] sokil/php-isocodes-db-i18n Resolves: #102747 Releases: main, 12.4 Change-Id: I4d6603484c4fca213c66f0df0feff13bc1011b29 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82307 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Jan 03, 2024
-
-
Jasmina Ließmann authored
This patch ensures that the username and - if available - the real name of the author are displayed again in the element information modal. The corresponding field label is now also displayed. Resolves: #102737 Related: #102469 Releases: main, 12.4 Change-Id: I960e274b98aec7289c84a6eaee54b7d3ccdc3cc9 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82293 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82298 Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Torben Hansen authored
Update copyright year to 2024 Resolves: #102741 Releases: main, 12.4, 11.5 Change-Id: I1a909b221513b5add387d9680193d8deb4285a04 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82312 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Andreas Kienast authored
This commit updates `@codemirror` and its friend packages to their most recent version. Due to changes within `@lezer/javascript` and `@lezer/highlight`, our Gruntfile needs minor adjustments. Executed commands: npm install --save \ @lezer/lr@^1.3.14 \ @codemirror/autocomplete@^6.11.0 \ @codemirror/commands@^6.3.3 \ @codemirror/lang-css@^6.2.1 \ @codemirror/lang-html@^6.4.7 \ @codemirror/lang-javascript@^6.2.1 \ @codemirror/lang-sql@^6.5.5 \ @codemirror/language@^6.10.0 \ @codemirror/lint@^6.4.2 \ @codemirror/search@^6.5.5 \ @codemirror/state@^6.4.0 \ @codemirror/view@^6.23.0 npm update @lezer/javascript npm run build Resolves: #102732 Releases: main, 12.4 Change-Id: I92f81a8dfb8f64e09005f0a332b557ffdc532654 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82302 Reviewed-by:
Benjamin Franzke <ben@bnf.dev> Tested-by:
Benjamin Franzke <ben@bnf.dev> Tested-by:
core-ci <typo3@b13.com>
-
Oliver Bartsch authored
The ImageViewhelper does by default add the `alternative` property as `alt` attribute to the img tag if no non-empty string is set. However, there might be valid use cases where an empty `alt` attribute should be set for such image - even if the property exists. Such case is e.g. a thumbnail of such image. The ImageViewhelper does therefore now render an empty `alt` attribute if the `alt` argument is explicitly set to an empty string. Resolves: #102739 Releases: main, 12.4 Change-Id: Id197c3d2f839fbbc37744a2ae356c8e3ae35f0c4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82251 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
-
- Jan 01, 2024
-
-
Oliver Bartsch authored
In case a link does not set any additional attributes, no empty callout is rendered. Resolves: #102721 Releases: main, 12.4 Change-Id: I7ec4d7b64450112731363d721f4d49322448b41c Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82294 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- Dec 30, 2023
-
-
Stefan Bürk authored
New `core-testing-phpXY` images has been build and released. [1] This change update used image version to: * core-testing-php81:2.9 - php 8.1.27 (patchlevel) * core-testing-php82:1.8 - php 8.2.14 (patchlevel) * core-testing-php83:1.9 - php 8.3.1 (patchlevel) [1] https://git.typo3.org/typo3/CI/testing-infrastructure/-/commit/11f78ce2ac1f38355fdb7d59e1472e62a02ba894 Resolves: #102729 Releases: main, 12.4, 11.5 Change-Id: I991061445e28a358c1aeadebf3213d87394d04ad Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82249 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Dec 28, 2023
-
-
Stefan Bürk authored
PHPUnit has changed the behavior of the error handler in several ways, for example introducing a PHP attribute to disable the PHPUnit error handler for tests dealing with `error_get_last()` [1], throwing an exception and stopping the script execution on `E_*_ERROR` or clearing the error result [2] - which breaks the ability to use the native `error_get_last()` method to test custom error handler implementation. Something which TYPO3 needs to do for the provided custom error handler. An additional change [3] to check and restore error handlers with levels has been reverted due to issues in the Laravel world. This change modifies the related test to use the introduced PHP attribute `#[WithoutErrorHandler]` and raises PHPUnit. Note: PHPUnit does not recognize the `@test` doc-block annotation if the `#[WithoutErrorHandler]` attribute is used. Therefore, the attribute counterparts for `@test` and `@dataProvider` has been added on top and not exclusively for now, albeit looking weird and fishy. This needs to be addressed in a more generic way in a dedicated change. Used command(s): > composer require --dev \ "phpunit/phpunit":"^10.5.5" \ "typo3/testing-framework":"^8.0.8" [1] https://github.com/sebastianbergmann/phpunit/pull/5430 [2] https://github.com/sebastianbergmann/phpunit/pull/5592 [3] https://github.com/sebastianbergmann/phpunit/pull/5619 Resolves: #102724 Releases: main, 12.4 Change-Id: I77f750ef2eba53b5f8caa51651f36321ae5d1224 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82283 Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com>
-
- Dec 26, 2023
-
-
Oliver Bartsch authored
Since #102616, itemsProcFunc config is resolved in `BU::getLabelFromItemlist()`. This method therefore was adjusted to take the record in question as argument, passing it to the underlying `ItemProcessingService`, which actually just requires the uid and pid. Since the database row is not passed to BU::getProcessedValue()`, the record was fetched for each item manually via `getRecordWSOL()`. This is not sufficient and has a serious performance impact. The functionality of resolving itemsProcFunc is now still in place but `BU::getProcessedValue()` does no longer fetch and pass the record, but only the uid and pid. This will therefore still enable most use cases, but does no longer slow down the backend. Resolves: #102698 Related: #102616 Related: #100855 Releases: main, 12.4 Change-Id: Ic52564fada13b47f5364df642acbf683538b0c21 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82248 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de>
-
- Dec 22, 2023
-
-
florian.thiele authored
Resolves: #102056 Releases: main, 12.4 Change-Id: Ie19e70148b893aff2e82f6ef2ed1e5b31f39407a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82244 Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Chris Müller <typo3@krue.ml> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Lina Wolf <112@linawolf.de> Tested-by:
Chris Müller <typo3@krue.ml> Tested-by:
Lina Wolf <112@linawolf.de>
-
Oliver Hader authored
PHP's base64_decode has a strict parameter to only accept characters of the corresponding base64 alphabet, see https://www.php.net/manual/en/function.base64-decode.php Resolves: #102620 Releases: main, 12.4 Change-Id: I39a038519ec1e884ba42f691c6dea76cbce772fe Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82271 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org>
-
Oliver Bartsch authored
Properly check for valid meta data record to prevent 'Undefined array key' error on deleting a file. Meta data record might not exists, because the file might have not been indexed or simply because the record was manually deleted. Additionally, some code clean up is done. Resolves: #102700 Releases: main, 12.4 Change-Id: Ibf8a0d53b40f08b60064583d5f28762c25d75937 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82247 Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com>
-
- Dec 21, 2023
-
-
Markus Klein authored
Resolves: #102713 Releases: main, 12.4, 11.5 Change-Id: I18c841d9085221f4b6ff826600965b159af7971b Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82245 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Nikita Hovratov <nikita.h@live.de>
-
Oliver Klee authored
- autoformat the files - sort the configuration options This keeps the files consistent and avoids unrelated formatting changes when other things are changed. Resolves: #102699 Releases: main, 12.4 Change-Id: Iffb8401328949d0d38f91512671f77285c470e6a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82243 Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com>
-
Chris Müller authored
Resolves: #102706 Releases: main, 12.4 Change-Id: Ia250046ca8e36a82012555a8ed4e638e3746c787 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82242 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Stefan Bürk <stefan@buerk.tech>
-
- Dec 20, 2023
-
-
Oliver Bartsch authored
There might be valid reasons for a module being (temporary) inaccessible for a user. Since #102665 a module redirect is done instead of throwing an exception, which a user can not resolve. However, this led to the fact that a user got redirected without knowing the reason. Therefore, a notification is now dispatched, whenever a forced module redirect takes place. Resolves: #102678 Related: #102665 Releases: main, 12.4 Change-Id: I3e3e6548c7d2ec65b1081f8bdfdab5a16ba56f31 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82241 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Georg Ringer authored
Adding the following information to itemsProcFunc helps extension authors: - effectivePid: correct page id - site: current site Resolves: #99346 Releases: main, 12.4 Change-Id: Ifc54a06c66f3dbf61a2e95f706bb54e74db4b28e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82240 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Oliver Hader authored
TypoScript property `addQueryString.exclude` concerns the internal, URL-decoded values. However, the parameters are purged from a query array that is URL-encoded. Resolves: #102386 Releases: main, 12.4 Change-Id: Ibcdca016221035f5f2974007b1fc52c04f5d643f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82261 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org>
-
Oliver Bartsch authored
Resolves: #102383 Releases: main, 12.4, 11.5 Change-Id: Iced9d71874a51ee321857b662fa157ca2c2c0307 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82238 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- Dec 19, 2023
-
-
Stefan Bürk authored
The TYPO3 core `runTests.sh` contains the `-u` option to update the images and remove dangling images. Providing an image name and a `--filter` option is not supported by podman: > Error: cannot specify an image and a filter(s) and has not been discovered yet in the TYPO3 core implementation yet. Both container runtimes `docker` and `podman` support filtering images using the `reference` filter option. Therefore, this change modifies the dangling image removal to use multiple filters To verify that filtering with two `--filter` options can be used with podman and docker, the following commands can be executed to list the set of local non-dangling images. Note: This example uses `dangling=false` instead of `dangling=true` (as in `runTests.sh`), since we expect most developers don't have dangling images yet. > podman images \ --filter "reference=ghcr.io/typo3/core-testing-*" \ --filter "dangling=false" --format "{{.ID}}" > docker images \ --filter "reference=ghcr.io/typo3/core-testing-*" \ --filter "dangling=false" --format "{{.ID}}" Resolves: #102697 Releases: main, 12.4, 11.5 Change-Id: I717d1aa229bdfb73c63aa5b2d46e1aff665544cb Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82235 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
Garvin Hicking authored
The Indexer builds a large array of all actual files on a storage (identifiedFileUids). If many files exists, this array can get very large. This array was then passed to a QueryBuilder to fetch all records NOT IN that array. Since a NOT IN query is passed as a string to the database, it can exceed the string size allowed in a query, making the whole task fail. Since a NOT IN query cannot be chunked easily, the whole logic has been adapted in a different way. Instead of fetching a restricted list of database records, all records are fetched and iterated. Even with a million of sys_file_records of a single (!) storage this will perform alright, and be within practical usage scenarios. Each database record is then checked for a match in the large array of known records, and then execute the same logic as before. To benchmark the implications, the following test was run: Baseline: * sys_file with 50.736 entries * 16.912 marked as missing * 33.824 marked as existing * Filesystem with 8.771 actual files Tested setup via a script which: * Resets to baseline sys_file storage * Executes scheduler task "File Abstraction Layer: Update storage index (scheduler)" * Flags 41.965 files as missing, 8.771 as found. Script execution was performed 50 times, and a mean avery was calculated, once once with the patch in place, once without. Old variant (using NOT IN query): 11.787 seconds New variant (fetching all records): 12.0544 seconds On top of being within the same performance level, using the new method, no database exception will be provoked (see ticket). Resolves: #102295 Releases: main, 12.4 Change-Id: Id998d7cd062fe75aac738b896bfb307b51f5cef8 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82237 Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com>
-
Benjamin Franzke authored
Input data is statically provided by EXT:core only, so there is no security issue known right now. This change is a preparation to avoid possible future security issues. Resolves: #102676 Releases: main, 12.4, 11.5 Change-Id: I49a7fdd250e8ce74fdde07ad305cbae7e4af8ec3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82234 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Stefan Bürk authored
With #92289 logic has been decoupled from `ResourceFactory` into the `StorageRepository`. As a side change, native php types have been added to a couple of methods. `StorageRepository->findByUid()` parameter type has been set to integer, which breaks the `null` fallback and retrieving the default storage `uid: 0` in `ResourceFactory` method `getStorageObjectFromCombinedIdentifier()`. Even worse is the fact that `getObjectFromCombinedIdentifier()` does not even try to cope with a invalid identifier provided. This change modifies `getObjectFromCombinedIdentifier()` and `getStorageObjectFromCombinedIdentifier` of `ResourceFactory` to cope with missing storage identifier by falling back to the default storage (`0`) with a shuffle of the exploded values. As a side-effect two PHPStan ignore patterns can be removed from the PHPStan baseline file. Used command(s): Build/Scripts/runTests.sh -s phpstanGenerateBaseline Resolves: #102692 Related: #92289 Releases: main, 12.4, 11.5 Change-Id: I8ee9736839f59db7917cb49dd0d62af17ee28cda Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82232 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Dec 18, 2023
-
-
Christian Rath-Ulrich authored
Resolves: #102672 Releases: main, 12.4 Change-Id: I6a393a23acb5030c2239f3ba74a888c638ceb3b1 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82202 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Oliver Bartsch authored
Since `QueryHelper::parseOrderBy()` might return NULL as value for fieldname and direction, we now check those values properly to prevent any TypeErrors using the type-hinted `addOrdering()` method. Resolves: #102649 Releases: main, 12.4 Change-Id: Ie117e7fd0593392e843aaca5c1e9c254c4de42d1 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82129 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com>
-
Oliver Bartsch authored
Workspace access permissions of backend modules are inherited. This is now poperly reflected in the configuration module and also documented in the changelog. Resolves: #102688 Releases: main, 12.4 Change-Id: I83a81713653c1e0dee3c79ba0762b459179a504a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82130 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Oliver Bartsch authored
The scheduler sub modules are to be used by admin's only. This has to be set explicitly as no `inherit` option exists for the module access permissions. Resolves: #102689 Releases: main, 12.4 Change-Id: I94bbf9e18d0c9fa6003e234ef7de241526cfbad0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82131 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com>
-
Oliver Bartsch authored
Using an invalid uid to link to a file does no longer throw an exception, since this prevents the backend user from fixing the invalid entry, because the edit form can no longer be accessed. Resolves: #102670 Releases: main, 12.4 Change-Id: I634eb88a2ddf671abbb88870d664e739e8127ce9 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82212 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
Henrik Elsner authored
Resolves: #102669 Resolves: #101768 Releases: main, 12.4 Change-Id: Ie377f122cfc9acba74c1684f68bb4e3434bf12d0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82128 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com>
-
Torben Hansen authored
The page info module currently shows a valid page layout as invalid, because the lookup of backend layouts still uses indexed array keys instead of associative array keys which were introduced in #99739 This change fixes the problem by using associative array keys to resolve backend layouts. Additionally, this change ensures, that the `determinePageId` function in `BackendLayoutView` does not try to resolve a page id, if the given array is empty. Resolves: #102687 Related: #99739 Releases: main, 12.4 Change-Id: Iec74aec99c790c8841dbb2db537083503987f9d0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/82127 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de>
-