cpm icon indicating copy to clipboard operation
cpm copied to clipboard

--with-test ignored when --no-test also specified

Open theory opened this issue 4 years ago • 2 comments

I would expect that --with-test would cause cpm to install test/requires modules even with --no-test specified, but alas it does not. Seems like --no-test doesn't just mean "don't run tests" but also "don't install test modules". For example, this will not install Sqitch's test modules:

cpm install --no-test --with-test App::Sqitch

Why would I want to do this? So that I can then have all the dependencies to run tests. Currently working around this issue by downloading the cpanfile, where this does work as expected:

cpm install --no-test --with-test --cpanfile cpanfile

theory avatar Oct 17 '21 21:10 theory

As described in help message, --with-* options specify types/phases of dependencies in * cpanfile * to be installed. So this is an expected behavior.

❯ cpm --help
...
        --with-requires,   --without-requires   (default: with)
        --with-recommends, --without-recommends (default: without)
        --with-suggests,   --without-suggests   (default: without)
        --with-configure,  --without-configure  (default: without)
        --with-build,      --without-build      (default: with)
        --with-test,       --without-test       (default: with)
        --with-runtime,    --without-runtime    (default: with)
        --with-develop,    --without-develop    (default: without)
          specify types/phases of dependencies in cpanfile to be installed

skaji avatar Oct 17 '21 22:10 skaji

Ah, right, of course. Means I can't do this pattern without a cpanfile tho. Which is fine, just need to better tame my cpanfile.

theory avatar Oct 17 '21 22:10 theory