Updates
This page documents update and migration steps between major versions.
Version 1.x
This is the initial release of the standalone extension. There are no migration steps required for a fresh installation.
Migrating from fgtclb/academic-base
The environment builder and state manager were extracted from
fgtclb/academic-base, where they lived under the internal, @internal
flagged namespaces FGTCLB\AcademicBase\Environment,
FGTCLB\AcademicBase\Core12\Environment and
FGTCLB\AcademicBase\Core13\Environment.
As of ``fgtclb/academic-base`` 2.4.0 those internal classes are
deprecated and will be removed in ``fgtclb/academic-base`` 3.0.0. Code
that consumed the feature through fgtclb/academic-base should switch to this
extension:
-
Require the extension:
composer require fgtclb/environment-state-managerCopied! -
Replace the namespace prefix. The class names, method signatures and behaviour are compatible; only the namespace changes (the
Environmentsub-namespace segment is dropped):fgtclb/academic-base(deprecated)fgtclb/environment-state-managerFGTCLB\AcademicBase\Environment\*FGTCLB\EnvironmentStateManager\*FGTCLB\AcademicBase\Core12\Environment\*FGTCLB\EnvironmentStateManager\Core12\*FGTCLB\AcademicBase\Core13\Environment\*FGTCLB\EnvironmentStateManager\Core13\*For example
FGTCLB\AcademicBase\Environment\StateManagerInterfacebecomesFGTCLB\EnvironmentStateManager\StateManagerInterface, andFGTCLB\AcademicBase\Core13\Environment\StateManagerbecomesFGTCLB\EnvironmentStateManager\Core13\StateManager.
Note
In fgtclb/academic-base 2.4.0 the value object
State was already removed and re-registered as a
deprecated class alias onto
FGTCLBEnvironment (via the
typo3/class-alias-loader composer plugin), because it is carried by type
through a public PSR-14 event. The remaining classes stay as deprecated real
classes until 3.0.0.
API differences to be aware of
While migrating, note the following intentional differences from the former
fgtclb/academic-base implementation:
Stategained two optional constructor arguments,Build Context $backendandUser Id $workspace, used by the backend environment builder. Existing frontend call sites are unaffected.Id - The version-agnostic
Stateno longer declares theInterface Typoaccessors. They moved to the TYPO3 core version specificScript Frontend Controller Core12Extended/State Interface Core13Extended, because theState Interface Typois deprecated in TYPO3 v13 and removed in TYPO3 v14. AScript Frontend Controller Languageaccessor pair was added instead.Service