Skip to content

Conversation

@calien666
Copy link
Member

@calien666 calien666 commented Apr 22, 2024

Update for TYPO3 version 11.
Fixes #5

Copy link
Member Author

@calien666 calien666 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Riiiad Take a look here.

@PKuhlmay
Copy link

PKuhlmay commented May 29, 2024

The Readme file needs to be adjusted as well. The command "ddev install-full" is not available anymore.
Done ✅

calien666 added 2 commits July 8, 2025 14:54
With rebuilding and refactoring, two dependencies were added in
`composer.json`. In addition to this, the respective dependencies were
added in `ext_emconf.php` ensuriung correct behaviour on legacy
installations.
TypoScriuptt Linter issued code smells, which were fixed. In addition,
the `.editorconfig` is adopted matching the linter requirements
calien666 added 7 commits July 8, 2025 15:20
Removed superfluous code and installed TYPO3/testingFramework

Used commands:
```shell
composer remove --dev ergebnis/composer-normalize
composer remove --dev ssch/typo3-rector
composer require --dev typo3/testing-framework:^7.1
```
In addition to the introduction ofthe TYPO3 testing framework, adopt the
configurations matching phpunit 10.5.
With the goal of getting the Extension working with TYPO3 11 and above
and dropping the support for older TYPO3 versions, remove classes taking
care of older versions, as they are no longer needed
The Update wizards are no longer used and could be removed. As there is
the possibility, someone wants to upgrade from versions below 0.9,
deprecate the classes and mark them to be removed in a later version
In efforts to a better code maintainability, add small tests for some
parts, testing the functionality of the testing infrastructure and
allow the pipelines run the tests.
@calien666 calien666 force-pushed the update-11-lts branch 2 times, most recently from 0974ebf to 584e1b6 Compare July 8, 2025 14:30
@calien666 calien666 requested a review from sbuerk July 8, 2025 14:38
According to old TypoScript extbase configuration, add the class names
as array-keys for usage in TCA.

This allows updating without any breaking inside the database models,
as the models itself are registered with their respective class names
as `recordType`.
Within v11 it is recommended to use `ResponseInterface` returns.
During the refactoring, most was done, but it was overseen, that the
created responses are used.
Add event changeable properties and streamline the response.
The old slot-adapted solution had a high potential for attacking itself
and thus getting stuck in an event caller loop.

The modification made here places the event handling on the
PollController and allows for finer adjustment, as each step is now
stored individually as an event. On the one hand, this facilitates
troubleshooting and, on the other hand, prevents an unintentional
event-in-event loop, which was previously the case.

At the same time, exception handling is optimised and case-specific
exceptions are thrown, which clearly identify the permissions as the
source of the error and which permission is actually missing at that
point.

The controller itself has been modified so that all actions now return a
ResponseInterface, which will suffice for a later upgrade to TYPO3 v12.
As the ViewHelper used deprecated `CompileWithRenderStatic`, refactor to
`AbstractConditionViewHelper` and rework the respective templates.
Before refactoring to EventListeners, the Slots could create redirects
after manipulating the data.
This technique could be used again, but for getting a clearer state, it
is better to use response manipulation through the event and the
respective Listeners ensuring the response being returned directly
inside the controller instead of some other places.

Create the default redirect response as variable inside the controller
action and override with the manipulated one from the event.

This ensures a clean state and proper possibilities for the manipulation
In favour of an early check and exit, add an event to the newAction,
which allows a check for event listeners and an earlier return and
exception throwing than on create action.
@sbuerk
Copy link
Contributor

sbuerk commented Aug 22, 2025

@calien666 Let's coordinate on merging & tagging / releasing.

Currently we do not have the TER access to upload a ter release anyway, pinged @a-r-m-i-n in slack to transfer the key to web-vision for that.

@calien666 calien666 merged commit 4495eed into master Aug 22, 2025
4 checks passed
@a-r-m-i-n
Copy link
Contributor

@sbuerk I'm on vacation right now. Checking Slack next week.

@sbuerk sbuerk deleted the update-11-lts branch August 27, 2025 14:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade for v11?

6 participants