Skip to content

Commit d554d5e

Browse files
Copilotswissspidy
andcommitted
Change default package version from dev-main to @stable
Co-authored-by: swissspidy <841956+swissspidy@users.noreply.github.com>
1 parent 6a8aa7d commit d554d5e

1 file changed

Lines changed: 12 additions & 7 deletions

File tree

src/Package_Command.php

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@
4141
* | wp-cli/server-command | Daniel Bachhuber | dev-main | available | 2.x-dev |
4242
* +-----------------------+------------------+----------+-----------+----------------+
4343
*
44-
* # Install the latest development version of the package.
44+
* # Install the latest stable version of the package.
4545
* $ wp package install wp-cli/server-command
46-
* Installing package wp-cli/server-command (dev-main)
46+
* Installing package wp-cli/server-command (^2.0)
4747
* Updating /home/person/.wp-cli/packages/composer.json to require the package...
4848
* Using Composer to install the package...
4949
* ---
@@ -201,10 +201,10 @@ public function browse( $_, $assoc_args ) {
201201
*
202202
* ## EXAMPLES
203203
*
204-
* # Install a package hosted at a git URL.
204+
* # Install the latest stable version of a package.
205205
* $ wp package install runcommand/hook
206206
*
207-
* # Install the latest stable version.
207+
* # Install the latest stable version (explicitly specified).
208208
* $ wp package install wp-cli/server-command:@stable
209209
*
210210
* # Install a package hosted at a GitLab.com URL.
@@ -224,12 +224,17 @@ public function install( $args, $assoc_args ) {
224224
$version = '';
225225
if ( $this->is_git_repository( $package_name ) ) {
226226
if ( '' === $version ) {
227-
$version = "dev-{$this->get_github_default_branch( $package_name, $insecure )}";
227+
$version = '@stable';
228228
}
229229
$git_package = $package_name;
230230
$matches = [];
231231
if ( preg_match( '#([^:\/]+\/[^\/]+)\.git#', $package_name, $matches ) ) {
232-
$package_name = $this->check_git_package_name( $matches[1], $package_name, $version, $insecure );
232+
$extracted_package_name = $matches[1];
233+
if ( '@stable' === $version ) {
234+
$tag = $this->get_github_latest_release_tag( $extracted_package_name, $insecure );
235+
$version = $this->guess_version_constraint_from_tag( $tag );
236+
}
237+
$package_name = $this->check_git_package_name( $extracted_package_name, $package_name, $version, $insecure );
233238
} else {
234239
WP_CLI::error( "Couldn't parse package name from expected path '<name>/<package>'." );
235240
}
@@ -301,7 +306,7 @@ public function install( $args, $assoc_args ) {
301306
$git_package = $package;
302307

303308
if ( '' === $version ) {
304-
$version = "dev-{$this->get_github_default_branch( $package_name, $insecure )}";
309+
$version = '@stable';
305310
}
306311

307312
if ( '@stable' === $version ) {

0 commit comments

Comments
 (0)