Skip to content

Separate dev/docs/test dependencies #2625

@occasional-contributor

Description

@occasional-contributor

Separate dependencies for dev/docs/test into their own extras.

Right now, they are all in the main dependencies group in pyproject.toml: https://github.com/Gallopsled/pwntools/blob/dev/pyproject.toml#L35-L56

dependencies = [
    "paramiko>=1.15.2",
    "mako>=1.0.0",
    "pyelftools>=0.32",
    "capstone>=4.0.0",
    "ropgadget>=5.3",
    "pyserial>=2.7",
    "requests>=2.0",
    "pip>=6.0.8",
    "pygments>=2.0",
    "pysocks",
    "python-dateutil",
    "packaging",
    "psutil>=3.3.0",
    "intervaltree>=3.0",
    "sortedcontainers",
    "unicorn>=2.0.1, !=2.1.3, !=2.1.4",  # see https://github.com/unicorn-engine/unicorn/issues/2134
    "rpyc",
    "colored_traceback",
    "unix-ar",
    "zstandard",
]

Reason for request

We use pwntools as a direct dependency in our project. We use poetry to lock our dependencies. Having pip in there means we are forever locked into using whatever version of pip was available when the dependencies were locked. Installing our package(s) forces upgrade/downgrade of pip. This causes issues when running our code in some restricted environments.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions