typo3upgradetypo3-11.xtypo3-12.xlts

Typo3 upgrade from v11 to v12, Upgrade Wizard not working


Update 3: Solution found:

The local template package, created in v11 according to
https://docs.typo3.org/m/typo3/tutorial-sitepackage/11.5/en-us/Index.html
has not been detected by the v12 "Scan Extension Files" tool as
problematic, but it was.
Using
  composer require --dev ssch/typo3-rector
  vendor/bin/typo3-init
  vendor/bin/rector process --dry-run
  vendor/bin/rector process
resolved this issue.
In
  local_packages/site-template/ext_localconf.php
there was a
  defined('TYPO3_MODE') || die();
which needs to be
  defined('TYPO3') || die();
in v12.

I knew this but I relied on the "Scan Extension Files" tool
and didn't checked the files after the tool was all green.

THANKS A LOT TO "Boku No Maxi" WHO LED ME TO THE SOLUTION!


Update 2: Reason for this problem found but not yet a solution:

What I tried next:
- Installing Typo3 v12 new and clean with an empty database
- Imported old Typo3 v11 database overwriting the new one completely
- Running Upgrade Wizard successfully

Fine until now, but I need the sites template and I see, the original
site configuration wasn't there.

- creating Site Configuration in the backend (as it was in the original)
- installing Sites Package Theme as it was in Typo3 v11:
  
  composer config repositories.local path "local_packages/*"
  composer require "oheil/core-facilities-genomics-and-proteomics:@dev"
  composer require typo3/cms-fluid-styled-content

This went well, except that the backend is now refusing to work.
Typo3 Install Tool shows exactly same problem.

This local package template does not show any problems with the
"Scan Extension Files" tool in v12!

Removing the local template package again and all is fine again,
except that the Typo3 error log gives:
  The page is not configured!
which is expected.

So the question now moved to "how can I migrate the v11 local package
template to v12?". A new SO question has to be opened, I guess.
Will link it here later.

Problem:

After Typo3 composer upgrade from 11.5.39 (11LTS) to 12.4.19 (12LTS)
the Upgrade Wizard is not working.

Environment:

Typo3 composer installation 11.5.39
composer 2.7.7
on Debian Bookworm
php 8.3.10
Apache
all Typo3 debug and error options switched on
Upgrade following official documents at
 https://docs.typo3.org/m/typo3/guide-installation/12.4/en-us/Major/Index.html
All System Requirements are fulfilled
All extensions, except for the site theme, are removed.

Error:

The usual case:
 When clicking in the Install Backend on Upgrade Wizard, I don't get any error,
 just two pink error pop ups with
  "Something went wrong The request was not processed successfully.
  Please check the browser's console and TYPO3's log."
 Browser console, Typo3 log and php log don't give any error,
 apache2 access logs give code 200 (ok).

The sometimes case:
 In some unclear circumstances I get a detailed Ajax error, and this is also
  reflected in Typo3 error log as (formatted a bit and clipped):

 Wed, 21 Aug 2024 13:26:29 +0200 [CRITICAL] request="773899d0627ec"
  component="TYPO3.CMS.Core.Error.DebugExceptionHandler":
  Core: Exception handler (WEB: BE): TYPO3\CMS\Core\Error\Exception, code #1476107295,
  file /var/www/html/typo3/vendor/typo3/cms-core/Classes/Error/ErrorHandler.php, line 138: 
  PHP Warning:
  file_put_contents(/var/www/html/typo3/var/cache/code/di/66c5cee5312b3891804751.temp):
  Failed to open stream: No such file or directory in
  /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Backend/SimpleFileBackend.php line 229
  ...
  TYPO3\\CMS\\Core\\Http\\AbstractApplication->run()
  #21 /var/www/html/typo3/public/typo3/install.php(20): {closure}()\n#22 {main}"}

 All permissions are ok, file system is totally fine, there is no reason why this file
 can't be written or created.

The full error:

Wed, 21 Aug 2024 13:26:29 +0200 [CRITICAL] request="773899d0627ec" component="TYPO3.CMS.Core.Error.DebugExceptionHandler": Core: Exception handler (WEB: BE): TYPO3\CMS\Core\Error\Exception, code #1476107295, file /var/www/html/typo3/vendor/typo3/cms-core/Classes/Error/ErrorHandler.php, line 138: PHP Warning: file_put_contents(/var/www/html/typo3/var/cache/code/di/66c5cee5312b3891804751.temp): Failed to open stream: No such file or directory in /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Backend/SimpleFileBackend.php line 229- Exception: PHP Warning: file_put_contents(/var/www/html/typo3/var/cache/code/di/66c5cee5312b3891804751.temp): Failed to open stream: No such file or directory in /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Backend/SimpleFileBackend.php line 229, in file /var/www/html/typo3/vendor/typo3/cms-core/Classes/Error/ErrorHandler.php:138 - {"mode":"WEB","application_mode":"BE","exception_class":"TYPO3\\CMS\\Core\\Error\\Exception","exception_code":1476107295,"file":"/var/www/html/typo3/vendor/typo3/cms-core/Classes/Error/ErrorHandler.php","line":138,"message":"PHP Warning: file_put_contents(/var/www/html/typo3/var/cache/code/di/66c5cee5312b3891804751.temp): Failed to open stream: No such file or directory in /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Backend/SimpleFileBackend.php line 229","request_url":"https://webcms7-test.inet.dkfz-heidelberg.de/typo3/install.php?install%5Bcontroller%5D=upgrade&install%5Bcontext%5D=&install%5Baction%5D=upgradeWizardsDoneUpgrades","exception":"TYPO3\\CMS\\Core\\Error\\Exception: PHP Warning: file_put_contents(/var/www/html/typo3/var/cache/code/di/66c5cee5312b3891804751.temp): Failed to open stream: No such file or directory in /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Backend/SimpleFileBackend.php line 229 in /var/www/html/typo3/vendor/typo3/cms-core/Classes/Error/ErrorHandler.php:138\nStack trace:\n#0 [internal function]: TYPO3\\CMS\\Core\\Error\\ErrorHandler->handleError()\n#1 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Backend/SimpleFileBackend.php(229): file_put_contents()\n#2 /var/www/html/typo3/vendor/typo3/cms-core/Classes/DependencyInjection/Cache/ContainerBackend.php(36): TYPO3\\CMS\\Core\\Cache\\Backend\\SimpleFileBackend->set()\n#3 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Cache/Frontend/PhpFrontend.php(61): TYPO3\\CMS\\Core\\DependencyInjection\\Cache\\ContainerBackend->set()\n#4 /var/www/html/typo3/vendor/typo3/cms-core/Classes/DependencyInjection/ContainerBuilder.php(165): TYPO3\\CMS\\Core\\Cache\\Frontend\\PhpFrontend->set()\n#5 /var/www/html/typo3/vendor/typo3/cms-core/Classes/DependencyInjection/ContainerBuilder.php(85): TYPO3\\CMS\\Core\\DependencyInjection\\ContainerBuilder->dumpContainer()\n#6 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Core/BootService.php(58): TYPO3\\CMS\\Core\\DependencyInjection\\ContainerBuilder->createDependencyInjectionContainer()\n#7 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Core/BootService.php(47): TYPO3\\CMS\\Core\\Core\\BootService->prepareContainer()\n#8 /var/www/html/typo3/vendor/typo3/cms-install/Classes/Service/LateBootService.php(30): TYPO3\\CMS\\Core\\Core\\BootService->getContainer()\n#9 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Core/BootService.php(117): TYPO3\\CMS\\Install\\Service\\LateBootService->getContainer()\n#10 /var/www/html/typo3/vendor/typo3/cms-install/Classes/Service/LateBootService.php(35): TYPO3\\CMS\\Core\\Core\\BootService->loadExtLocalconfDatabaseAndExtTables()\n#11 /var/www/html/typo3/vendor/typo3/cms-install/Classes/Controller/UpgradeController.php(1069): TYPO3\\CMS\\Install\\Service\\LateBootService->loadExtLocalconfDatabaseAndExtTables()\n#12 /var/www/html/typo3/vendor/typo3/cms-install/Classes/Middleware/Maintenance.php(234): TYPO3\\CMS\\Install\\Controller\\UpgradeController->upgradeWizardsDoneUpgradesAction()\n#13 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php(111): TYPO3\\CMS\\Install\\Middleware\\Maintenance->process()\n#14 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Middleware/NormalizedParamsAttribute.php(41): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle()\n#15 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php(162): TYPO3\\CMS\\Core\\Middleware\\NormalizedParamsAttribute->process()\n#16 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Http/MiddlewareDispatcher.php(70): Psr\\Http\\Server\\RequestHandlerInterface@anonymous->handle()\n#17 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Http/AbstractApplication.php(80): TYPO3\\CMS\\Core\\Http\\MiddlewareDispatcher->handle()\n#18 /var/www/html/typo3/vendor/typo3/cms-install/Classes/Http/Application.php(46): TYPO3\\CMS\\Core\\Http\\AbstractApplication->handle()\n#19 /var/www/html/typo3/vendor/typo3/cms-core/Classes/Http/AbstractApplication.php(92): TYPO3\\CMS\\Install\\Http\\Application->handle()\n#20 /var/www/html/typo3/public/typo3/install.php(19): TYPO3\\CMS\\Core\\Http\\AbstractApplication->run()\n#21 /var/www/html/typo3/public/typo3/install.php(20): {closure}()\n#22 {main}"}

composer show output after composer upgrade:

bacon/bacon-qr-code                           2.0.8            BaconQrCode is a QR code generator for PHP.
christian-riesen/base32                       1.6.0            Base32 encoder/decoder according to RFC 4648
dasprid/enum                                  1.0.6            PHP 7.1 enum implementation
doctrine/annotations                          2.0.1            Docblock Annotations Parser
doctrine/cache                                2.2.0            PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and ...
doctrine/dbal                                 3.9.0            Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.
doctrine/deprecations                         1.1.3            A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.
doctrine/event-manager                        2.0.1            The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.
doctrine/instantiator                         2.0.0            A small, lightweight utility to instantiate objects in PHP without invoking their constructors
doctrine/lexer                                3.0.1            PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.
egulias/email-validator                       4.0.2            A library for validating emails against several RFCs
enshrined/svg-sanitize                        0.18.0           An SVG sanitizer for PHP
firebase/php-jwt                              6.10.1           A simple library to encode and decode JSON Web Tokens (JWT) in PHP. Should conform to the current spec.
guzzlehttp/guzzle                             7.9.2            Guzzle is a PHP HTTP client library
guzzlehttp/promises                           2.0.3            Guzzle promises library
guzzlehttp/psr7                               2.7.0            PSR-7 message implementation that also provides common utility methods
helhum/config-loader                          0.12.5           Generic config loader with context and environment support.
helhum/php-error-reporting                    1.0.1            Create ErrorException with clean trace from PHP error handler errors, inspired by Sentry PHP SDK
helhum/typo3-console                          8.1.1            A reliable and powerful command line interface for TYPO3 CMS
lolli42/finediff                              1.1.1            PHP implementation of a Fine granularity Diff engine
masterminds/html5                             2.9.0            An HTML5 parser and serializer.
nikic/php-parser                              4.19.1           A PHP parser written in PHP
oheil/core-facilities-genomics-and-proteomics dev-webcms7-test core-facilities-genomics-and-proteomics
phpdocumentor/reflection-common               2.2.0            Common reflection classes used by phpdocumentor to reflect the code structure
phpdocumentor/reflection-docblock             5.4.1            With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a Doc...
phpdocumentor/type-resolver                   1.8.2            A PSR-5 based resolver of Class names, Types and Structural Element Names
phpstan/phpdoc-parser                         1.29.1           PHPDoc parser with support for nullable, intersection and generic types
psr/cache                                     3.0.0            Common interface for caching libraries
psr/clock                                     1.0.0            Common interface for reading the clock.
psr/container                                 2.0.2            Common Container Interface (PHP FIG PSR-11)
psr/event-dispatcher                          1.0.0            Standard interfaces for event handling.
psr/http-client                               1.0.3            Common interface for HTTP clients
psr/http-factory                              1.1.0            PSR-17: Common interfaces for PSR-7 HTTP message factories
psr/http-message                              2.0              Common interface for HTTP messages
psr/http-server-handler                       1.0.2            Common interface for HTTP server-side request handler
psr/http-server-middleware                    1.0.2            Common interface for HTTP server-side middleware
psr/log                                       3.0.0            Common interface for logging libraries
ralouphie/getallheaders                       3.0.3            A polyfill for getallheaders.
symfony/cache                                 7.1.3            Provides extended PSR-6, PSR-16 (and tags) implementations
symfony/cache-contracts                       3.5.0            Generic abstractions related to caching
symfony/clock                                 7.1.1            Decouples applications from the system clock
symfony/config                                7.1.1            Helps you find, load, combine, autofill and validate configuration values of any kind
symfony/console                               7.1.3            Eases the creation of beautiful and testable command line interfaces
symfony/dependency-injection                  7.1.3            Allows you to standardize and centralize the way objects are constructed in your application
symfony/deprecation-contracts                 3.5.0            A generic function and convention to trigger deprecation notices
symfony/doctrine-messenger                    7.1.2            Symfony Doctrine Messenger Bridge
symfony/event-dispatcher                      7.1.1            Provides tools that allow your application components to communicate with each other by dispatching events and listening to them
symfony/event-dispatcher-contracts            3.5.0            Generic abstractions related to dispatching event
symfony/expression-language                   7.1.1            Provides an engine that can compile and evaluate expressions
symfony/filesystem                            7.1.2            Provides basic utilities for the filesystem
symfony/finder                                7.1.3            Finds files and directories via an intuitive fluent interface
symfony/http-foundation                       7.1.3            Defines an object-oriented layer for the HTTP specification
symfony/mailer                                7.1.2            Helps sending emails
symfony/messenger                             7.1.3            Helps applications send and receive messages to/from other applications or via message queues
symfony/mime                                  7.1.2            Allows manipulating MIME messages
symfony/options-resolver                      7.1.1            Provides an improved replacement for the array_replace PHP function
symfony/polyfill-ctype                        1.30.0           Symfony polyfill for ctype functions
symfony/polyfill-intl-grapheme                1.30.0           Symfony polyfill for intl's grapheme_* functions
symfony/polyfill-intl-idn                     1.30.0           Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions
symfony/polyfill-intl-normalizer              1.30.0           Symfony polyfill for intl's Normalizer class and related functions
symfony/polyfill-mbstring                     1.30.0           Symfony polyfill for the Mbstring extension
symfony/polyfill-php72                        1.30.0           Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions
symfony/polyfill-php83                        1.30.0           Symfony polyfill backporting some PHP 8.3+ features to lower PHP versions
symfony/polyfill-uuid                         1.30.0           Symfony polyfill for uuid functions
symfony/process                               7.1.3            Executes commands in sub-processes
symfony/property-access                       7.1.1            Provides functions to read and write from/to an object or array using a simple string notation
symfony/property-info                         7.1.3            Extracts information about PHP class' properties using metadata of popular sources
symfony/rate-limiter                          7.1.1            Provides a Token Bucket implementation to rate limit input and output in your application
symfony/routing                               7.1.3            Maps an HTTP request to a set of configuration variables
symfony/service-contracts                     3.5.0            Generic abstractions related to writing services
symfony/string                                7.1.3            Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way
symfony/type-info                             7.1.1            Extracts PHP types information.
symfony/uid                                   7.1.1            Provides an object-oriented API to generate and represent UIDs
symfony/var-dumper                            7.1.3            Provides mechanisms for walking through any arbitrary PHP variable
symfony/var-exporter                          7.1.2            Allows exporting any serializable PHP data structure to plain PHP code
symfony/yaml                                  7.1.1            Loads and dumps YAML files
typo3/class-alias-loader                      1.1.4            Amends the composer class loader to support class aliases to provide backwards compatibility for packages
typo3/cms-adminpanel                          12.4.19          TYPO3 CMS Admin Panel - The Admin Panel displays information about your site in the frontend and contains a range of metrics including debug...
typo3/cms-backend                             12.4.19          TYPO3 CMS backend
typo3/cms-belog                               12.4.19          TYPO3 CMS Log - View logs from the sys_log table in the TYPO3 backend modules System>Log
typo3/cms-beuser                              12.4.19          TYPO3 CMS Backend User - TYPO3 backend module System>Backend Users for managing backend users and groups.
typo3/cms-cli                                 3.1.1            TYPO3 command line binary
typo3/cms-composer-installers                 5.0.1            TYPO3 CMS Installers
typo3/cms-core                                12.4.19          TYPO3 CMS Core
typo3/cms-dashboard                           12.4.19          TYPO3 CMS Dashboard - TYPO3 backend module used to configure and create backend widgets.
typo3/cms-extbase                             12.4.19          TYPO3 CMS Extbase - Extension framework to create TYPO3 frontend plugins and TYPO3 backend modules.
typo3/cms-extensionmanager                    12.4.19          TYPO3 CMS Extension Manager - Backend module (Admin Tools>Extensions) for viewing and managing extensions.
typo3/cms-felogin                             12.4.19          TYPO3 CMS Frontend Login - A template-based plugin to log in website users in the TYPO3 frontend.
typo3/cms-filelist                            12.4.19          TYPO3 CMS Filelist - TYPO3 backend module (File>Filelist) used for managing files.
typo3/cms-filemetadata                        12.4.19          TYPO3 CMS File Metadata - Adds additional metadata to file management.
typo3/cms-fluid                               12.4.19          TYPO3 CMS Fluid Integration - Integration of the Fluid templating engine into TYPO3.
typo3/cms-fluid-styled-content                12.4.19          TYPO3 CMS Fluid Styled Content - Fluid templates for TYPO3 content elements.
typo3/cms-form                                12.4.19          TYPO3 CMS Form - Flexible TYPO3 frontend form framework that comes with a backend editor interface.
typo3/cms-frontend                            12.4.19          TYPO3 CMS Frontend
typo3/cms-impexp                              12.4.19          TYPO3 CMS Import/Export - Tool for importing and exporting records using XML or the custom T3D format.
typo3/cms-indexed-search                      12.4.19          TYPO3 CMS Indexed Search - Provides indexing functionality for TYPO3 pages and records as well as files including PDF, Word, HTML and plain ...
typo3/cms-info                                12.4.19          TYPO3 CMS Info - TYPO3 backend module for displaying information, such as a pagetree overview and localization information.
typo3/cms-install                             12.4.19          TYPO3 CMS Install Tool - The Install Tool is used for installation, upgrade, system administration and setup tasks.
typo3/cms-linkvalidator                       12.4.19          TYPO3 CMS LinkValidator - Checks for broken links and displays results in the (Info>LinkValidator) backend module.
typo3/cms-lowlevel                            12.4.19          TYPO3 CMS Lowlevel - Technical analysis of the system. This includes raw database search, checking relations, counting pages and records etc.
typo3/cms-opendocs                            12.4.19          TYPO3 CMS Open Docs - Shows opened documents for the TYPO3 backend user.
typo3/cms-reactions                           12.4.19          TYPO3 CMS Reactions - Handle incoming Webhooks for TYPO3
typo3/cms-recycler                            12.4.19          TYPO3 CMS Recycler - Restore deleted records or remove them from the database permanently.
typo3/cms-redirects                           12.4.19          TYPO3 CMS Redirects - Create manual redirects, list existing redirects and automatically createredirects on slug changes.
typo3/cms-reports                             12.4.19          TYPO3 CMS Reports - Show status reports and installed services in the (System>Reports) backend module.
typo3/cms-rte-ckeditor                        12.4.19          TYPO3 CMS RTE CKEditor - Integration of CKEditor as a Rich Text Editor for the TYPO3 backend.
typo3/cms-scheduler                           12.4.19          TYPO3 CMS Scheduler - Schedule tasks to run once or periodically at a specific time.
typo3/cms-seo                                 12.4.19          TYPO3 CMS SEO - SEO features including specific fields for SEO purposes, rendering of HTML meta tags and sitemaps.
typo3/cms-setup                               12.4.19          TYPO3 CMS Setup - Allows users to edit a limited set of options for their user profile, including preferred language, their name and email a...
typo3/cms-sys-note                            12.4.19          TYPO3 CMS System Notes - Records with messages which can be placed on any page and contain instructions or other information related to a pa...
typo3/cms-t3editor                            12.4.19          TYPO3 CMS T3Editor - JavaScript-driven editor with syntax highlighting and code completion. Based on CodeMirror.
typo3/cms-tstemplate                          12.4.19          TYPO3 CMS TypoScript - TYPO3 backend module for the management of TypoScript records for the CMS frontend.
typo3/cms-viewpage                            12.4.19          TYPO3 CMS Viewpage - Use the (Web>View) backend module to view a frontend page inside the TYPO3 backend.
typo3/cms-webhooks                            12.4.19          TYPO3 CMS Webhooks - Handle outgoing Webhooks for TYPO3
typo3/cms-workspaces                          12.4.19          TYPO3 CMS Workspaces - Workflows with custom stages and versioning for a better editing and publishing experience.
typo3/html-sanitizer                          2.2.0            HTML sanitizer aiming to provide XSS-safe markup based on explicitly allowed tags, attributes and values.
typo3/minimal                                 12.4.0           Minimal required set of TYPO3 extensions
typo3fluid/fluid                              2.14.1           The TYPO3 Fluid template rendering engine
webmozart/assert                              1.11.0           Assertions to validate method input/output with nice error messages.

Trying the Maintenance -> Analyze Database Structure has the same issue. Just a single pink popup error, but nothing else anywhere.

The other tools, like e.g. Scan Extension Files seem to work fine.

When I try to open the front end, I just get an empty page. The apache2 access log shows a HTTP code 200. No error in Typo3 log. No error in php log.

The original site is running fine with the same environment (Typo3 v11, php-8.3, composer, ...)

After the composer upgrade step the typo3cms install:fixfolderstructure parts in composer.json had to be removed, because of errors, which could not be resolved.

I am at the end of my diagnostic possibilities so I'm asking here, how I can proceed? What additional diagnostics can I do? Is anything similar already known?


New specific detail 1:

After removing `var/cache` the folder `var/cache/code/di/` is created
but empty when I reload the Install Backend in the browser.
After clicking on Upgrade Wizard, the above error appeared with
detailed Ajax error (just the error from the Typo3 log file as given
above but formatted and the file
`DependencyInjectionContainer_3d4d55ae0d9e911f84709f95e71961a7e01b1a46.php`
is created.
Now I created (touch) the file `66c71554afddf725068450.temp` 
which is the file from the detailed error, put all access rights on it.

Tried Upgrade Wizard again, same result, no success.   

Update 1:

user@host:/var/www/html/typo3$ vendor/bin/typo3 install:fixfolderstructure
The following directory structure has been fixed:
Path /public/fileadmin is not a directory

This is expected as public/fileadmin is a symbolic link to the large set of files used on the site. It was never a problem so far. I don't think it is related to above problem, but I will try anything, if people think I should.


Solution

  • EDIT: After finding the error

    Remove any non core extension and try the upgrade wizard. After that start to add 1 extension after the other and check if it still works.


    If there are errors because of permissions or missing files and folders, just remove the var/ folder and create it with helhum/typo3-console

    vendor/bin/typo3 install:fixfolderstructure
    

    A composer dumpautoload could fix some problems too if there are caching issues