On Thu, 8 Sep 2016, at 05:21 PM, Lester Caine wrote:
> Another couple of hours wasted, but I understand where things are now,
> and basically the simple fact is that composer global mode is nothing of
> the sort. The PHP_CodeSniffer composer install does not work and I
> understand NOW why the Smarty one also failed. I was expecting the files
> to be available to the nginx server but they were hidden away in my home
> directory. I still have to work out just how to reset things to move the
> code to /usr/shared/phpx/composer to parallel the PEAR version.

PHP_CodeSniffer should not be run by the web server, it's a command-line
development tool, it should be run by the developer, or as part of a
build (e.g. Travis, Ant, etcetera)

Composer allows you to separate the dependencies, for example, in your
case; Smarty is a production and development dependency, and PHPCS is a
development dependency only, your `composer.json` should have  something
similar to the following:

```
{
    "require": {
        "smarty/smarty": "~3.1"
    },
    "require-dev": {
        "squizlabs/php_codesniffer": "^2.7"
    }
}
```

That way, anytime someone runs `composer install` from your project
directory (or wherever the composer.json dependency is contained), it
will create a `vendor` directory with your dependencies, if you haven't
used the `--no-dev` flag when running `composer install`, you will have
PHPCS ready and waiting in `vendor/bin`, others will have the same
toolset you're using, so discrepancies between environments will have
been reduced.

--
Daniel Morris
dan...@honestempire.com

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to