Skip to content

Commit cf888f8

Browse files
staabmondrejmirtes
authored andcommitted
Use sha256 which is cpu optimized in PHP 8.4+
1 parent 48e7d3e commit cf888f8

File tree

10 files changed

+22
-22
lines changed

10 files changed

+22
-22
lines changed

src/Analyser/ResultCache/ResultCacheManager.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,13 +38,13 @@
3838
use function explode;
3939
use function get_loaded_extensions;
4040
use function getenv;
41+
use function hash_file;
4142
use function implode;
4243
use function is_array;
4344
use function is_dir;
4445
use function is_file;
4546
use function ksort;
4647
use function microtime;
47-
use function sha1_file;
4848
use function sort;
4949
use function sprintf;
5050
use function str_starts_with;
@@ -1055,7 +1055,7 @@ private function getFileHash(string $path): string
10551055
return $this->fileHashes[$path];
10561056
}
10571057

1058-
$hash = sha1_file($path);
1058+
$hash = hash_file('sha256', $path);
10591059
if ($hash === false) {
10601060
throw new CouldNotReadFileException($path);
10611061
}

src/Analyser/RuleErrorTransformer.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
use SebastianBergmann\Diff\Differ;
2828
use SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder;
2929
use function get_class;
30-
use function sha1;
30+
use function hash;
3131
use function str_contains;
3232
use function str_repeat;
3333

@@ -114,7 +114,7 @@ public function transform(
114114
$oldCode = FileReader::read($fixingFile);
115115

116116
$this->parser->parse($oldCode);
117-
$hash = sha1($oldCode);
117+
$hash = hash('sha256', $oldCode);
118118
$oldTokens = $this->parser->getTokens();
119119

120120
$indentTraverser = new NodeTraverser();

src/Cache/FileCacheStorage.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@
1717
use function closedir;
1818
use function dirname;
1919
use function error_get_last;
20+
use function hash;
2021
use function is_dir;
2122
use function is_file;
2223
use function opendir;
2324
use function readdir;
2425
use function rename;
2526
use function rmdir;
26-
use function sha1;
2727
use function sprintf;
2828
use function str_starts_with;
2929
use function strlen;
@@ -107,7 +107,7 @@ public function save(string $key, string $variableKey, $data): void
107107
*/
108108
private function getFilePaths(string $key): array
109109
{
110-
$keyHash = sha1($key);
110+
$keyHash = hash('sha256', $key);
111111
$firstDirectory = sprintf('%s/%s', $this->directory, substr($keyHash, 0, 2));
112112
$secondDirectory = sprintf('%s/%s', $firstDirectory, substr($keyHash, 2, 2));
113113
$filePath = sprintf('%s/%s.php', $secondDirectory, $keyHash);

src/Command/AnalyseApplication.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717
use Symfony\Component\Console\Input\InputInterface;
1818
use function array_merge;
1919
use function count;
20+
use function hash_file;
2021
use function is_file;
2122
use function memory_get_peak_usage;
2223
use function microtime;
23-
use function sha1_file;
2424
use function sprintf;
2525

2626
/**
@@ -151,7 +151,7 @@ public function analyse(
151151
continue;
152152
}
153153

154-
$newHash = sha1_file($file);
154+
$newHash = hash_file('sha256', $file);
155155
if ($newHash === $hash) {
156156
continue;
157157
}

src/DependencyInjection/Configurator.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@
1515
use function count;
1616
use function error_reporting;
1717
use function explode;
18+
use function hash_file;
1819
use function implode;
1920
use function in_array;
2021
use function is_dir;
2122
use function is_file;
2223
use function ksort;
2324
use function restore_error_handler;
2425
use function set_error_handler;
25-
use function sha1_file;
2626
use function sprintf;
2727
use function str_ends_with;
2828
use function substr;
@@ -94,7 +94,7 @@ public function loadContainer(): string
9494
array_keys($this->dynamicParameters),
9595
$this->configs,
9696
PHP_VERSION_ID - PHP_RELEASE_VERSION,
97-
is_file($attributesPhp) ? sha1_file($attributesPhp) : 'attributes-missing',
97+
is_file($attributesPhp) ? hash_file('sha256', $attributesPhp) : 'attributes-missing',
9898
NeonAdapter::CACHE_KEY, $this->getAllConfigFilesHashes(),
9999
],
100100
);
@@ -224,7 +224,7 @@ private function getAllConfigFilesHashes(): array
224224
{
225225
$hashes = [];
226226
foreach ($this->allConfigFiles as $file) {
227-
$hash = sha1_file($file);
227+
$hash = hash_file('sha256', $file);
228228

229229
if ($hash === false) {
230230
throw new CouldNotReadFileException($file);

src/File/FileMonitor.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@
1010
use function array_keys;
1111
use function array_merge;
1212
use function array_unique;
13+
use function hash_file;
1314
use function is_dir;
1415
use function is_file;
15-
use function sha1_file;
1616

1717
#[AutowiredService]
1818
final class FileMonitor
@@ -107,7 +107,7 @@ public function getChanges(): FileMonitorResult
107107

108108
private function getFileHash(string $filePath): string
109109
{
110-
$hash = sha1_file($filePath);
110+
$hash = hash_file('sha256', $filePath);
111111

112112
if ($hash === false) {
113113
throw new CouldNotReadFileException($filePath);

src/Fixable/Patcher.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@
1515
use SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder;
1616
use function array_map;
1717
use function count;
18+
use function hash;
1819
use function implode;
19-
use function sha1;
2020
use function str_starts_with;
2121
use function substr;
2222
use const PHP_VERSION_ID;
@@ -42,7 +42,7 @@ public function __construct()
4242
public function applyDiffs(string $fileName, array $diffs): string
4343
{
4444
$fileContents = FileReader::read($fileName);
45-
$fileHash = sha1($fileContents);
45+
$fileHash = hash('sha256', $fileContents);
4646
$diffHunks = [];
4747
foreach ($diffs as $diff) {
4848
if ($diff->originalHash !== $fileHash) {

src/Reflection/BetterReflection/SourceLocator/OptimizedDirectorySourceLocatorFactory.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
use PHPStan\Reflection\ConstantNameHelper;
1111
use function array_key_exists;
1212
use function count;
13+
use function hash_file;
1314
use function in_array;
1415
use function ltrim;
1516
use function php_strip_whitespace;
1617
use function preg_match_all;
1718
use function preg_replace;
18-
use function sha1_file;
1919
use function sprintf;
2020
use function strtolower;
2121

@@ -44,7 +44,7 @@ public function createByDirectory(string $directory): OptimizedDirectorySourceLo
4444
$files = $this->fileFinder->findFiles([$directory])->getFiles();
4545
$fileHashes = [];
4646
foreach ($files as $file) {
47-
$hash = sha1_file($file);
47+
$hash = hash_file('sha256', $file);
4848
if ($hash === false) {
4949
continue;
5050
}
@@ -108,7 +108,7 @@ public function createByFiles(array $files, string $uniqueCacheIdentifier): Opti
108108
{
109109
$fileHashes = [];
110110
foreach ($files as $file) {
111-
$hash = sha1_file($file);
111+
$hash = hash_file('sha256', $file);
112112
if ($hash === false) {
113113
continue;
114114
}

src/Testing/PHPStanTestCase.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,9 @@
3737
use PHPUnit\Framework\TestCase;
3838
use function array_merge;
3939
use function count;
40+
use function hash;
4041
use function implode;
4142
use function rtrim;
42-
use function sha1;
4343
use function sprintf;
4444
use function sys_get_temp_dir;
4545
use const DIRECTORY_SEPARATOR;
@@ -59,7 +59,7 @@ public static function getContainer(): Container
5959
foreach (static::getAdditionalConfigFiles() as $configFile) {
6060
$additionalConfigFiles[] = $configFile;
6161
}
62-
$cacheKey = sha1(implode("\n", $additionalConfigFiles));
62+
$cacheKey = hash('sha256', implode("\n", $additionalConfigFiles));
6363

6464
if (!isset(self::$containers[$cacheKey])) {
6565
$tmpDir = sys_get_temp_dir() . '/phpstan-tests';

src/Testing/TestCaseSourceLocatorFactory.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
use PHPStan\Reflection\BetterReflection\SourceLocator\SkipPolyfillSourceLocator;
2222
use ReflectionClass;
2323
use function dirname;
24+
use function hash;
2425
use function is_file;
2526
use function serialize;
26-
use function sha1;
2727
use const PHP_VERSION_ID;
2828

2929
final class TestCaseSourceLocatorFactory
@@ -55,7 +55,7 @@ public function create(): SourceLocator
5555
{
5656
$classLoaders = ClassLoader::getRegisteredLoaders();
5757
$classLoaderReflection = new ReflectionClass(ClassLoader::class);
58-
$cacheKey = sha1(serialize([
58+
$cacheKey = hash('sha256', serialize([
5959
$this->phpVersion->getVersionId(),
6060
$this->fileExtensions,
6161
$this->excludePaths,

0 commit comments

Comments
 (0)