OSDN Git Service

always use bundled autoload in Phar file
authorscribu <mail@scribu.net>
Fri, 16 Aug 2013 15:11:30 +0000 (18:11 +0300)
committerscribu <mail@scribu.net>
Fri, 16 Aug 2013 15:13:20 +0000 (18:13 +0300)
see #658

composer.json
php/utils.php

index 8e1c9f7..91247c4 100644 (file)
@@ -18,7 +18,8 @@
                "psy/psysh": "Enhanced `wp shell` functionality"
        },
        "autoload": {
-               "psr-0": { "WP_CLI": "php" }
+               "psr-0": { "WP_CLI": "php" },
+               "files": [ "php/Spyc.php" ]
        },
        "require-dev": {
                "symfony/finder": "~2.3"
index 9c94504..7db1d12 100644 (file)
@@ -8,6 +8,11 @@ use \WP_CLI\Dispatcher;
 use \WP_CLI\Iterators\Transform;
 
 function load_dependencies() {
+       if ( 0 === strpos( WP_CLI_ROOT, 'phar:' ) ) {
+               require WP_CLI_ROOT . '/vendor/autoload.php';
+               return;
+       }
+
        $vendor_paths = array(
                WP_CLI_ROOT . '/../../../vendor',  // part of a larger project / installed via Composer (preferred)
                WP_CLI_ROOT . '/vendor',           // top-level project / installed as Git clone
@@ -27,8 +32,6 @@ function load_dependencies() {
                fputs( STDERR, "Internal error: Can't find Composer autoloader.\n" );
                exit(3);
        }
-
-       include WP_CLI_ROOT . '/php/Spyc.php';
 }
 
 function load_command( $name ) {