Skip to content

Override sub dependency with my own #436

@miracle2k

Description

@miracle2k
  • I am on the latest Poetry version.
  • I have searched the issues of this repo and believe that this is not a duplicate.
  • If an exception occurs when executing a command, I executed it again in debug mode (-vvv option).
  • OS version and name: MacOS
  • Poetry version: Poetry 0.11.5

Issue

My app is depending on the wsproto library. wsproto itself is depending on h11 >=0.7.0,<0.8.0.
It happens that h11 has a bug which I fixed; the h11 project has merged this but not yet published an update.

I'd like to therefore install the master branch of h11. I am doing this:

poetry add wsproto
poetry add --git https://github.com/miracle2k/h11.git h11

However, it seems that my "git overrride" is ignored:

$ poetry show
atomicwrites   1.2.1  Atomic file writes.
attrs          18.2.0 Classes Without Boilerplate
h11            0.7.0  A pure-Python, bring-your-own-I/O implementation of HTTP/1.1
more-itertools 4.3.0  More routines for operating on iterables, beyond itertools
pluggy         0.7.1  plugin and hook calling mechanisms for python
py             1.6.0  library with cross-python path, ini-parsing, io, code, log facilities
pytest         3.8.0  pytest: simple powerful testing with Python
six            1.11.0 Python 2 and 3 compatibility utilities
wsproto        0.11.0 WebSockets state-machine based protocol implementation
$ poetry run  pip freeze
atomicwrites==1.2.1
attrs==18.2.0
h11==0.7.0
more-itertools==4.3.0
pluggy==0.7.1
py==1.6.0
pytest==3.8.0
six==1.11.0
wsproto==0.11.0

If I poetry remove wsproto, it installs the correct git dependency and shows as the version h11==0.8.1+dev.

At the very least, I would expect here to be conflict: if wsproto requires a version <0.8, but I require a specific git install with a version >0.8, this should be unresolvable.

Ideally, I'd like a way to to ignore the overlay restrictive wsproto version range and install the version I tell it to.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions