[TASK] Deprecate methods in ModuleTemplate 50/57750/4
authorWouter Wolters <typo3@wouterwolters.nl>
Tue, 31 Jul 2018 19:25:20 +0000 (21:25 +0200)
committerTymoteusz Motylewski <t.motylewski@gmail.com>
Thu, 2 Aug 2018 11:07:18 +0000 (13:07 +0200)
Two methods are marked as deprecated in the class ModuleTemplate.

Resolves: #85701
Releases: master
Change-Id: If17a0e40b4bcb31c1292d4fd97af35967427c621
Reviewed-on: https://review.typo3.org/57750
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
Tested-by: Tymoteusz Motylewski <t.motylewski@gmail.com>
typo3/sysext/backend/Classes/Template/ModuleTemplate.php
typo3/sysext/core/Documentation/Changelog/master/Deprecation-85701-DeprecateMethodsInModuleTemplate.rst [new file with mode: 0644]
typo3/sysext/install/Configuration/ExtensionScanner/Php/MethodCallMatcher.php

index 701a946..3c14910 100644 (file)
@@ -487,10 +487,12 @@ class ModuleTemplate
      *
      * @internal
      * @return self
+     * @deprecated since TYPO3 v9.4, will be removed in TYPO3 v10, use PageRenderer directly.
+     * @see \TYPO3\CMS\Core\Page\PageRenderer::addJsFile
      */
     public function loadJavascriptLib($lib): self
     {
-        // @todo: maybe we can remove this one as well
+        trigger_error('The method `TYPO3\CMS\Backend\Template\ModuleTemplate::loadJavascriptLib()` has been deprecated and should not be used any longer, this method will be removed in TYPO3 v10.0', E_USER_DEPRECATED);
         $this->pageRenderer->addJsFile($lib);
         return $this;
     }
@@ -617,9 +619,11 @@ class ModuleTemplate
      *
      * @return string HTML image tag (if applicable)
      * @internal
+     * @deprecated since TYPO3 v9.4, will be removed in TYPO3 v10
      */
     public function icons($type)
     {
+        trigger_error('The method `TYPO3\CMS\Backend\Template\ModuleTemplate::icons()` has been deprecated and should not be used any longer, this method will be removed in TYPO3 v10.0', E_USER_DEPRECATED);
         $icon = '';
         switch ($type) {
             case self::STATUS_ICON_ERROR:
diff --git a/typo3/sysext/core/Documentation/Changelog/master/Deprecation-85701-DeprecateMethodsInModuleTemplate.rst b/typo3/sysext/core/Documentation/Changelog/master/Deprecation-85701-DeprecateMethodsInModuleTemplate.rst
new file mode 100644 (file)
index 0000000..347096b
--- /dev/null
@@ -0,0 +1,34 @@
+.. include:: ../../Includes.txt
+
+=========================================================
+Deprecation: #85701 - Deprecate methods in ModuleTemplate
+=========================================================
+
+See :issue:`85701`
+
+Description
+===========
+
+The methods :php:`icons()` and :php:`loadJavascriptLib()` in the class :php:`ModuleTemplate`
+have been marked as deprecated and will be removed in  TYPO3 v10.
+
+
+Impact
+======
+
+Calling one of the mentioned methods will trigger a deprecation warning.
+
+
+Affected Installations
+======================
+
+Third party code which accesses the methods.
+
+
+Migration
+=========
+
+There is no migration for the method :php:`icons()` available.
+The method :php:`loadJavascriptLib()` can be replaced by using the :php:`PageRenderer` directly.
+
+.. index:: Backend, FullyScanned
\ No newline at end of file
index b11b21b..85b5916 100644 (file)
@@ -2508,4 +2508,18 @@ return [
             'Deprecation-84584-AdminPanelViewIsAdminModuleEnabledAndExt_makeToolbarDeprecated.rst',
         ],
     ],
+    'TYPO3\CMS\Backend\Template\ModuleTemplate->loadJavascriptLib' => [
+        'numberOfMandatoryArguments' => 1,
+        'maximumNumberOfArguments' => 1,
+        'restFiles' => [
+            'Deprecation-85701-DeprecateMethodsInModuleTemplate.rst',
+        ],
+    ],
+    'TYPO3\CMS\Backend\Template\ModuleTemplate->icons' => [
+        'numberOfMandatoryArguments' => 1,
+        'maximumNumberOfArguments' => 1,
+        'restFiles' => [
+            'Deprecation-85701-DeprecateMethodsInModuleTemplate.rst',
+        ],
+    ],
 ];