[TASK] Deprecate CommandLineController and Cleaner Command 49/51249/3
authorBenni Mack <benni@typo3.org>
Tue, 10 Jan 2017 20:42:33 +0000 (21:42 +0100)
committerOliver Hader <oliver.hader@typo3.org>
Tue, 10 Jan 2017 23:58:04 +0000 (00:58 +0100)
The base classes of the very very old CommandLineController
and the Cleaner Command are deprecated. They are not in
use anymore.

Extbase Command Controllers or Symfony Commands should
be used instead.

Resolves: #79265
Releases: master
Change-Id: I85a975038ce54b5a82069ec57679da9815e6e010
Reviewed-on: https://review.typo3.org/51249
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Christian Kuhn <lolli@schwarzbu.ch>
Tested-by: Christian Kuhn <lolli@schwarzbu.ch>
Reviewed-by: Oliver Hader <oliver.hader@typo3.org>
Tested-by: Oliver Hader <oliver.hader@typo3.org>
typo3/sysext/core/Classes/Controller/CommandLineController.php
typo3/sysext/core/Documentation/Changelog/master/Deprecation-79265-CommandLineControllerAndCleanerCommand.rst [new file with mode: 0644]
typo3/sysext/lowlevel/Classes/CleanerCommand.php

index 2240f8f..c5955c2 100644 (file)
@@ -14,8 +14,11 @@ namespace TYPO3\CMS\Core\Controller;
  * The TYPO3 project - inspiring people to share!
  */
 
+use TYPO3\CMS\Core\Utility\GeneralUtility;
+
 /**
  * TYPO3 cli script basis
+ * @deprecated since TYPO3 v8, will be removed in TYPO3 v9, use a custom Command instead
  */
 class CommandLineController
 {
@@ -58,9 +61,11 @@ class CommandLineController
      * Make sure child classes also call this!
      *
      * @return void
+     * @deprecated the CommandLineController is deprecated since TYPO3 v8 and will be removed in TYPO3 v9, use a separate CLI Command instead
      */
     public function __construct()
     {
+        GeneralUtility::logDeprecatedFunction();
         // Loads the cli_args array with command line arguments
         $this->cli_setArguments($_SERVER['argv']);
     }
diff --git a/typo3/sysext/core/Documentation/Changelog/master/Deprecation-79265-CommandLineControllerAndCleanerCommand.rst b/typo3/sysext/core/Documentation/Changelog/master/Deprecation-79265-CommandLineControllerAndCleanerCommand.rst
new file mode 100644 (file)
index 0000000..780dbd1
--- /dev/null
@@ -0,0 +1,36 @@
+.. include:: ../../Includes.txt
+
+===============================================================
+Deprecation: #79265 - CommandLineController and Cleaner Command
+===============================================================
+
+See :issue:`79265`
+
+Description
+===========
+
+The following PHP classes for using CLI commands without Extbase Command Controllers or native Symfony Commands which
+were introduced in TYPO3 v4 have been marked as deprecated:
+
+* `TYPO3\CMS\Core\Controller\CommandLineController`
+* `TYPO3\CMS\Lowlevel\CleanerCommand`
+
+
+Impact
+======
+
+Instantiating any of the PHP classes above will trigger a deprecation notice.
+
+
+Affected Installations
+======================
+
+TYPO3 instances with extensions that use the old command line controllers or cleaner commands.
+
+
+Migration
+=========
+
+Use native Symfony Commands or Extbase Command Controller logic instead for creating CLI-based functionality.
+
+.. index:: CLI
\ No newline at end of file
index 1bec59f..bcf976e 100644 (file)
@@ -24,6 +24,8 @@ use TYPO3\CMS\Core\Utility\MathUtility;
 
 /**
  * Core functions for cleaning and analysing
+ *
+ * @deprecated since TYPO3 v8, will be removed in TYPO3 v9
  */
 class CleanerCommand extends \TYPO3\CMS\Core\Controller\CommandLineController
 {
@@ -106,9 +108,11 @@ This will show you missing files in the TYPO3 system and only report back if err
      *
      * @param array $argv Command line arguments
      * @return string
+     * @deprecated the Cleaner Command is deprecated since TYPO3 v8 and will be removed in TYPO3 v9, use a separate CLI Command instead
      */
     public function cli_main($argv)
     {
+        GeneralUtility::logDeprecatedFunction();
         $this->cli_setArguments($argv);
 
         // Force user to admin state and set workspace to "Live":