Skip to content

Commit 6bed192

Browse files
committed
PHPCS: Address feedbacks for package command
1 parent 243d1eb commit 6bed192

2 files changed

Lines changed: 72 additions & 71 deletions

File tree

src/Package_Command.php

Lines changed: 67 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
<?php
22

3-
use \Composer\Composer;
4-
use \Composer\Config;
5-
use \Composer\Config\JsonConfigSource;
6-
use \Composer\DependencyResolver\Pool;
7-
use \Composer\EventDispatcher\Event;
8-
use \Composer\Factory;
9-
use \Composer\IO\NullIO;
10-
use \Composer\Installer;
11-
use \Composer\Json\JsonFile;
12-
use \Composer\Package;
13-
use \Composer\Package\BasePackage;
14-
use \Composer\Package\PackageInterface;
15-
use \Composer\Package\Version\VersionParser;
16-
use \Composer\Package\Version\VersionSelector;
17-
use \Composer\Repository;
18-
use \Composer\Repository\CompositeRepository;
19-
use \Composer\Repository\ComposerRepository;
20-
use \Composer\Repository\RepositoryManager;
21-
use \Composer\Util\Filesystem;
3+
use Composer\Composer;
4+
use Composer\Config;
5+
use Composer\Config\JsonConfigSource;
6+
use Composer\DependencyResolver\Pool;
7+
use Composer\EventDispatcher\Event;
8+
use Composer\Factory;
9+
use Composer\IO\NullIO;
10+
use Composer\Installer;
11+
use Composer\Json\JsonFile;
12+
use Composer\Package;
13+
use Composer\Package\BasePackage;
14+
use Composer\Package\PackageInterface;
15+
use Composer\Package\Version\VersionParser;
16+
use Composer\Package\Version\VersionSelector;
17+
use Composer\Repository;
18+
use Composer\Repository\CompositeRepository;
19+
use Composer\Repository\ComposerRepository;
20+
use Composer\Repository\RepositoryManager;
21+
use Composer\Util\Filesystem;
2222
use WP_CLI\ComposerIO;
2323
use WP_CLI\Extractor;
2424
use WP_CLI\Utils;
@@ -82,6 +82,16 @@ class Package_Command extends WP_CLI_Command {
8282

8383
private $pool = false;
8484

85+
private $author_data = [
86+
'name' => 'WP-CLI',
87+
'email' => '[email protected]',
88+
];
89+
90+
private $composer_type_package = [
91+
'type' => 'composer',
92+
'url' => self::PACKAGE_INDEX_URL,
93+
];
94+
8595
/**
8696
* Browses WP-CLI packages available for installation.
8797
*
@@ -310,38 +320,39 @@ public function install( $args, $assoc_args ) {
310320
$json_manipulator->addLink( 'require', $package_name, $version, false /*sortPackages*/, true /*caseInsensitive*/ );
311321
$json_manipulator->addConfigSetting( 'secure-http', true );
312322

323+
$package_args = [];
313324
if ( $git_package ) {
314325
WP_CLI::log( sprintf( 'Registering %s as a VCS repository...', $git_package ) );
326+
$package_args = [
327+
'type' => 'vcs',
328+
'url' => $git_package,
329+
];
315330
$json_manipulator->addSubNode(
316331
'repositories',
317332
$package_name,
318-
[
319-
'type' => 'vcs',
320-
'url' => $git_package,
321-
],
333+
$package_args,
322334
true /*caseInsensitive*/
323335
);
324336
} elseif ( $dir_package ) {
325337
WP_CLI::log( sprintf( 'Registering %s as a path repository...', $dir_package ) );
338+
$package_args = [
339+
'type' => 'path',
340+
'url' => $dir_package,
341+
];
326342
$json_manipulator->addSubNode(
327343
'repositories',
328344
$package_name,
329-
[
330-
'type' => 'path',
331-
'url' => $dir_package,
332-
],
345+
$package_args,
333346
true /*caseInsensitive*/
334347
);
335348
}
336349
// If the composer file does not contain the current package index repository, refresh the repository definition.
337350
if ( empty( $composer_backup_decoded['repositories']['wp-cli']['url'] ) || self::PACKAGE_INDEX_URL !== $composer_backup_decoded['repositories']['wp-cli']['url'] ) {
338351
WP_CLI::log( 'Updating package index repository url...' );
352+
$package_args = $this->composer_type_package;
339353
$json_manipulator->addRepository(
340354
'wp-cli',
341-
[
342-
'type' => 'composer',
343-
'url' => self::PACKAGE_INDEX_URL,
344-
]
355+
$package_args
345356
);
346357
}
347358

@@ -598,8 +609,8 @@ private function get_composer() {
598609
// Best to just pretend we're installing a package from ~/.wp-cli or similar
599610
chdir( pathinfo( $composer_path, PATHINFO_DIRNAME ) );
600611

601-
// Prevent DateTime error/warning when no timezone set
602-
// phpcs:ignore WordPress.WP.TimezoneChange.timezone_change_date_default_timezone_set, WordPress.PHP.NoSilencedErrors.Discouraged -- The package is loaded before WordPress load, For environments that don't have set time in php.ini.
612+
// Note: The package is loaded before WordPress load, For environments that don't have set time in php.ini.
613+
// phpcs:ignore WordPress.WP.TimezoneChange.timezone_change_date_default_timezone_set,WordPress.PHP.NoSilencedErrors.Discouraged
603614
date_default_timezone_set( @date_default_timezone_get() );
604615

605616
$composer = Factory::create( new NullIO(), $composer_path );
@@ -641,15 +652,14 @@ private function package_index() {
641652
static $package_index;
642653

643654
if ( ! $package_index ) {
644-
$config = new Config();
645-
$config->merge(
646-
[
647-
'config' => [
648-
'secure-http' => true,
649-
'home' => dirname( $this->get_composer_json_path() ),
650-
],
651-
]
652-
);
655+
$config_args = [
656+
'config' => [
657+
'secure-http' => true,
658+
'home' => dirname( $this->get_composer_json_path() ),
659+
],
660+
];
661+
$config = new Config();
662+
$config->merge( $config_args );
653663
$config->setConfigSource( new JsonConfigSource( $this->get_composer_json() ) );
654664

655665
try {
@@ -728,8 +738,8 @@ private function show_packages( $context, $packages, $assoc_args ) {
728738

729739
$list = array_map(
730740
function( $package ) {
731-
$package['version'] = implode( ', ', $package['version'] );
732-
return $package;
741+
$package['version'] = implode( ', ', $package['version'] );
742+
return $package;
733743
},
734744
$list
735745
);
@@ -933,23 +943,15 @@ private function create_default_composer_json( $composer_path ) {
933943

934944
$json_file = new JsonFile( $composer_path );
935945

936-
$author = (object) [
937-
'name' => 'WP-CLI',
938-
'email' => '[email protected]',
939-
];
940-
941946
$repositories = (object) [
942-
'wp-cli' => (object) [
943-
'type' => 'composer',
944-
'url' => self::PACKAGE_INDEX_URL,
945-
],
947+
'wp-cli' => (object) $this->composer_type_package,
946948
];
947949

948950
$options = [
949951
'name' => 'wp-cli/wp-cli',
950952
'description' => 'Installed community packages used by WP-CLI',
951953
'version' => self::get_wp_cli_version_composer(),
952-
'authors' => [ $author ],
954+
'authors' => [ (object) $this->author_data ],
953955
'homepage' => self::PACKAGE_INDEX_URL,
954956
'require' => new stdClass(),
955957
'require-dev' => new stdClass(),
@@ -1211,26 +1213,23 @@ private function register_revert_shutdown_function( $json_path, $composer_backup
12111213

12121214
register_shutdown_function(
12131215
function () use (
1214-
$json_path,
1215-
$composer_backup,
1216-
&$revert,
1217-
$revert_msg,
1218-
$revert_fail_msg,
1219-
$memory_msg,
1220-
$memory_string,
1221-
$error_array
1216+
$json_path,
1217+
$composer_backup,
1218+
&$revert,
1219+
$revert_msg,
1220+
$revert_fail_msg,
1221+
$memory_msg,
1222+
$memory_string,
1223+
$error_array
12221224
) {
12231225
if ( $revert ) {
1224-
if ( false === file_put_contents(
1225-
$json_path,
1226-
$composer_backup
1227-
) ) {
1228-
fwrite( STDERR, $revert_fail_msg );
1226+
if ( false === file_put_contents( $json_path, $composer_backup ) ) {
1227+
fwrite( STDERR, $revert_fail_msg );
12291228
} else {
12301229
fwrite( STDERR, $revert_msg );
12311230
}
12321231
}
1233-
$error_array = error_get_last();
1232+
$error_array = error_get_last();
12341233
if ( false !== strpos( $error_array['message'], $memory_string ) ) {
12351234
fwrite( STDERR, $memory_msg );
12361235
}

tests/test-composer-json.php

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
<?php
22

33
use WP_CLI\Utils;
4+
use WP_CLI\ExitException;
5+
use WP_CLI\Loggers\Execution;
46

57
require_once VENDOR_DIR . '/wp-cli/wp-cli/php/utils.php';
68
require_once VENDOR_DIR . '/wp-cli/wp-cli/php/class-wp-cli.php';
@@ -21,7 +23,7 @@ public function setUp() {
2123
$class_wp_cli_logger->setAccessible( true );
2224
$this->prev_logger = $class_wp_cli_logger->getValue();
2325

24-
$this->logger = new \WP_CLI\Loggers\Execution();
26+
$this->logger = new Execution();
2527
WP_CLI::set_logger( $this->logger );
2628

2729
// Enable exit exception.
@@ -58,7 +60,7 @@ public function test_create_default_composer_json() {
5860
$exception = null;
5961
try {
6062
$actual = $create_default_composer_json->invoke( $package, '' );
61-
} catch ( \WP_CLI\ExitException $ex ) {
63+
} catch ( ExitException $ex ) {
6264
$exception = $ex;
6365
}
6466
$this->assertTrue( null !== $exception );
@@ -142,7 +144,7 @@ public function test_get_composer_json_path_backup_decoded() {
142144
$exception = null;
143145
try {
144146
$actual = $get_composer_json_path_backup_decoded->invoke( $package );
145-
} catch ( \WP_CLI\ExitException $ex ) {
147+
} catch ( ExitException $ex ) {
146148
$exception = $ex;
147149
}
148150
$this->assertTrue( null !== $exception );

0 commit comments

Comments
 (0)