google-ads-php icon indicating copy to clipboard operation
google-ads-php copied to clipboard

composer.lock is always read from home directory instead tests

Open chiragvels opened this issue 9 months ago • 3 comments

Hi,

I am in the process of updating my code to use the latest version of the library. To ensure that the current working environment continues to function properly, I created another directory and installed the latest version of the library with Composer in this new directory. For this, I made multiple composer.json files in different directories so that my structure looks like this:

/my-project
    /application
    /vendor
    composer.json
    /tests
        /vendor
        composer.json

And autoload the vendor using:

require_once '/tests/vendor/autoload.php'

Now, When I tried to build an instance of the GoogleAdsClient object, I received the following error:

The grpc extension installed by Composer has a greater version than that installed by PECL. Upgrade the PECL extension to avoid issues caused by the version difference. For linux, run "sudo pecl install grpc".

To ensure I have the correct version of grpc, I checked with composer show and found that the version installed by PECL is greater than the one installed by Composer.

When I closely checked the Dependencies.php under Util, I noticed it was checking the composer.lock from the /my-project (the home directory of the project).

How can I tell the library to read files from /tests instead of the home directory /my-project?

Thanks,

chiragvels avatar May 24 '24 07:05 chiragvels