Skip to content

Upper limit for PuLP version < 2.8.0 seems to be required #82

@cosimolupo

Description

@cosimolupo

PROBLEM

When installing cobrawap via PyPI, the "undirect" PuLP dependency (i.e. not explicitly listed in the pyproject.toml file, but required by other listed dependencies) is not upper-bounded for what regards its versioning, and hence the latest version compatible with other packages is installed. As of today, the 2.9.0 version is retrieved and installed.

Unfortunately, when executing Cobrawap with Snakemake workflow manager, the following error occurs:

Traceback (most recent call last):
File "/path/to/working_dir/env_cobrawap/bin/snakemake", line 8, in <module>
sys.exit(main())
File "/path/to/working_dir/env_cobrawap/lib/python3.9/site-packages/snakemake/init.py", line 2736, in main
parser = get_argument_parser()
File "/path/to/working_dir/env_cobrawap/lib/python3.9/site-packages/snakemake/init.py", line 1607, in get_argument_parser
lp_solvers = pulp.list_solvers(onlyAvailable=True)
AttributeError: module 'pulp' has no attribute 'list_solvers'

The installed version of Snakemake is 7.32.4, as the versioning upper bound <8.0.0 is explicitly set.

PROPOSED SOLUTION

Manually downgrading PuLP to <2.8.0 solves the issue. Hence, a possible fix could to explicitly list PuLP dependency in the pyproject.toml file, and upper-bound its version to 2.7.x. When an upgrade of Snakemake version will be available (see also issue #57), then also the range allowed versions for PuLP can be reconsidered.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugdependenciesPull requests that update a dependency file

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions