phpro / grumphp

A PHP code-quality tool
MIT License
4.15k stars 431 forks source link

Clarity in supported versions of PHPCPD (and maybe other tools) #913

Closed hussainweb closed 3 years ago

hussainweb commented 3 years ago
Q A
Version 1.3.2
Bug? no
New feature? no
Question? yes
Documentation? yes (maybe)

There is no clarity on the supported versions of PHPCPD in the documentation. For example, my constraints allow me to only use PHPCPD 4 but that throws an error related to a CLI option.

Now, I understand if you don't want to support older versions of the tools but I couldn't find clarity related to this in the documentation. In this circumstance, I am not sure if it is worth creating a PR to fix that or research in that direction.

Additional quick question: Is there some kind of guideline on using Phive along with GrumPHP? I know it is supported but I was wondering if there was a workflow guide as well. I am trying to determine how to document that workflow in my package. More context here at https://github.com/axelerant/drupal-quality-checker/issues/12.

veewee commented 3 years ago

Hello @hussainweb,

Currently there is no overview of which versions are supported. Since we support a massive amount of tools, that list would be very hard to maintain, since it evolves in time.

We always aim for the latest tool configuration. That is however, a community best effort.

On your question about Phive:

There is no installation guide from our side. However, it shouldn't be more than pointing to the correct tools directory, in which you install the phive dependencies. That way, GrumPHP will pick up the executable that should be used to perform the task.

grumphp:
    paths:
      - 'tools' 
hussainweb commented 3 years ago

Thanks @veewee. I am just trying to understand this better. If this path is configured, then grumphp will first check for the tool executable in tools (assuming that's the path) and then vendor/bin (composer bin) and then system path. Did I understand the order correctly?

veewee commented 3 years ago

Yes, the configured paths get prepended to your $PATH.