- Mar 15, 2023
-
-
Nikita Hovratov authored
Tests for the "key" argument were duplicated. This patch aligns the comments with the actual input. Resolves: #100178 Releases: main Change-Id: I92d853e9b8d5890d4f54c24803ff4d3ce99f11c8 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/78133 Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com>
-
- Feb 10, 2023
-
-
Benni Mack authored
With the introduction of the Locale API in 12.2 and its inclusion in SiteLanguage->getLocale(), the property "hreflang" can be completely removed from the Site Configuration, as the Locale API can convert the hreflang property properly into a format like "de-AT" directly. This format is described as IETF RFC 5646 language tag standard: https://www.rfc-editor.org/rfc/rfc5646.html Resolves: #99908 Releases: main Change-Id: Ie712a89b41e5f00d1c592fc3cc978f58712ef0c4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77807 Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com>
-
- Feb 06, 2023
-
-
Benni Mack authored
When no cHash is given but GET parameters are handed in which _would_ require cHash parameters, these are now properly evaluated during the frontend request. As this has a security impact, a new option called $GLOBALS['TYPO3_CONF_VARS']['FE']['cacheHash']['enforceValidation'] is introduced, which then skips the "requireCacheHashPresenceParameters" option. The latter is an include list, but cache Hash calculation should rather be based on the exclude list such as "excludedParameters" and "cachedParametersWhiteList". If the new option is set, but some properties such as tx_solr[q] should be allowed, then this needs to be added to the excludedList ("excludedParameters") by extension authors. A new test "SlugSiteWithoutRequiredCHashRequestTest" is added which works with a disabled feature flag compared to "SlugSiteRequestTest" which has the feature flag enabled. Resolves: #95297 Releases: main, 11.5, 10.4 Change-Id: Ib72c6a34602e77d8c2044ad2e826c0474ebd2326 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77206 Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com>
-
- Jan 23, 2023
-
-
Oliver Bartsch authored
While the fragment in a LinkResult is named "fragment", is the typolink related config key "section". Related ViewHelpers do now use the correct key again. Resolves: #99658 Releases: main Change-Id: I9f31c651e44887588b29f472348c3dcf694e6ecc Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77531 Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com>
-
- Jan 20, 2023
-
-
Anja Leichsenring authored
The EXT:extbase UriBuilder already has a local instance of the RequestInterface object, but relies in its method `buildBackendUrl()` solely on $GLOBALS['TYPO3_REQUEST']. This is now cleaned up, with a fallback on the global object in case none has been given as a local instance. In this case, a deprecation warning will be raised. Resolves: #99650 Releases: main Change-Id: Ib05a92c999e83e19cfde65a038439e3f571afba7 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/77507 Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com>
-
- Jan 19, 2023
-
-
Benni Mack authored
TYPO3 now supports loading a list of all countries of the world in all supported translations that TYPO3 has to offer - out of the box. For this, a dev-dependency "sokil/php-isocodes-db-i18n" package is used, which contains a list of all countries (ISO 3166-1), their short names, their official names in english, and optional translations. This package fetches the data from debian repositories and is updated automatically on the second day of each month. A new Build script then transfers the information and the translations (originally in PO files) via symfony/translation into a PHP class and XLF translations for country names ("France") and official country names ("French Republic"). The Build script is already prepared to also fetch language script codes in the future, along with languages and/or currencies as well. A new API (CountryProvider) is available which returns the countries, and prepared label strings to be used with TYPO3's language me...
-
- Dec 12, 2022
-
-
Benjamin Kott authored
This adds a <f:format.trim> ViewHelper that trims a string with the option to trim characters off a string from the end or from the start of the string. Resolves: #99285 Releases: main Change-Id: I78411d61c0f190df5b0925b0dd5a14df4c6f19e5 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76937 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Chris Müller <typo3@krue.ml> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Chris Müller <typo3@krue.ml> Tested-by:
core-ci <typo3@b13.com>
-
- Nov 30, 2022
-
-
Benni Mack authored
This change introduces a Backend Route Result, similar to the Frontend Route Result object, using symfony's native URL routing component in TYPO3 Backend now, to allow to use placeholders in the URL. The Backend Route Result now contains the resolved Route object and the arguments defined in the Route, which are then resolved during the PSR-15 middleware when the Router kicks in. Note: In a later stage Router->matchRequest() will be deprecated. Resolves: #99234 Releases: main Change-Id: Id2030f8fe17457ea3791fdf4b88a375cc93ffd39 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76865 Reviewed-by:
Susanne Moog <look@susi.dev> Tested-by:
Susanne Moog <look@susi.dev> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
core-ci <typo3@b13.com>
-
- Nov 20, 2022
-
-
Christian Kuhn authored
Method return annotations identical to the return signature are useless and can be omitted. Resolves: #99143 Releases: main Change-Id: I5f268dfd166667df9df23e504575fcd904678b16 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76740 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
Christian Kuhn authored
Method parameter annotations identical to the parameter signature are useless and can be omitted. Resolves: #99142 Releases: main Change-Id: I907113b7049d551113c84aadec74c93597252069 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76734 Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Nov 10, 2022
-
-
Christian Kuhn authored
This is not about TypoScript constants/settings that are accessed using {$myConstant} in TypoScript setup. This is about the TypoScript setup "constants" top-level-object: It is used in TypoScript "parseFunc" and allows referencing string literals by name in "parseFunc" strings, which are substituted by using ###theName###, when property "constants = 1" is set in "parseFunc". This feature dates back to Kasper's "Initial revision" and is obsolete ever since: The feature exists next to well-known TypoScript constants, existing usages can be easily substituted. The confusion with TypoScript "constants" alone justifies a deprecation of this detail. The patch deprecates both the TypoScript setup "constants" top-level-object, plus the "constants" property in "parseFunc". Resolves: #99040 Releases: main Change-Id: I91546067db8a7eb72661087780e39f320db2cbeb Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76532 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Susanne Moog <look@susi.dev> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Susanne Moog <look@susi.dev> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Nov 07, 2022
-
-
Christian Kuhn authored
Switch the Extbase BackendConfigurationManager to use the new TypoScript parser. The implementation is quicker for Extbase Backend modules. Change-Id: Icb821fbe8804f219806abc5094ace3d404b96a73 Resolves: #99017 Related: #97816 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76447 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Nov 03, 2022
-
-
Georg Ringer authored
To avoid exceptions if arguments are given but empty, an additional check is added in extbase LocalizationUtility, plus the default in f:translate is changed back to the same 'null' value as in v11. Resolves: #98924 Related: #96473 Releases: main, 11.5 Change-Id: Idd08f7b948eb504999a80a215a7ded64f3c648a0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76269 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
-
- Oct 31, 2022
-
-
Benni Mack authored
This change modifies all places in TYPO3 Core to avoid using FormProtectionFactory::get() and use proper DI. A new method FormProtectionFactory->createForType(string $type) is added. In addition, FormProtectionFactory::set is removed as all affected tests are moved towards injection. The next step in this series is to deprecate the ::get() method and make a singleton out of the Factory to avoid purgeInstances() calls. Resolves: #98696 Releases: main Change-Id: I77cec532009ea4171f382bb5d9f207c0fcb7221c Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76130 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Oct 29, 2022
-
-
Nikita Hovratov authored
These comments don't add any value as the class under test can be easily determined from the filename. Executed commands: > grep -Rn -E "^\s\*\sTest case(\sfor.*|\.)?$" --include="*Test\.php" \ typo3/sysext/ | awk -F':' '{print "sed -i \047" $2-1 "," $2+1 "d\047 " $1}' | sh Some files with more comments needed manual adaption. Resolves: #98956 Releases: main Change-Id: Ia2fe96edda6ac26203bdfe8537a4d6e9d3e768c0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76332 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Chris Müller <typo3@krue.ml> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Chris Müller <typo3@krue.ml> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
- Oct 12, 2022
-
-
Benni Mack authored
This change adapts our coding guidelines and rules with PHP-CS-Fixer, allowing for * PER (a.k.a. PSR-12) * no_useless_nullsafe_operator (only use nullsafe if allowed) * only single-spaces in arrays This effectively adapts our code base * use "public const" instead of "const" where visibility is not defined * one whitespace between "declare()" and "namespace" declarations * Use (float) instead of (double) casting * Additional space in annonymous classes (PER) * grouped "use" statements (classes, function, constants) * only one space between items in array lists * Use (bool) instead of (boolean) Resolves: #98585 Releases: main, 11.5 Change-Id: Idb83729d0e4f9dc3c41e4dc5346dab77e6fbce84 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76097 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Oct 02, 2022
-
-
Benni Mack authored
With Typolink (and the typolink ViewHelpers), a new option is now available to allow to add ALL current queryParameters to the created URL when creating frontend links. 10 = TEXT 10.typolink.parameter = 12 10.typolink.addQueryString = untrusted addQueryString now allows to be set to "0" (do not do anything), or "1"/"true" or "untrusted" (new) which then makes it possible to add only "safe" query parameters which have been matched during the routing process. The breaking change here is that "addQueryString = 1" does - by default - only include the mapped query arguments from the Page Routing, avoiding unneeded GET parameters to be added by default. The affected method has been moved from ContentObjectRenderer to PageLinkBuilder now. Resolves: #98488 Releases: main Change-Id: I243cea29abc0903b59721cd31e9c380a0558bc9b Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75864 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
- Oct 01, 2022
-
-
Chris Müller authored
ViewHelpers f:link.page and f:uri.page in non-Extbase context don't handle "additionalParams" correctly since #98484, leading to a PHP warning. Handle that argument correctly and add some tests. Resolves: #98486 Related: #98474 Releases: main Change-Id: Ife768faaab346893e34dc90dac432db9925a18b4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75926 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Sep 29, 2022
-
-
Benni Mack authored
This change uses the core UriBuilder and LinkFactory (FE) for creating links in f:link.page and f:uri.page to avoid booting up Extbase when using f:link.page in non-Extbase Fluid context. Resolves: #98474 Releases: main Change-Id: Iec0e09af01dae0bb11bf62cee5f03be50e25352d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75808 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Sep 21, 2022
-
-
Christian Kuhn authored
The Extbase Request still had a fallback to fetch the base Request from $GLOBALS. The base Request is of course a hard dependency of the Extbase Request, it should be actively hand over as construct argument. Change-Id: If0b66ce0daae8983d2a083808af0b8cbc724e824 Resolves: #98391 Related: #98370 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75782 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- Sep 13, 2022
-
-
Oliver Hader authored
Variables in child nodes like `<f:asset.css>{value}</f:asset.css>` were not encoded and allow cross-site scripting. In case values shall be taken as is, corresponding `f:format.raw` instruction has to be used. Resolves: #97900 Releases: main, 11.5, 10.4 Change-Id: Id843a41c42bbe1f74cdc4efbc117b24d20026b97 Security-Bulletin: TYPO3-CORE-SA-2022-010 Security-References: CVE-2022-36108 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75719 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org>
-
- Sep 07, 2022
-
-
Benni Mack authored
This patch deprecates the constant "TYPO3_mainDir" in favor of a BackendEntryPointResolver which contains the information in a unified way to work with the prefix for the path or URL. Some tests are adapted properly to run in "frontend context" now (e.g. felogin") to simulate the proper behavior. Resolves: #98283 Releases: main Change-Id: I8d7c410456a9fe41d220aa481032df251e949936 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75620 Tested-by:
Susanne Moog <look@susi.dev> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Susanne Moog <look@susi.dev> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- Jul 27, 2022
-
-
Stefan Bürk authored
With PHP 8.2 old and unreliable methods `utf8_encode()` and `utf8_decode()` have been deprecated and will be removed in PHP 9.0. There are several ways to replace these methods, although none of them are "ensured" to be native enabled in PHP. We need to replace these methods in tests only, and as we have testing setup fully under control, this patch use `mb_convert_encoding()` from php extension `mbstring` to avoid deprecated methods and corresponding native php deprecation messages in functional test. Resolves: #98038 Releases: main, 11.5 Change-Id: I8a70a203eeae6a314e30cedab8668541145ef6c3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75312 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Jul 14, 2022
-
-
Andreas Fernandez authored
To clean up cluttered severity definitions for flash messages and reports, a new `ContextualFeedback` enum is introduced. The enum is backed, means it holds actual values, which match the previously known integer values for severities. An internal `transform()` method may be used to maintain backward compatibility where needed and to trigger deprecation notices. Resolves: #97787 Releases: main Change-Id: I44b706c929277bc765bf302b2b1d32aa1da31f85 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/74925 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Frank Nägler <frank.naegler@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Frank Nägler <frank.naegler@typo3.com> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
- Jul 13, 2022
-
-
Christian Kuhn authored
The testing-framework method setUpBackendUserFromFixture() is kinda flawed since it does two things at once: It creates db records and creates global state. This is unfortunate in various cases, especially when db snapshoting is used. Additionally, it relies on a class property which defaults to a fixture file delivered by testing-framework in XML format. We want to get rid of the .xml fixtures, and we don't want that the testing-framework delivers default fixtures. The patch adapts all usages of the property and of method setUpBackendUserFromFixture() by splitting it into two calls to first insert a local extension fixture .csv file and to then call the backend user init helper method. This finishes the removal of .xml fixture uses in the core. $ composer req --dev typo3/testing-framework:dev-main Change-Id: I32a5c43a6c8176a9e9182d08e08b42b5ff279634 Resolves: #97928 Related: #96856 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75168 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Jun 21, 2022
-
-
Christian Kuhn authored
Field 'clear' in sys_template is a checkbox field: 1 = clear constants 2 = clear setup 3 = clear both constants & setup The patch updates a functional test setup to properly clear both constants and setup. Change-Id: I45175bbeb571328715928d133ce83245608e208c Resolves: #97800 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/74969 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- May 25, 2022
-
-
Oliver Klee authored
Also drop type annotations that already are present in the corresponding field in the superclass, and drop some type annotations that are redundant with the existing native type declarations. This helps resolves a bunch of new PHPStan warnings after the recent changes in the testing framework. It also helps static code analysis, and makes the code more succinct. Resolves: #97687 Releases: main, 11.5 Change-Id: I6f1b67f410f7e195b036bc5b5b528cb271a990b9 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/74738 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Apr 22, 2022
-
-
Benni Mack authored
This change moves all "typolink" functionality from cObj->typolink into a custom "LinkFactory" class which then calls custom LinkBuilders (as before) to do their work. The main benefit is separation of concerns, thinning out functionality from the monster ContentObjectRenderer functionality. Instead of the global hook $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['tslib/class.tslib_content.php']['typoLink_PostProc'] a new PSR-14 Event "AfterLinkIsGeneratedEvent" is introduced, which in turn uses the LinkResult to operate on. This new Event also makes the hook $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['urlProcessing']['urlProcessors'] obsolete, which was used for non-page links + URLs. As all functionality for frontend links are now running through this event, which contains all information. In addition, typolink.userFunc now receives a LinkResult object instead of a <a> string with arguments, and needs to return a LinkResult object again. Also, the ATagParams hook vanished as well, since the new Event can be used easily (and in a much better way!) Both parts are breaking, all other parts are expected to work as before. A new HtmlLinkResult is added, which allows for building a HSC'ed <a> tag properly in typolink(). Architectural Details: * LinkFactory (new class) is now handling the "typolink" logic for creating any kind of links or URLs (page/mails/files). For the actual logic of e.g, pages the "PageLinkBuilder" is used in this place. * Internally, LinkFactory follows the same generation as cObj->typolink() before, but uses methods to make the code more readable. * In the end, LinkFactory will return a "LinkResultInterface" which contains everything to build a <a> tag, however it cannot return a "UriInterface" from PSR-7, as a link to mailto: is not a URL, thus, not supported by PSR-7. * The main "cObj->typolink()" method then takes the LinkResultInterface and wraps it into a HtmlLinkResult which does a htmlspecialchars() around all the attributes and the $linkText. So this is still the way to go to use from a public API point of view. * As typolink() heavily depends on stdWrap() and thus on cObject this information needs to be injected properly of course, and has the hard dependency when creating links in the Frontend. * new methods $cObj->createUrl() and $cObj->createLink() are added to make use of the LinkInterface functionality programmatically, so people can choose to get a hsc'ed result via typolink(), or typolink_URL(), or a pure data via createUrl() and createLink(). Next steps / further patches: * Deprecate "lastTypoLink_LD" etc. * Move LinkResultFactory into LinkFactory with ClassAlias * Maybe add another method to just generate an URL to the LinkFactory * Create JsonLinkResult object and clean up original LinkResult object Resolves: #96641 Resolves: #92029 Releases: main Change-Id: Ic9ce01153a0cfdcbacb15e1e3f3e382f95400192 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72999 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- Apr 07, 2022
-
-
Michael Telgkamp authored
The context sensitive help (CSH) is not accessible and the information is often not useful or not updated for a long time. As the online documentation is now improved a lot, there is a link added in the main help menu. For short, but important additional information to explain the usage of a field the `description` field should be used. Resolves: #97312 Releases: main Change-Id: Ic0b7df90ef88c53f802bfb254023ba030ff01ee7 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/74191 Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- Mar 28, 2022
-
-
Chris Müller authored
Resolves: #96954 Releases: main, 11.5 Change-Id: I60366ca5155c96ccc1068cc48339b0e96318d5f8 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73589 Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Mar 07, 2022
-
-
Susanne Moog authored
Extbase modules traditionally use the plugin or module namespace to prefix get parameters and map arguments to plugins. In the frontend context, this makes sense, as multiple plugins may reside on a page. In the backend, however, an extbase module is responsible for rendering a complete view. Therefore the namespacing of arguments can be disabled, making URLs easier to read, more in line with non-extbase modules and allowing extbase modules to directly access outside information like the "id" parameter handed over by the page tree for example. To allow extbase modules to configure this behaviour, a feature flag can be set in the module configuration turning the namespacing off or on. Resolves: #97096 Releases: main Change-Id: Icffcab4c971a961d72749bee76ee6a3f2e079487 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73798 Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Mar 02, 2022
-
-
Benjamin Franzke authored
In order to avoid the internal HtmlResponse class usage and to prepare for possible APIs to manage Content Security Policy headers assets rendered by the PageRenderer it's good for PageRenderer to be able to render full PSR-7 responses. Also cleanups up ModuleTemplate to make use of this capability. Resolves: #97071 Releases: main Change-Id: If628d33c916367e204695252b76f629397dd995a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73604 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- Feb 27, 2022
-
-
Benjamin Franzke authored
The private container now provides access to non-public services that have been at least once injected (and thus be considered as service during DI compilation phase). This may be used to provide dependencies to functional test setups where some dependencies needs to be mocked while other should receive the vanilla dependency the container would normally inject. A functional test case does implement the ContainerInterface now, allowing tests to access both public and private services. $this->getContainer() may still be used if the default container (delivering public services only) needs to be injected into a service. Related testing-framework pull request: https://github.com/TYPO3/testing-framework/pull/331 Commands executed: composer u typo3/testing-framework git grep -l "this->getContainer()->get(" | xargs sed -i 's/this->getContainer()->get(/this->get(/g' Resolves: #97032 Releases: main, 11.5 Change-Id: I5987d5244270a3e190c8721f6a8971c7fd1309ef Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73646 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Feb 24, 2022
-
-
Chris Müller authored
Resolves: #96953 Releases: main, 11.5 Change-Id: I5071050dd7e2eac39c8578fd8dcb915b94a22aa0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73588 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Markus Gerdes <markus@madaxel.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Markus Gerdes <markus@madaxel.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Feb 18, 2022
-
-
Oliver Bartsch authored
Some components in the Core allow to either define locallang references or static labels. To process them in a template, usually the f:translate ViewHelper is used. Since the value will be dynamically and a static label as "key" will lead to an exception in non extbase context, the dynamic value must also be defined as the default, which will be used by the ViewHelper, in case the "key" can not be resolved. There are two possibilities to define the default. Either by setting the "default" attribute or by adding the value as tag content. Latter failed since #96473 because the tag content was resolved too late. The previous behaviour is now restored by evaluating a possible default value before processing the "key". Resolves: #96964 Related: #96473 Releases: main Change-Id: If932d2de14b8b58005051a03ccf7be290b66ddd9 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73599 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- Feb 14, 2022
-
-
Susi Moog authored
* Migrate most test fixtures from .xml to .csv. Some special cases are left out, those will receive dedicated patches. * Streamline assertCSVDataSet() and importCSVDataSet() usage to __DIR__ relative paths. Resolves: #96856 Releases: main, 11.5 Change-Id: I747aafa03c031aa655c8f2a9ab71027ee2accddc Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73454 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Susanne Moog <look@susi.dev> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Susanne Moog <look@susi.dev> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
Oliver Hader authored
Email processing in <f:link.email> view helper has been changed to be based on typolink recently. In order to allow (internal) markup in spamProtectEmailAddresses_atSubst or ~_lastDotSubst it has to be ensured that only the input parameter (the email address) is considered as user input and thus encoded for HTML. Resolves: #96723 Releases: main, 11.5 Change-Id: I199ab6471d44508b0a3a4338ea1650d7eb7345df Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73363 Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Benni Mack <benni@typo3.org>
-
- Jan 30, 2022
-
-
Stefan Bürk authored
This patch removes docblock typehints for FunctionalTestCase properties in functional tests, thus using the docblock type hint of base class: * $coreExtensionsToLoad * $testExtensionsToLoad * $pathsToLinkInTestInstance * $pathsToProvideInTestInstance This resolves a couple of issues from phpstan baseline. > Build/Scripts/runTests.sh -s phpstanGenerateBaseline Resolves: #96678 Releases: main, 11.5 Change-Id: If30529ac47f9cf329343154df96b7e6d63a23e00 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73202 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Jan 29, 2022
-
-
Christian Kuhn authored
Constant LANGUAGE_PRESETS must be defined in tests using SiteBasedTestTrait and needs to be accessible. > Build/Scripts/runTests.sh -s phpstanGenerateBaseline Change-Id: Ie31a2d1fba88aabc182b3c477ff96cfb3f13c6c2 Resolves: #96679 Releases: main, 11.5 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73204 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Jan 25, 2022
-
-
Wouter Wolters authored
Adapt to a patch in typo3/testing-framework, thus update of typo3/testing-framework in composer.lock is mantandory in this patch. Used command: composer u typo3/testing-framework Resolves: #96172 Releases: main Change-Id: I9c9a08eca10a836b450cc1717c02cb7afa6be01e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72342 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-