App-CpanfileSlipstop

 view release on metacpan or  search on metacpan

README.md  view on Meta::CPAN

        specify cpanfile and cpanfile.snapshot location
    --remove
        delete all version specifications from cpanfile
    -h, --help
        show this help

# DESCRIPTION

`cpanfile-slipstop` is a support tool for more definite and safety version bundling on [cpanfile](https://metacpan.org/pod/cpanfile) and [Carton](https://metacpan.org/pod/Carton).

The `carton install` command checks only to satisfy version specifications in cpanfile and `local/`. Even if some module versions are updated in cpanfile.snapshot, the saved versions are not referred until you need to install it. This sometimes cause...

# SEE ALSO

[Carton](https://metacpan.org/pod/Carton), [Module::CPANfile](https://metacpan.org/pod/Module::CPANfile), [CPAN::Meta::Requirements](https://metacpan.org/pod/CPAN::Meta::Requirements)

# LICENSE

Copyright (C) pokutuna.

This library is free software; you can redistribute it and/or modify

lib/App/CpanfileSlipstop.pm  view on Meta::CPAN

      specify cpanfile and cpanfile.snapshot location
  --remove
      delete all version specifications from cpanfile
  -h, --help
      show this help

=head1 DESCRIPTION

C<cpanfile-slipstop> is a support tool for more definite and safety version bundling on L<cpanfile> and L<Carton>.

The C<carton install> command checks only to satisfy version specifications in cpanfile and C<local/>. Even if some module versions are updated in cpanfile.snapshot, the saved versions are not referred until you need to install it. This sometimes cau...

=head1 SEE ALSO

L<Carton>, L<Module::CPANfile>, L<CPAN::Meta::Requirements>

=head1 LICENSE

Copyright (C) pokutuna.

This library is free software; you can redistribute it and/or modify

t/01_resolver.t  view on Meta::CPAN

    );

    $resolver->read_cpanfile_requirements;
    is $resolver->get_version_range('DateTime'), undef;
    is $resolver->get_version_range('JSON::XS'), 3.00;
    is $resolver->get_version_range('Data::Printer'), '== 0.38';
    is $resolver->get_version_range('Test::More'), '> 0.9, < 1.0, != 0.98';

    $resolver->merge_snapshot_versions('add_minimum', 0);
    is $resolver->get_version_range('DateTime'), '1.50';             # inserted installed version as minimum
    is $resolver->get_version_range('JSON::XS'), '3.04';             # updated installed version as minimum
    is $resolver->get_version_range('Data::Printer'), '== 0.38';     # not changed
    is $resolver->get_version_range('Test::More'), '>= 0.99, < 1.0'; # udpate and merged minimum version
};

done_testing;



( run in 0.262 second using v1.01-cache-2.11-cpan-05444aca049 )