PHPStan is an amazing tool, all the power of a strictly typed language while still being PHP where anyone can write what they want. The biggest issues is letting PHPStan know about other plugins and even WP Core. When you are coding locally its not too bad, you can point PHPStan at your plugins dir and it can read directly. However when this is in a CI pipeline, you cant really just keep installing a full plugin. This is where stubs come in.

PHPStubs is the a few central sites to hold them, but its lacking a lot of tools site i work on use. Over the years ive made some custom ones, but its always fiddly to keep them upto date and add new ones. They all need a little setup to get right, what dirs to ommit, manual checks etc.

So what if i used 2 agents to do the setup and verify them.. Hmmmmmmmm

This allows me to enter a repo url, a wordpress plugin url or a local path. If you enter WP or GH, it will ask you which versions you can want to create stubs from

I can also choose to publish these on Packagist also, so they are easily added with a simple composer require command.

Stubs

Below are a list of all the stubs that exist currently and the versions you can use

restrict-media-file-access

  • v1.4.2composer require --dev pinkcrab/restrict-media-file-access_stubs:v1.4.2
  • v1.4.1composer require --dev pinkcrab/restrict-media-file-access_stubs:v1.4.1
  • v1.4.0composer require --dev pinkcrab/restrict-media-file-access_stubs:v1.4.0
  • v1.3.0composer require --dev pinkcrab/restrict-media-file-access_stubs:v1.3.0
  • v1.2.0composer require --dev pinkcrab/restrict-media-file-access_stubs:v1.2.0
  • v1.1.0composer require --dev pinkcrab/restrict-media-file-access_stubs:v1.1.0

rtmedia

  • 4.7.12composer require --dev pinkcrab/rtmedia_stubs:4.7.12
  • 4.7.11composer require --dev pinkcrab/rtmedia_stubs:4.7.11
  • 4.7.10composer require --dev pinkcrab/rtmedia_stubs:4.7.10
  • 4.7.9composer require --dev pinkcrab/rtmedia_stubs:4.7.9
  • 4.7.8composer require --dev pinkcrab/rtmedia_stubs:4.7.8
  • 4.7.7composer require --dev pinkcrab/rtmedia_stubs:4.7.7
  • 4.7.6composer require --dev pinkcrab/rtmedia_stubs:4.7.6
  • 4.7.5composer require --dev pinkcrab/rtmedia_stubs:4.7.5
  • 4.7.4composer require --dev pinkcrab/rtmedia_stubs:4.7.4

Leave a Reply

Your email address will not be published. Required fields are marked *