Skip to content

Main module installs follow snapshot, but thier dependencies don't. #265

@mvsjes2

Description

@mvsjes2

App::cpm is at 0.998001.

We have a snapshot file that contains:

  JSON-Schema-Modern-0.590
    pathname: E/ET/ETHER/JSON-Schema-Modern-0.590.tar.gz
    provides:
      JSON::Schema::Modern 0.590
  OpenAPI-Modern-0.069
    pathname: E/ET/ETHER/OpenAPI-Modern-0.069.tar.gz
    provides:
      JSON::Schema::Modern::Document::OpenAPI 0.069
      JSON::Schema::Modern::Vocabulary::OpenAPI 0.069
      OpenAPI::Modern 0.069
    requirements:
      JSON::Schema::Modern 0.578

I'm using a snapshot file/vendor folder generated by carmel that contains these versions.

I upgrade those modules temporaily by manually installing the lastest versions via cpanm. Later I try to go back to the previous versions by running...

    cpm install -v -L . --show-build-log-on-failure --with-test --with-develop --with-requires --no-prebuilt --no-default-resolvers 
    --resolver 02packages,file://$path_to_vendor_cache --resolver snapshot JSON::Schema::Modern@0.590 OpenAPI::Modern@0.069

...and it's a crap shoot whether I get the latest J::S::M or the proper 0.590 version. cpm tells me it is installing the correct version of both modules, but behind the scenes it sometimes overwites the 0.590 version with the latest, presumably while it's installing O::M.

I thought by specifying --no-default-resolvers and using the 02packages in the carmel-generated local vendor dir that it would resolve all versions from there, but it appears to be going out to fetch the latest J::S::M module despite this.

Is there any way to prevent this?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions