paypay / paypayopa-sdk-php

With PayPay's Payment SDK, you can build a custom Payment checkout process to suit your unique business needs and branding guidelines
http://developer.paypay.ne.jp/
Apache License 2.0
16 stars 11 forks source link

Optimized autoload of classes fails in composer version 2 #92

Closed sunaoka closed 3 years ago

sunaoka commented 3 years ago

Describe the bug

Optimized autoload of classes fails in composer version 2

To Reproduce

$ composer --version
Composer version 2.0.8 2020-12-03 17:20:38

$ composer dump-autoload --optimize
Generating optimized autoload files
Class PayPay\OpenPaymentAPI\Controller\ClientControllerException located in ./vendor/paypayopa/php-sdk/src/core/Controller.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Controller located in ./vendor/paypayopa/php-sdk/src/core/Controller.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Models\ModelException located in ./vendor/paypayopa/php-sdk/src/core/Model.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Models\Model located in ./vendor/paypayopa/php-sdk/src/core/Model.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Code located in ./vendor/paypayopa/php-sdk/src/Controllers/Code.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Refund located in ./vendor/paypayopa/php-sdk/src/Controllers/Refund.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Wallet located in ./vendor/paypayopa/php-sdk/src/Controllers/Wallet.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\User located in ./vendor/paypayopa/php-sdk/src/Controllers/User.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Payment located in ./vendor/paypayopa/php-sdk/src/Controllers/Payment.php does not comply with psr-4 autoloading standard. Skipping.

Additional context

This is because there are multiple classes defined in a single file.

shreyanshp commented 3 years ago

@sunaoka Apologies for the inconvenience let us check the above and its feasibility

In any case it would be amazing if you could create a PR for possible fix as well as all PRs are welcome!

shreyanshp commented 3 years ago

@sunaoka this is fixed and released in 0.9.1

sunaoka commented 3 years ago

Thank you very much. I have tested it, and the situation has not changed.

$ composer -V
Composer version 2.0.8 2020-12-03 17:20:38
$ composer require paypayopa/php-sdk
Using version ^0.9.1 for paypayopa/php-sdk
./composer.json has been created
Running composer update paypayopa/php-sdk
Loading composer repositories with package information
Updating dependencies
Lock file operations: 9 installs, 0 updates, 0 removals
  - Locking atoum/atoum (4.0.0)
  - Locking firebase/php-jwt (v5.2.0)
  - Locking guzzlehttp/guzzle (7.2.0)
  - Locking guzzlehttp/promises (1.4.0)
  - Locking guzzlehttp/psr7 (1.7.0)
  - Locking paypayopa/php-sdk (0.9.1)
  - Locking psr/http-client (1.0.1)
  - Locking psr/http-message (1.0.1)
  - Locking ralouphie/getallheaders (3.0.3)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 9 installs, 0 updates, 0 removals
  - Downloading paypayopa/php-sdk (0.9.1)
  - Installing guzzlehttp/promises (1.4.0): Extracting archive
  - Installing ralouphie/getallheaders (3.0.3): Extracting archive
  - Installing psr/http-message (1.0.1): Extracting archive
  - Installing guzzlehttp/psr7 (1.7.0): Extracting archive
  - Installing psr/http-client (1.0.1): Extracting archive
  - Installing guzzlehttp/guzzle (7.2.0): Extracting archive
  - Installing firebase/php-jwt (v5.2.0): Extracting archive
  - Installing atoum/atoum (4.0.0): Extracting archive
  - Installing paypayopa/php-sdk (0.9.1): Extracting archive
3 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
1 package you are using is looking for funding.
Use the `composer fund` command to find out more!
$ composer dump-autoload --optimize
Generating optimized autoload files
Class PayPay\OpenPaymentAPI\Controller\ClientControllerException located in ./vendor/paypayopa/php-sdk/src/core/Controller.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Controller located in ./vendor/paypayopa/php-sdk/src/core/Controller.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Models\ModelException located in ./vendor/paypayopa/php-sdk/src/core/Model.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Models\Model located in ./vendor/paypayopa/php-sdk/src/core/Model.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Code located in ./vendor/paypayopa/php-sdk/src/Controllers/Code.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Refund located in ./vendor/paypayopa/php-sdk/src/Controllers/Refund.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Wallet located in ./vendor/paypayopa/php-sdk/src/Controllers/Wallet.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\User located in ./vendor/paypayopa/php-sdk/src/Controllers/User.php does not comply with psr-4 autoloading standard. Skipping.
Class PayPay\OpenPaymentAPI\Controller\Payment located in ./vendor/paypayopa/php-sdk/src/Controllers/Payment.php does not comply with psr-4 autoloading standard. Skipping.
Generated optimized autoload files containing 419 classes