Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main' into feat/deprecrate-met…
Browse files Browse the repository at this point in the history
…adata
  • Loading branch information
theofidry committed Nov 9, 2023
2 parents 367d7c5 + 39403a7 commit f5ec267
Show file tree
Hide file tree
Showing 8 changed files with 38 additions and 18 deletions.
Binary file modified fixtures/info/req-checker-old-req.phar
Binary file not shown.
2 changes: 1 addition & 1 deletion src/Configuration/Configuration.php
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ final class Configuration
'finder',
];
private const PHP_SCOPER_CONFIG = 'scoper.inc.php';
private const DEFAULT_SIGNING_ALGORITHM = SigningAlgorithm::SHA1;
private const DEFAULT_SIGNING_ALGORITHM = SigningAlgorithm::SHA512;
private const DEFAULT_ALIAS_PREFIX = 'box-auto-generated-alias-';

private const DEFAULT_IGNORED_ANNOTATIONS = [
Expand Down
2 changes: 1 addition & 1 deletion src/RequirementChecker/Requirement.php
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ public static function fromArray(array $value): self
return new self(
RequirementType::from($value['type']),
$value['condition'],
$value['source'],
$value['source'] ?? null,
$value['message'],
$value['helpMessage'],
);
Expand Down
18 changes: 9 additions & 9 deletions tests/Configuration/ConfigurationSigningTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@
*/
class ConfigurationSigningTest extends ConfigurationTestCase
{
public function test_the_default_signing_is_sha1(): void
public function test_the_default_signing_is_sha512(): void
{
self::assertSame(SigningAlgorithm::SHA1, $this->config->getSigningAlgorithm());
self::assertSame(SigningAlgorithm::SHA512, $this->config->getSigningAlgorithm());

self::assertNull($this->config->getPrivateKeyPath());
self::assertNull($this->config->getPrivateKeyPassphrase());
Expand All @@ -47,7 +47,7 @@ public function test_the_default_signing_is_sha1(): void
public function test_a_recommendation_is_given_if_the_configured_algorithm_is_the_default_value(): void
{
$this->setConfig([
'algorithm' => 'SHA1',
'algorithm' => 'SHA512',
]);

self::assertSame(
Expand Down Expand Up @@ -78,7 +78,7 @@ public function test_the_signing_algorithm_can_be_configured(string $algorithm,

self::assertSame($expected, $this->config->getSigningAlgorithm());

if (false === in_array($algorithm, ['SHA1', false], true)) {
if (false === in_array($algorithm, ['SHA512', false], true)) {
self::assertSame([], $this->config->getRecommendations());
}
self::assertSame([], $this->config->getWarnings());
Expand Down Expand Up @@ -126,7 +126,7 @@ public function test_it_generates_a_warning_when_a_key_pass_is_provided_but_the_
self::assertNull($this->config->getPrivateKeyPassphrase());
self::assertFalse($this->config->promptForPrivateKey());

if (false === in_array($algorithm, ['SHA1', false], true)) {
if (false === in_array($algorithm, ['SHA512', false], true)) {
self::assertSame([], $this->config->getRecommendations());
}
self::assertSame(
Expand Down Expand Up @@ -157,7 +157,7 @@ public function test_it_generates_a_warning_when_a_key_pass_is_provided_but_the_
);
}

if (in_array($algorithm, ['SHA1', false], true)) {
if (in_array($algorithm, ['SHA512', false], true)) {
array_unshift(
$expectedRecommendation,
'The "algorithm" setting can be omitted since is set to its default value',
Expand All @@ -176,7 +176,7 @@ public function test_it_generates_a_warning_when_a_key_pass_is_provided_but_the_
self::assertNull($this->config->getPrivateKeyPassphrase());
self::assertFalse($this->config->promptForPrivateKey());

if (false === in_array($algorithm, ['SHA1', false], true)) {
if (false === in_array($algorithm, ['SHA512', false], true)) {
self::assertSame([], $this->config->getRecommendations());
}
self::assertSame(
Expand All @@ -199,7 +199,7 @@ public function test_it_generates_a_warning_when_a_key_path_is_provided_but_the_

self::assertNull($this->config->getPrivateKeyPath());

if (false === in_array($algorithm, ['SHA1', false], true)) {
if (false === in_array($algorithm, ['SHA512', false], true)) {
self::assertSame([], $this->config->getRecommendations());
}
self::assertSame(
Expand All @@ -218,7 +218,7 @@ public function test_it_generates_a_warning_when_a_key_path_is_provided_but_the_
'The setting "key" has been set but is unnecessary since the signing algorithm is not "OPENSSL".',
];

if (in_array($algorithm, ['SHA1', false], true)) {
if (in_array($algorithm, ['SHA512', false], true)) {
array_unshift(
$expectedRecommendation,
'The "algorithm" setting can be omitted since is set to its default value',
Expand Down
4 changes: 2 additions & 2 deletions tests/Configuration/ConfigurationTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -2991,7 +2991,7 @@ public function test_it_can_be_created_with_only_default_values(): void
self::assertNull($this->config->getPrivateKeyPath());
self::assertSame([], $this->config->getReplacements());
self::assertSame('#!/usr/bin/env php', $this->config->getShebang());
self::assertSame(SigningAlgorithm::SHA1, $this->config->getSigningAlgorithm());
self::assertSame(SigningAlgorithm::SHA512, $this->config->getSigningAlgorithm());

$version = self::$version;

Expand Down Expand Up @@ -3101,7 +3101,7 @@ public function test_it_can_be_exported(): void
-promptForPrivateKey: false
-processedReplacements: []
-shebang: "#!/usr/bin/env php"
-signingAlgorithm: "SHA1"
-signingAlgorithm: "SHA512"
-stubBannerContents: "My banner"
-stubBannerPath: null
-stubPath: null
Expand Down
4 changes: 2 additions & 2 deletions tests/Console/Command/CompileTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -479,7 +479,7 @@ public function test_it_can_build_a_phar_without_any_configuration(): void

$phar = new Phar('index.phar');

self::assertSame('SHA-1', $phar->getSignature()['hash_type']);
self::assertSame('SHA-512', $phar->getSignature()['hash_type']);

// Check PHAR content
$actualStub = self::normalizeStub($phar->getStub());
Expand Down Expand Up @@ -1230,7 +1230,7 @@ public function test_it_can_build_a_phar_file_in_debug_mode(): void
-promptForPrivateKey: false
-processedReplacements: []
-shebang: "#!/usr/bin/env php"
-signingAlgorithm: "SHA1"
-signingAlgorithm: "SHA512"
-stubBannerContents: ""
-stubBannerPath: null
-stubPath: null
Expand Down
6 changes: 3 additions & 3 deletions tests/Console/Command/InfoTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -677,18 +677,18 @@ public static function inputProvider(): iterable
Files Compression: None
Signature: SHA-1
Signature Hash: 92123D3800E1F6AD1CD1D4099B8D16BC51097A5C
Signature Hash: EEA3F86AA1B61484EE961055F43AA61805071CB1
Metadata: None
Timestamp: 1697988440 (2023-10-22T15:27:20+00:00)
Timestamp: 1699390728 (2023-11-07T20:58:48+00:00)
RequirementChecker:
Required:
- PHP >=5.3 (root)
- ext-phar (root)
Contents: 47 files (148.01KB)
Contents: 47 files (147.97KB)
// Use the --list|-l option to list the content of the PHAR.

Expand Down
20 changes: 20 additions & 0 deletions tests/RequirementChecker/RequirementTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,26 @@ public function test_it_can_be_created_for_a_conflicting_extension_constraint_fo
self::assertItCanBeCreatedFromItsArrayForm($requirement, $actual);
}

public function test_it_can_be_created_for_a_legacy_requirement(): void
{
$expected = new Requirement(
RequirementType::EXTENSION_CONFLICT,
'mbstring',
null,
'The package "box/test" conflicts with the extension "mbstring".',
'The package "box/test" conflicts with the extension "mbstring". You need to disable it in order to run this application.',
);

$actual = Requirement::fromArray([
'type' => 'extension-conflict',
'condition' => 'mbstring',
'message' => 'The package "box/test" conflicts with the extension "mbstring".',
'helpMessage' => 'The package "box/test" conflicts with the extension "mbstring". You need to disable it in order to run this application.',
]);

self::assertEquals($expected, $actual);
}

private static function assertItCanBeCreatedFromItsArrayForm(Requirement $expected, array $arrayForm): void
{
$actual = Requirement::fromArray($arrayForm);
Expand Down

0 comments on commit f5ec267

Please sign in to comment.