@@ -25,24 +25,24 @@ final class Contrib_List_Command {
2525 */
2626 public function __invoke ( $ _ , $ assoc_args ) {
2727
28- $ contributors = array ();
28+ $ contributors = array ();
2929 $ pull_request_count = 0 ;
3030
3131 // Get the contributors to the current open large project milestones
32- foreach ( array ( 'wp-cli/wp-cli-bundle ' , 'wp-cli/wp-cli ' , 'wp-cli/handbook ' , 'wp-cli/wp-cli.github.com ' ) as $ repo ) {
32+ foreach ( array ( 'wp-cli/wp-cli-bundle ' , 'wp-cli/wp-cli ' , 'wp-cli/handbook ' , 'wp-cli/wp-cli.github.com ' ) as $ repo ) {
3333 $ milestones = GitHub::get_project_milestones ( $ repo );
3434 // Cheap way to get the latest milestone
3535 $ milestone = array_shift ( $ milestones );
3636 if ( ! $ milestone ) {
3737 continue ;
3838 }
3939 WP_CLI ::log ( 'Current open ' . $ repo . ' milestone: ' . $ milestone ->title );
40- $ pull_requests = GitHub::get_project_milestone_pull_requests ( $ repo , $ milestone ->number );
40+ $ pull_requests = GitHub::get_project_milestone_pull_requests ( $ repo , $ milestone ->number );
4141 $ repo_contributors = GitHub::parse_contributors_from_pull_requests ( $ pull_requests );
4242 WP_CLI ::log ( ' - Contributors: ' . count ( $ repo_contributors ) );
4343 WP_CLI ::log ( ' - Pull requests: ' . count ( $ pull_requests ) );
4444 $ pull_request_count += count ( $ pull_requests );
45- $ contributors = array_merge ( $ contributors , $ repo_contributors );
45+ $ contributors = array_merge ( $ contributors , $ repo_contributors );
4646 }
4747
4848 // Identify all command dependencies and their contributors
@@ -53,7 +53,7 @@ public function __invoke( $_, $assoc_args ) {
5353 $ milestones = GitHub::get_project_milestones ( 'wp-cli/wp-cli ' , array ( 'state ' => 'closed ' ) );
5454 // Cheap way to get the latest closed milestone
5555 $ milestone = array_shift ( $ milestones );
56- $ tag = is_object ( $ milestone ) ? "v {$ milestone ->title }" : 'master ' ;
56+ $ tag = is_object ( $ milestone ) ? "v {$ milestone ->title }" : 'master ' ;
5757
5858 // TODO: Only needed for switch from v1 to v2.
5959 if ( 'wp-cli/wp-cli ' === $ bundle ) {
@@ -69,48 +69,58 @@ public function __invoke( $_, $assoc_args ) {
6969 $ composer_json = json_decode ( $ response ->body , true );
7070
7171 // TODO: Only need for initial v2.
72- $ composer_json ['packages ' ][] = array ( 'name ' => 'wp-cli/i18n-command ' , 'version ' => 'v2 ' );
73- usort ( $ composer_json ['packages ' ], function ( $ a , $ b ) {
74- return $ a ['name ' ] < $ b ['name ' ] ? -1 : 1 ;
75- } );
72+ $ composer_json ['packages ' ][] = array (
73+ 'name ' => 'wp-cli/i18n-command ' ,
74+ 'version ' => 'v2 ' ,
75+ );
76+ usort (
77+ $ composer_json ['packages ' ],
78+ function ( $ a , $ b ) {
79+ return $ a ['name ' ] < $ b ['name ' ] ? -1 : 1 ;
80+ }
81+ );
7682
77- foreach ( $ composer_json ['packages ' ] as $ package ) {
78- $ package_name = $ package ['name ' ];
83+ foreach ( $ composer_json ['packages ' ] as $ package ) {
84+ $ package_name = $ package ['name ' ];
7985 $ version_constraint = str_replace ( 'v ' , '' , $ package ['version ' ] );
8086 if ( ! preg_match ( '#^wp-cli/.+-command$# ' , $ package_name )
81- && ! in_array ( $ package_name , array (
82- 'wp-cli/wp-cli-tests ' ,
83- 'wp-cli/regenerate-readme ' ,
84- 'wp-cli/autoload-splitter ' ,
85- 'wp-cli/wp-config-transformer ' ,
86- 'wp-cli/php-cli-tools ' ,
87- 'wp-cli/spyc ' ,
88- ), true ) ) {
87+ && ! in_array (
88+ $ package_name ,
89+ array (
90+ 'wp-cli/wp-cli-tests ' ,
91+ 'wp-cli/regenerate-readme ' ,
92+ 'wp-cli/autoload-splitter ' ,
93+ 'wp-cli/wp-config-transformer ' ,
94+ 'wp-cli/php-cli-tools ' ,
95+ 'wp-cli/spyc ' ,
96+ ),
97+ true
98+ ) ) {
8999 continue ;
90100 }
91101 // Closed milestones denote a tagged release
92- $ milestones = GitHub::get_project_milestones ( $ package_name , array ( 'state ' => 'closed ' ) );
93- $ milestone_ids = array ();
102+ $ milestones = GitHub::get_project_milestones ( $ package_name , array ( 'state ' => 'closed ' ) );
103+ $ milestone_ids = array ();
94104 $ milestone_titles = array ();
95- foreach ( $ milestones as $ milestone ) {
105+ foreach ( $ milestones as $ milestone ) {
96106 if ( ! version_compare ( $ milestone ->title , $ version_constraint , '> ' ) ) {
97107 continue ;
98108 }
99- $ milestone_ids [] = $ milestone ->number ;
109+ $ milestone_ids [] = $ milestone ->number ;
100110 $ milestone_titles [] = $ milestone ->title ;
101111 }
102112 // No shipped releases for this milestone.
103113 if ( empty ( $ milestone_ids ) ) {
104114 continue ;
105115 }
106116 WP_CLI ::log ( 'Closed ' . $ package_name . ' milestone(s): ' . implode ( ', ' , $ milestone_titles ) );
107- foreach ( $ milestone_ids as $ milestone_id ) {
108- $ pull_requests = GitHub::get_project_milestone_pull_requests ( $ package_name , $ milestone_id );
117+ foreach ( $ milestone_ids as $ milestone_id ) {
118+ $ pull_requests = GitHub::get_project_milestone_pull_requests ( $ package_name , $ milestone_id );
109119 $ repo_contributors = GitHub::parse_contributors_from_pull_requests ( $ pull_requests );
110120 WP_CLI ::log ( ' - Contributors: ' . count ( $ repo_contributors ) );
111121 WP_CLI ::log ( ' - Pull requests: ' . count ( $ pull_requests ) );
112122 $ pull_request_count += count ( $ pull_requests );
113- $ contributors = array_merge ( $ contributors , $ repo_contributors );
123+ $ contributors = array_merge ( $ contributors , $ repo_contributors );
114124 }
115125 }
116126
@@ -121,7 +131,7 @@ public function __invoke( $_, $assoc_args ) {
121131 asort ( $ contributors , SORT_NATURAL | SORT_FLAG_CASE );
122132 if ( in_array ( $ assoc_args ['format ' ], array ( 'markdown ' , 'html ' ) ) ) {
123133 $ contrib_list = '' ;
124- foreach ( $ contributors as $ url => $ login ) {
134+ foreach ( $ contributors as $ url => $ login ) {
125135 if ( 'markdown ' === $ assoc_args ['format ' ] ) {
126136 $ contrib_list .= '[@ ' . $ login . ']( ' . $ url . '), ' ;
127137 } elseif ( 'html ' === $ assoc_args ['format ' ] ) {
0 commit comments