Skip to content

Environment markers do not carry out to transitive dependencies #563

@tuukkamustonen

Description

@tuukkamustonen

As in title.

Environment Versions

Ubuntu 14.04, pip-tools 1.9.0, pip 9.0.1, python 2.7 + 3.4

Steps to replicate

Imagine some package 'foo` that requires:

enum34; python_version < '3.4'

Require foo in requirements.txt:

foo

With python 2.7, when you run pip-compile requirements.txt...

Expected result
#
# This file is autogenerated by pip-compile
# To update, run:
#
#    pip-compile --output-file requirements.txt requirements.in
#
enum34==1.1.6; python_version < '3.4'           # via foo
foo==1.0.0
Actual result
#
# This file is autogenerated by pip-compile
# To update, run:
#
#    pip-compile --output-file requirements.txt requirements.in
#
enum34==1.1.6           # via foo
foo==1.0.0

So environment marker is not carried on.

If you run with python3.4+, whole enum34 is omitted.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething is not workingmarkersRelated to environment markers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions