Deprecation: #100247 - Various interconnected methods in EXT:scheduler
See forge#100247
Description
The scheduler system extension, responsible for executing long-running, timed or recurring tasks, has been included since TYPO3 v4.3, but never received an overhaul of its code base.
Back then, the main \TYPO3\
class and the
\TYPO3\
class were the main API classes, all logic being included,
whereas Abstract
is the main class that all custom tasks within
extensions derive from.
However, in the past 15 years TYPO3's code base has undergone a lot of API
design changes related to separation of concerns. In order to achieve this in
the scheduler extension, almost all access to the actual database access around
task retrieving and scheduling has been moved into its own
\TYPO3\
class.
For this reason, the following methods within the original API classes are now either marked as deprecated or internal - not part of TYPO3's public API anymore - as they have now been moved into the new repository class.
Scheduler->add
Task () Scheduler->log
- marked as internal() Scheduler->remove
Task () Scheduler->save
Task () Scheduler->fetch
Task () Scheduler->fetch
Task Record () Scheduler->fetch
Task With Condition () Scheduler->is
Valid Task Object () Scheduler->log
- marked as internal() Abstract
Task->is Execution Running () Abstract
Task->mark Execution () Abstract
Task->unmark Execution () Abstract
Task->unmark All Executions () Abstract
- marked as internalTask->save () Abstract
Task->remove () Abstract
- marked as internalTask->set Scheduler () Abstract
- marked as internalTask->unset Scheduler () Abstract
- marked as internalTask->register Single Execution () Abstract
- marked as internalTask->get Execution () Abstract
- marked as internalTask->set Execution () Abstract
- marked as internalTask->get Next Due Execution () Abstract
- marked as internalTask->are Multiple Executions Allowed () Abstract
- marked as internalTask->stop ()
Impact
Calling any of the deprecated methods will trigger a PHP warning. Using the internal methods should be avoided and is not covered by the TYPO3 backwards compatibility promise.
Affected installations
TYPO3 installations with extensions that include custom scheduler tasks accessing these methods. The Extension Scanner might be helpful to detect these usages.
Migration
Use the Scheduler
methods instead.