Problem/Motivation

Fix PHPCS and PHPStan errors.
See

Proposed resolution

Fix phpcs and phpctsn errors according to gitlab-ci

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

HitchShock created an issue. See original summary.

sourabhjain made their first commit to this issue’s fork.

sourabhjain’s picture

Assigned: Unassigned » sourabhjain

sourabhjain’s picture

Assigned: sourabhjain » Unassigned
Status: Active » Needs work

Below are the PHPSTAN errors

PHP Warning:  Undefined global variable $base_path in /var/www/html/drupal10/web/core/includes/common.inc on line 161
Warning: Undefined global variable $base_path in /var/www/html/drupal10/web/core/includes/common.inc on line 161
 5/5 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%

 ------ ---------------------------------------------------------------------------------------------------------------------------------------- 
  Line   src/PDFToImageBatchHelper.php                                                                                                           
 ------ ---------------------------------------------------------------------------------------------------------------------------------------- 
  117    Parameter $pdf of method Drupal\pdf_to_imagefield\PDFToImageBatchHelper::generateProcessPage() has invalid type Spatie\PdfToImage\Pdf.  
  133    Parameter $pdf of method Drupal\pdf_to_imagefield\PDFToImageBatchHelper::generatePage() has invalid type Spatie\PdfToImage\Pdf.         
 ------ ---------------------------------------------------------------------------------------------------------------------------------------- 

 ------ --------------------------------------------------------------------- 
  Line   src/PDFToImageManager.php                                            
 ------ --------------------------------------------------------------------- 
  169    Instantiated class Spatie\PdfToImage\Pdf not found.                  
         💡 Learn more at https://phpstan.org/user-guide/discovering-symbols  
 ------ --------------------------------------------------------------------- 

 ------ ----------------------------------------------------------------------------------- 
  Line   src/Plugin/Field/FieldWidget/PDFToImageWidget.php                                  
 ------ ----------------------------------------------------------------------------------- 
  64     Unsafe usage of new static().                                                      
         💡 See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static  
 ------ ----------------------------------------------------------------------------------- 

I just investigated on the above and it showing imagick extension is missing as per https://github.com/spatie/pdf-to-image/issues/145

hitchshock’s picture

Hi @sourabhjain
Seems like php extension doesn't exist only on your local env, that's why you have such PHPStan errors.
According to
https://git.drupalcode.org/project/pdf_to_imagefield/-/jobs/947631
https://git.drupalcode.org/issue/pdf_to_imagefield-3425194/-/jobs/976016
there is only one PHPStan error

 ------ ------------------------------------------------------------------------------ 
  Line   src/Plugin/Field/FieldWidget/PDFToImageWidget.php                             
 ------ ------------------------------------------------------------------------------ 
  64     Unsafe usage of new static().                                                 
         💡 See:                                                                       
            https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static  
 ------ ------------------------------------------------------------------------------ 

nilesh.addweb made their first commit to this issue’s fork.

nilesh.addweb’s picture

Hi,
I have fixed remaining phpcs and phstan error.

beofre phpstan-->

5/5 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%

 ------ ---------------------------------------------------------------------------------------------------------------------------------------- 
  Line   src/PDFToImageBatchHelper.php                                                                                                           
 ------ ---------------------------------------------------------------------------------------------------------------------------------------- 
  117    Parameter $pdf of method Drupal\pdf_to_imagefield\PDFToImageBatchHelper::generateProcessPage() has invalid type Spatie\PdfToImage\Pdf.  
  133    Parameter $pdf of method Drupal\pdf_to_imagefield\PDFToImageBatchHelper::generatePage() has invalid type Spatie\PdfToImage\Pdf.         
  146    Fetching deprecated class constant EXISTS_RENAME of interface Drupal\Core\File\FileSystemInterface:                                     
         in drupal:10.3.0 and is removed from drupal:12.0.0. Use                                                                                 
         \Drupal\Core\File\FileExists::Rename instead.                                                                                           
  175    Fetching deprecated class constant EXISTS_ERROR of interface Drupal\Core\File\FileSystemInterface:                                      
         in drupal:10.3.0 and is removed from drupal:12.0.0. Use                                                                                 
          \Drupal\Core\File\FileExists::Error instead.                                                                                           
 ------ ---------------------------------------------------------------------------------------------------------------------------------------- 

 ------ --------------------------------------------------------------------- 
  Line   src/PDFToImageManager.php                                            
 ------ --------------------------------------------------------------------- 
  169    Instantiated class Spatie\PdfToImage\Pdf not found.                  
         💡 Learn more at https://phpstan.org/user-guide/discovering-symbols  
 ------ --------------------------------------------------------------------- 

 ------ ----------------------------------------------------------------------------------- 
  Line   src/Plugin/Field/FieldWidget/PDFToImageWidget.php                                  
 ------ ----------------------------------------------------------------------------------- 
  64     Unsafe usage of new static().                                                      
         💡 See: https://phpstan.org/blog/solving-phpstan-error-unsafe-usage-of-new-static  
 ------ ----------------------------------------------------------------------------------- 

                                                                                                                        
 [ERROR] Found 6 errors

After fixing some phpstan and added spatie as per #5 -->

5/5 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%


                                                                                                                        
 [OK] No errors    
nilesh.addweb’s picture

Now all pipeline job is green, Need to check composer.json which I have been updated for build pass and need to check after composer-lint.

Before --> https://git.drupalcode.org/issue/pdf_to_imagefield-3425194/-/pipelines/2...
After --> https://git.drupalcode.org/issue/pdf_to_imagefield-3425194/-/pipelines/2...

hitchshock’s picture

Status: Needs work » Needs review

hitchshock’s picture

Status: Needs review » Fixed

Thanks all for the help.
I reverted some changes to keep the module compatible with other packages and older versions of Drupal.
For example:
- I reverted "spatie/pdf-to-image": "*" cuz our module doesn't support version >=3.0
- We still need to use FileSystemInterface for older Drupal versions

A fix will be provided in the next release

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.