Skip to content

Commit 006aa5d

Browse files
Merge pull request #10 from derrabus/bugfix/composer-deprecation
Don't call deprecated InstalledVersions::getRawData()
2 parents 587bfdd + d1e8255 commit 006aa5d

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

src/ProxyManager/Generator/Util/IdentifierSuffixer.php

+6-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
use Composer\InstalledVersions;
88

99
use function class_exists;
10+
use function method_exists;
1011
use function preg_match;
1112
use function serialize;
1213
use function sha1;
@@ -53,6 +54,10 @@ private static function loadBaseHashSalt(): string
5354
return self::class;
5455
}
5556

56-
return sha1(serialize(InstalledVersions::getRawData()));
57+
return sha1(serialize(
58+
method_exists(InstalledVersions::class, 'getAllRawData')
59+
? InstalledVersions::getAllRawData() // Composer >= 2.0.14
60+
: InstalledVersions::getRawData()
61+
));
5762
}
5863
}

tests/ProxyManagerTest/Generator/Util/IdentifierSuffixerTest.php

+8-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
use PHPUnit\Framework\TestCase;
99
use ProxyManager\Generator\Util\IdentifierSuffixer;
1010

11+
use function method_exists;
1112
use function serialize;
1213
use function sha1;
1314
use function strlen;
@@ -38,8 +39,14 @@ public function testGeneratesSuffixedIdentifiers(string $name): void
3839
*/
3940
public function testGeneratedSuffixDependsOnPackageInstalledVersions(string $name): void
4041
{
42+
$hashedData = sha1(serialize(
43+
method_exists(InstalledVersions::class, 'getAllRawData')
44+
? InstalledVersions::getAllRawData()
45+
: InstalledVersions::getRawData()
46+
));
47+
4148
self::assertStringEndsWith(
42-
substr(sha1($name . sha1(serialize(InstalledVersions::getRawData()))), 0, 5),
49+
substr(sha1($name . $hashedData), 0, 5),
4350
IdentifierSuffixer::getIdentifier($name)
4451
);
4552
}

0 commit comments

Comments
 (0)