- Apr 12, 2024
-
-
Christian Kuhn authored
New version phpdocumentor/reflection-docblock:5.4.0 changed the signature of DocBlockFactory::createInstance(), which now points out a misuse in extbase. The patch changes the instantiation and avoids calling registerTagHandler() since this can and should be hand over to createInstance() directly. Resolves: #103614 Releases: main, 12.4 Change-Id: I344ef7df23dedd950c2775fe2fab93f7bb808786 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83751 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Oct 24, 2023
-
-
Christian Kuhn authored
It's time to update to latest changes of php-cs-fixer to align with current community rules. This brings a rather huge series of changes, main changes due to single_line_empty_body rule which now formats empty class and method body curly braces into a single line, plus changes from function_declaration rule which tends to avoid more whitespaces. The change has a slight impact on phpstan, we regenerate baseline. To reduce backport headaches, this change is backported to v12 and v11. > composer req --dev friendsofphp/php-cs-fixer:^3.35.1 > Build/Scripts/runTests.sh -s cgl > Build/Scripts/runTests.sh -s phpstanGenerateBaseline Resolves: #102236 Releases: main, 12.4, 11.5 Change-Id: Iea45b10667951672b2194033216c49f580799f55 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/81513 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Jasmina Ließmann <minapokhalo+typo3@gmail.com> Reviewed-by:
Jasmina Ließmann <minapokhalo+typo3@gmail.com> Review...
-
- Aug 07, 2023
-
-
Oliver Bartsch authored
Resolves: #101605 Releases: main, 12.4 Change-Id: I1da8af5b5b0025ad0f25349fe6d4893eddbd5eaf Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/80432 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Oliver Bartsch <bo@cedev.de>
-
- Jul 04, 2023
-
-
Alexander Schnitzler authored
ObjectAccess::getGettablePropertyNames() has quite the history by now. It used to be quite simple, an is_callable() check for getters/hassers and issers of objects. That didn't account for methods with mandatory method arguments which was fixed by using reflection. Because runtime reflection is slow, the usage of cached reflection (ClassSchema) had been introduced. But, during that change, symfony/property-access had also been introduces, which contradicts the idea of performance gain because: - symfony/property-access also uses uncached reflection - symfony/property-access actually calls the accessors under test As both is undesirable, the usage of symfony/property-access has been removed again. Releases: main, 12.4, 11.5 Resolves: #101176 Change-Id: I2bc796ebeaf2f1357fd3154b711910c6f553f4e4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/79675 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Benni Mack <benni@typo3.org>
-
- Mar 27, 2023
-
-
Oliver Klee authored
- use arrow functions - make anonymous functions static if possible - add type declarations - use first class callables see https://www.php.net/manual/en/functions.first_class_callable_syntax.php Resolves: #100146 Releases: main Change-Id: Ic4f3f93b7592dc9ce3fdb2a3bd8bf2fea491ebbe Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/78099 Reviewed-by:
Alexander Schnitzler <git@alexanderschnitzler.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Alexander Schnitzler <git@alexanderschnitzler.de> Tested-by:
core-ci <typo3@b13.com>
-
- Mar 10, 2023
-
-
Alexander Schnitzler authored
Extbase creates class schema objects for classes to gather information for further analysis. One part of that information is property types. In recent TYPO3 and PHP versions, extbase did expect a property to have zero or one type. Due to changes to PHP (Union Types/Intersection Types), extbase's internal behaviour needs to change and detect all declared types. This is especially useful in models whose properties can now be declared as public Entity|LazyLoadingProxy|null $reference = null; Releases: main Resolves: #98132 Change-Id: I36dd8fd3d152e8dbf0443a5a1866c444d6fecbd0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/75417 Tested-by:
Stefan Froemken <froemken@gmail.com> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Stefan Froemken <froemken@gmail.com> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Markus Klein <markus.klein@typo3.org>
-
- 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>
-
Christian Kuhn authored
Property annotations identical to the property signature are useless and can be omitted. Resolves: #99141 Releases: main Change-Id: Iad6ed98a5f68a432c9370c6baa0864f6992facff Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/76733 Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Oliver Klee <typo3-coding@oliverklee.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Stefan Bürk <stefan@buerk.tech>
-
- Aug 08, 2022
-
-
Alexander Schnitzler authored
To gather information about properties of domain objects, extbase used method DomainObjectInterface::_getProperties() which internally used get_object_vars() which does not return uninitialized properties. This leads to the inability to use such uninitialized properties in models. Hence, those properties are not reconstituted at all when converting an object instance from a database row, eventually leading to fatal errors. To mitigate this issue, extbase does now use the existing information about classes gathered via ClassSchema which gathers information via reflection (anyway). Releases: main, 11.5 Resolves: #95819 Change-Id: I00e2eb4967631ca28a5889e934fd409fd3fdef96 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72005 Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Reviewed-by:
Markus Klein <markus.klein@typo3.org> Reviewed-by:
Stefan Froemken <froemken@gmail.com> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Tested-by:
Markus Klein <markus.klein@typo3.org> Tested-by:
Stefan Froemken <froemken@gmail.com> Tested-by:
Benni Mack <benni@typo3.org>
-
- Apr 22, 2022
-
-
Larry Garfield authored
Due to a former lack of missing proper functions to check for strings starting, ending or containing sub-strings, workarounds with strpos() constructs have been used in TYPO3 as well as in just about every PHP application. PHP finally implemented proper native functions for these kind of tasks, which make code more readable and avoid to easily oversee bugs. Additionally, php-cs-fixer provides a rule-set to replace most of these changes, see: https://cs.symfony.com/doc/ruleSets/PHP80MigrationRisky.html This rule is now enabled and used to ensure cleaner code in the future. The rule is applied to ensure green cgl checks. Replacements covered by php-cs-fixer rule: * replace `strpos($haystack, $needle) === 0` with `str_starts_with($haystack, $needle)` * replace `strpos($haystack, $needle) !== 0` with `!str_starts_with($haystack, $needle)` * replace `strpos($haystack, $needle) !== false` with `str_contains($haystack, $needle)` * replace `strpos($haystack, $needle) === false` with `!str_contains($haystack, $needle)` Some additional (manual) replacements on nearby places to changed code places: * replace `substr($haystack, strlen($needle) * -1) === $needle` with `str_ends_with($expression, ']')` * replace `substr($haystack, strlen($needle) * -1) !== $needle` with `!str_ends_with($expression, ']')` Used commands: > Build/Scripts/runTests.sh -s cgl Resolves: #97438 Releases: main Change-Id: Ia1206d4dd08b43597bfe794389f6db8bdeb3de0f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/74365 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
crell <larry@garfieldtech.com> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com>
-
- Feb 08, 2022
-
-
Christian Kuhn authored
The match expression in PHP needs default as keyword, not as string literal. Change-Id: I8f242b47c74920034e046ce957cb5830d0584aa0 Resolves: #96794 Related: #96688 Releases: main Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73362 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Wouter Wolters <typo3@wouterwolters.nl> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
-
Susanne Moog authored
Since PHP 8, native attributes are supported. In comparison to annotations, attributes have auto-completion, are better readable and were "invented" for storing meta-information about properties. Extbase annotations are already nearly 1:1 translatable to attributes. The following annotations have been enriched for usage as attributes: @Extbase\ORM\Transient @Extbase\ORM\Cascade @Extbase\ORM\Lazy @Extbase\IgnoreValidation @Extbase\Validate Resolves: #96688 Releases: main Change-Id: I8f83790869bcca12cf8c8e2967fd24c468eea104 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73217 Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Georg Ringer <georg.ringer@gmail.com>
-
- Feb 07, 2022
-
-
Chris Müller authored
Resolves: #96762 Releases: main, 11.5 Change-Id: I3f8300389fae0b6f30a7dc826afb8b2260ea41df Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/73322 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Jan 08, 2022
-
-
Nikita Hovratov authored
The type can already be inferred from the source code. The cleanup was run automatically with a PHPStorm plugin. Resolves: #96482 Releases: main Change-Id: I669145adc66dc898f3016de1958cf0105c988243 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72907 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Dec 15, 2021
-
-
Christian Kuhn authored
Resolves: #96305 Related: #94115 Releases: main Change-Id: Id048e7f8b8679fd0dc2ab4e7f2120410e053a4df Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72595 Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Dec 04, 2021
-
-
Christian Kuhn authored
This is not only deprecated but also obsolete with the removal of extbase ObjectManager object management. Resolves: #96235 Related: #92386 Related: #96208 Releases: main Change-Id: I7c04e152f719e366aaa25c96e71aca9c920495b0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/72498 Tested-by:
Stefan Bürk <stefan@buerk.tech> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Stefan Bürk <stefan@buerk.tech> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
- Oct 02, 2021
-
-
Helmut Hummel authored
Core cache is used in many places throughout the core, mostly to cache resources gathered from installed extensions. In every single place the cache identifier for these caches is constructed in a similar, but not identical way. This change aims to unify the cache identifiers and introduce a (private) API to generate a cache identifier same way for all core caches. As a "side effect" all identifier suffixes are now identical and can be recognized to belong together. Releases: master Resolves: #95024 Change-Id: I0e090af636c58795473059191f1e571d5a6c1b73 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/70810 Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- Sep 30, 2021
-
-
Helmut Hummel authored
With Symfony DI we can simplify our code and remove workarounds previously introduced to prepare singleton objects for later injection. Releases: master Resolves: #95405 Change-Id: Ib1c5af875f6cdfafda1dac5efe70cd7e73b069c0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/71376 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- Sep 24, 2021
-
-
Wouter Wolters authored
In some cases it can improve performance too. Resolves: #95210 Releases: master Change-Id: I4915bb1391ec99ff891248545080640965c8f62a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/70204 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Simon Schaufelberger <simonschaufi+typo3@gmail.com> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de>
-
Benni Mack authored
The rule trailing_comma_in_multiline is added to the PHP CS fixer configuration. This reduces possible merge conflicts in the future. The commands to apply the rules over the code base was ./bin/php-cs-fixer fix \ --path-mode intersection \ --config=Build/php-cs-fixer.php \ typo3/sysext And then: ./bin/php-cs-fixer fix --config=Build/php-cs-fixer.php Resolves: #94553 Releases: master Change-Id: I0ebbfa9edbbcde19aaeb44219a71f2f093ab705e Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/69825 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Wouter Wolters <typo3@wouterwolters.nl> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Sep 21, 2021
-
-
Benni Mack authored
With PHP 8.0 and symfony/polyfill-php80 it is possible to use native str_starts_with() and str_ends_with() methods. This way, the methods * StringUtility::beginsWith() * StringUtility::endsWith() are marked as deprecated. Resolves: #95293 Releases: master Change-Id: I46d15c2f8b93c5f8b487966b2015ebefb1711348 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/71135 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
Wouter Wolters <typo3@wouterwolters.nl> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Wouter Wolters <typo3@wouterwolters.nl> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Jun 30, 2021
-
-
Oliver Bartsch authored
The method getCollectionValueType() is deprecated since symfony 5.3 and has therefore been replaced by getCollectionValueTypes(). Resolves: #94435 Releases: master Change-Id: I05427349f738cb328d547b221ee0224aa04ca57a Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/69658 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Jochen <rothjochen@gmail.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Jochen <rothjochen@gmail.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- Jun 14, 2021
-
-
Alexander Schnitzler authored
When a ClassSchema is created for a class, all methods inside said class are analyzed along with their parameters. Ever since extbase existed, the parameter type has been read from the doc block. ``` /** * @param \Foo\Bar\Baz $baz */ public function injectBaz($baz); ``` Since the whole reflection api and PHP itself have been improved in the recent past, parameter types can be detected without looking at doc blocks. It is recommended to use native type hints as follows: ``` public function injectBaz(\Foo\Bar\Baz $baz); ``` The doc block is neiter needed nor supported in the near future. Of course, developers may add a doc block but TYPO3 will no longer evaluate that as of version 12.0. Releases: master Resolves: #94115 Change-Id: Ifc68c0cb8a42b8ab589043afbaebf5dd5763eee5 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/59450 Reviewed-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org>
-
- May 30, 2021
-
-
Daniel Goerz authored
* EXT:dashboard * EXT:extbase * EXT:extensionmanager * EXT:filelist Resolves: #94124 Releases: master Change-Id: I57e3f0b390639d2160420e4dc26468c08c6341c9 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/69320 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
-
- May 06, 2021
-
-
Benni Mack authored
Due to a bug in #94001 the Extbase Reflection of "self" did not work anymore. Resolves: #94076 Releases: master, 10.4 Change-Id: I3658d8175661621a493ac15d19238b4f0d60eb64 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/69054 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
crell <larry@garfieldtech.com> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch>
-
- May 04, 2021
-
-
Larry Garfield authored
PHP 8 deprecated a number of very old bits of the Reflection API. This patch updates ClassSchema to use the newer equivalents. Also fixes some unrelated PHP 8.0 errors around undefined value handling. Resolves: #94001 Releases: master, 10.4 Change-Id: Id235fa830894e9a2dc6465444ec2c6808f18c3aa Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68898 Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Mar 15, 2021
-
-
Benni Mack authored
The change makes "e712dc9e" existing Extbase installations broken, so this is reverted. Change-Id: I141e100a1dcbfe6c2d9b41af090c1c120052a8f4 Resolves: #93745 Reverts: #92946 Releases: master, 10.4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/68329 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org>
-
- Mar 01, 2021
-
-
Alexander Schnitzler authored
Several reflection methods are deprecated for a while and throw errors with PHP8. - ReflectionParameter::getClass() - ReflectionParameter::isArray() Both need to be replaced with the new api: - ReflectionParameter::getType() Releases: master, 10.4 Resolves: #92946 Change-Id: I9391cd260f0d4dba5eb03f63c1f74f01bd97e7e4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/66936 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Dec 14, 2020
-
-
Alexander Schnitzler authored
Since core dependency injection is in place and is about to replace the extbase dependency injection, marking properties with the @Extbase\Inject annotation to invoke property injection is deprecated and must be replaced by one of the following di methods: - constructor injection: works both with core and extbase di and is well suited to make extensions compatible for multiple TYPO3 versions. - setter injection: Basically the same like constructor injection. Both the core and extbase di can handle setter injection and both are supported in different TYPO3 versions. - (core) property injection: This kind of injection can be used but it requires the configuration of services via a Services.yaml in the Configuration folder of an extension. The recommended way is constructor injection. Not only is it the most compatible version of di, it also brings the advantage of clearly showing dependencies of a class. Also, it quickly shows if dependencies stack up which indicates that the service should be refactored. Releases: master Resolves: #92386 Change-Id: I61afbb6bb15b136c200849c6c8f2cd6211d4c306 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65835 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- Nov 05, 2020
-
-
Alexander Schnitzler authored
This patch fixes incompatible type usage in function arguments and is preparatory work for introducing native type hints and strict mode in all core files. Releases: master, 10.4 Resolves: #91576 Change-Id: Idb80fced22515fbd25365ff43b64b6618d5cedc3 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64449 Tested-by:
Daniel Goerz <daniel.goerz@posteo.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Alexander Schnitzler <git@alexanderschnitzler.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Daniel Goerz <daniel.goerz@posteo.de> Reviewed-by:
Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by:
Alexander Schnitzler <git@alexanderschnitzler.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Sep 17, 2020
-
-
Alexander Schnitzler authored
While introducing symfony/property-access, method isPropertyGettable of class ObjectAccess had been adjusted in a manner which made the mixed usage of array access and regular property access impossible. If an object implemented ArrayAccess and used regular properties, all of those properties were reported inacessible/non-gettable which is not true. With this patch, regular properties and those defined magically via ArrayAccess are detected correctly as gettable. Releases: master, 10.4 Resolves: #91784 Change-Id: If523943f679beabf40ad5d71c0e0d1d0fef8db4d Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65234 Tested-by:
Christian Kuhn <lolli@schwarzbu.ch> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Christian Kuhn <lolli@schwarzbu.ch> Reviewed-by:
Jörg Bösche <typo3@joergboesche.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
-
- Jul 21, 2020
-
-
Simon Gilli authored
Since phpdocumentor/reflection-docbloc 5.2.x a tag is required to implement also the phpDocumentor\Reflection\DocBlock\Tags\Formatter\Tag interface. This patch implements the tag interface for the Null_ tag defined in Extbase. Resolves: #91832 Releases: master, 10.4 Change-Id: Idb836dc3f8816a5c2c40d429a61dcda1cd27fd7f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65061 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Nicole Cordes <typo3@cordes.co> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Nicole Cordes <typo3@cordes.co> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- Jul 09, 2020
-
-
Benni Mack authored
This change removes deprecated functionality: - ReferenceIndex->updateIndex() is now either ProgressListenerInterface or null - ExtensionManagementUtility->findService() expects an array as third argument - BasicFileUtility->setFileExtensionPermissions() removed - GeneralUtility->callUserFunction now expects object or null as third argument - DataMapper->__construct does not expect $query to be set anymore - ObjectAccess->setProperty - fourth argument removed Resolves: #91613 Related: #91473 Releases: master Change-Id: I39fa30f84201b0ed837f6ac0e6d27e1ddb15376d
-
- Jun 03, 2020
-
-
Alexander Schnitzler authored
The property injection with non-public properties had been deprecated with #82975 and has been forgotten to be removed until now. With this patch only public properties can be used for extbase dependency injection. Releases: master Resolves: #90799 Change-Id: I21d4b8bcdd07a20ba9ad7ebd87465cc291572bba Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/63821 Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-
- May 29, 2020
-
-
Alexander Schnitzler authored
Releases: master Resolves: #91535 Related: #91473 Change-Id: I98db08e8fef297b47bd11fed13d3fe91af3ba1cd Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64382 Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benjamin Franzke <bfr@qbus.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- May 18, 2020
-
-
Alexander Schnitzler authored
The ReflectionService usually doesn't get serialized by users directly but since Extbase has an unclean dependency chain, the serialization of the ReflectionService is triggered in user land code when serializing a LazyObjectStorage e.g. Since it's no problem to implement a clean serialization and unserialization of the ReflectionService it is implemented with this patch and will no longer cause any troubles. There is just one thing to mention. The ReflectionService usually comes with a cache which cannot be restored during wakeup of the serialized service. It's unlikely but it's possible that the absense of the cache can cause a performance hit. Releases: master, 9.5 Resolves: #91404 Change-Id: I8c64968f0f329528c9f578ba0ef76437ada40ac0 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64494 Tested-by:
Susanne Moog <look@susi.dev> Tested-by:
Benjamin Franzke <bfr@qbus.de> Tested-by:
TYPO3com <noreply@typo3.com> Reviewed-by:
Susanne Moog <look@susi.dev> Reviewed-by:
Benjamin Franzke <bfr@qbus.de>
-
- May 12, 2020
-
-
Oliver Hader authored
Deserialization of objects could lead to arbitrary removal of resources as well as sending out message via mail. Resolves: #88573 Resolves: #90316 Releases: master, 9.5 Change-Id: I3f77928203f4929bc715f548fb9bfdc0cd749e93 Security-Bulletin: TYPO3-CORE-SA-2020-004 Security-References: CVE-2020-11066 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64468 Tested-by:
Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org>
-
- Apr 15, 2020
-
-
Alexander Schnitzler authored
This patch has been created with rector and php-cs-fixer bin/rector process --set=php53 typo3/sysext/extbase/Classes bin/rector process --set=php53 typo3/sysext/extbase/Tests Releases: master Resolves: #91047 Change-Id: Idcd1e10e5bf6dd5fa504873e450e31a980fab9db Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64180 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Benni Mack <benni@typo3.org> Tested-by:
Alexander Schnitzler <git@alexanderschnitzler.de> Reviewed-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Alexander Schnitzler <git@alexanderschnitzler.de>
-
Alexander Schnitzler authored
With this patch, the header comment of php files is automatically added by the php-cs-fixer, which guarantees that its format and place of occurrence remain the same in all files. Files that are copied over from other projects are excluded. Furthermore, files that are kind of inspired by other projects also get the same header comment but may have a second, additional comment explaining its origin. Used command: bin/php-cs-fixer fix --config=Build/php-cs-fixer/header-comment.php Releases: master Resolves: #91024 Change-Id: I5a040517e0fbde6e5a27d589bf2f222078326dc8 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/64159 Tested-by:
TYPO3com <noreply@typo3.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Benni Mack <benni@typo3.org> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Benni Mack <benni@typo3.org>
-