Skip to content

Should the dependencies of marker_gui and marker_server be exposed as optional extras? #1087

Description

@suliuzh

The package publishes marker_gui and marker_server as command-line entry points (pyproject.toml:48-52). The GUI entry point directly launches Streamlit (run_streamlit_app.py:6-21). The server imports fastapi, and uvicorn (server.py:13-20, server.py:173-184).

However, streamlit, fastapi, uvicorn, and python-multipart are currently listed only in the repository's dev dependency group (pyproject.toml:54-64). This group is not exposed as an installable package extra, so the README asks users to install the dependencies manually before using the published commands (GUI, server).

Proposed Fix
Add feature-specific extras under [project.optional-dependencies] in pyproject.toml:

[project.optional-dependencies]
full = [
    # existing dependencies
]
gui = [
    "streamlit>=1.37.1",
    "streamlit-ace>=0.1.1",
]
server = [
    "fastapi>=0.115.4",
    "uvicorn>=0.32.0",
    "python-multipart>=0.0.16",
]

Users could install them with pip install marker-pdf[gui] or pip install marker-pdf[server].

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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