python-poetry / python-poetry/poetry

Allow build options for dependencies

Open
#5,359 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

kind/feature status/external-issue
Dominant language
Python
Stars
34.3k
Forks
2.5k
Avg merge
2d 19h
Merged PRs (30d)
30

Description

  • [ x] I have searched the issues of this repo and believe that this is not a duplicate.
  • [ x] I have searched the documentation and believe that my question is not covered.

Feature Request

Background

I am trying to use poetry to install detectron2 inside windows environment (binaries are only provided for linux/mac).

However detectron2 is still using setup.py and torch is an hard requirement inside the setup.py. This cuz the build to fail because poetry is installing in an isolated environment (fresh venv with no torch)

I noticed that build provides a flag for non-isolated environment for the build step.

If we can include some of the flags available to build (i.e. -n), i will be able to install and build detectron2 locally using poetry venv.

i.e.

[tool.poetry.dependencies]
detectron2 = {path = "<some-git-path>", isolated-build-env = false}
``

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how Poetry builds path and Git dependencies in isolated environments, using the proposed isolated-build-env = false option and the build non-isolated flag as the expected behavior. Check how dependency configuration is parsed and passed to the build step, then verify that a legacy setup.py dependency requiring torch can build in the Poetry virtual environment without isolation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.