Deprecate StringUtil::getHash()
authorTim Düsterhus <duesterhus@woltlab.com>
Thu, 10 Jun 2021 13:50:34 +0000 (15:50 +0200)
committerTim Düsterhus <duesterhus@woltlab.com>
Thu, 10 Jun 2021 13:59:51 +0000 (15:59 +0200)
This method was a simple alias to `\sha1()` and also defined as such. Users of
this method relied on the output of this method not changing, making it
entirely useless, because there is no benefit to use this method over `sha1()`
directly.

Deprecate `StringUtil::getHash()` and update the users to use `sha1()`.

wcfsetup/install/files/lib/data/I18nDatabaseObjectList.class.php
wcfsetup/install/files/lib/form/SearchForm.class.php
wcfsetup/install/files/lib/system/html/output/node/HtmlOutputNodePre.class.php
wcfsetup/install/files/lib/system/worker/ImportWorker.class.php
wcfsetup/install/files/lib/util/StringUtil.class.php

index 4ae5d98aeb1c4bfac6d79298a54f35f61a309d95..dc0f42807fcab87dfa8a19ff5d66f7a2a288f758 100644 (file)
@@ -3,7 +3,6 @@
 namespace wcf\data;
 
 use wcf\system\WCF;
-use wcf\util\StringUtil;
 
 /**
  * Abstract class for a list of database objects with better sorting of i18n-based columns.
@@ -52,7 +51,7 @@ abstract class I18nDatabaseObjectList extends DatabaseObjectList
                     throw new \DomainException("Array keys and values of '" . $this->className . "::\$i18nFields' must start with a small letter and consist of letters and number only.");
                 }
 
-                $matchTable = 'i18n_' . StringUtil::getHash($key);
+                $matchTable = 'i18n_' . \sha1($key);
 
                 $this->sqlSelects .= (!empty($this->sqlSelects) ? ', ' : '') . "COALESCE(" . $matchTable . ".languageItemValue, " . $this->getDatabaseTableAlias() . "." . $key . ") AS " . $value;
                 $this->sqlJoins .= "
index 5593637f8fe64494c86c4f3f73fbd5d0dcd5a7ae..fd7bd23185fbce39dd46c83b24059f0d6715bc10 100644 (file)
@@ -289,7 +289,7 @@ class SearchForm extends AbstractCaptchaForm
         }
 
         // build search hash
-        $this->searchHash = StringUtil::getHash(\serialize([
+        $this->searchHash = \sha1(\serialize([
             $this->query,
             $this->selectedObjectTypes,
             !$this->subjectOnly,
index a57471a296a2182cc28d561ff4b70d0f18de6551..b2018b9a016a0622a1a9080637d529279958cf94 100644 (file)
@@ -278,7 +278,7 @@ class HtmlOutputNodePre extends AbstractHtmlOutputNode
         $i = -1;
         // find an unused codeID
         do {
-            $codeID = $prefix . \mb_substr(StringUtil::getHash($code), 0, 6) . (++$i ? '_' . $i : '');
+            $codeID = $prefix . \mb_substr(\sha1($code), 0, 6) . (++$i ? '_' . $i : '');
         } while (isset(self::$codeIDs[$codeID]));
 
         // mark codeID as used
index 9139b0b26919134950455ab53aca1a7d4f917715..dd91d17a55f13f22c6881279fecefe75f106ce70 100644 (file)
@@ -7,7 +7,6 @@ use wcf\system\exception\SystemException;
 use wcf\system\exporter\IExporter;
 use wcf\system\importer\ImportHandler;
 use wcf\system\WCF;
-use wcf\util\StringUtil;
 
 /**
  * Worker implementation for data import.
@@ -76,7 +75,7 @@ class ImportWorker extends AbstractWorker
         ImportHandler::getInstance()->setUserMergeMode($this->importData['userMergeMode']);
 
         ImportHandler::getInstance()->setImportHash(\substr(
-            StringUtil::getHash(
+            \sha1(
                 $this->importData['dbHost'] . $this->importData['dbName'] . $this->importData['dbPrefix']
             ),
             0,
index 7acc8a7ee28fb6b96212d27d641e57a309bf1351..8682217790a4e02e08e60517fec54a8c48709d74 100644 (file)
@@ -37,10 +37,7 @@ final class StringUtil
     const MINUS = "\u{2212}";
 
     /**
-     * Alias to php sha1() function.
-     *
-     * @param string $value
-     * @return  string
+     * @deprecated 5.5 - Use \sha1() directly.
      */
     public static function getHash($value)
     {