Skip to content

Release builds in CI not installing dependencies and not recognising [express] extra #5041

Closed
@LiamConnors

Description

@LiamConnors
Member

If you download and install a release build from CI, it no longer picks up that there is an express extra:

Processing .../plotly-6.0.0-py3-none-any.whl (from plotly==6.0.0)
WARNING: plotly 6.0.0 does not provide the extra 'express'

Additionally, required dependencies like narwhals are not installed.

@marthacryan

Activity

added
bugsomething broken
P1needed for current cycle
on Feb 17, 2025
marthacryan

marthacryan commented on Feb 18, 2025

@marthacryan
Collaborator

This is a result of #4970. It just requires a couple lines in the pyproject.toml, so this is a quick fix! One thing I'm noticing as I look into this though is the file requires-optional.txt - I think this is meant to be used as pip install plotly[optional] - is that documented anywhere? And do we want to keep supporting it?

emilykl

emilykl commented on Feb 18, 2025

@emilykl
Contributor

@marthacryan As far as I can tell, requires-optional is intended to be a list of ALL dependencies used by any subpackage of Plotly.py, plus packages needed for setting up a local dev workflow. It's referenced in CONTRIBUTING.md dev setup instructions.

Probably it should be cleaned up and renamed to requires-dev.txt, maybe even exposed as a plotly[dev] extra. We discussed doing both of those things in #4644 , but in the interest of getting the PR out sooner we never went ahead with it..

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

Metadata

Metadata

Assignees

Labels

P1needed for current cyclebugsomething brokeninfrastructurebuild process etc.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    Participants

    @gvwilson@emilykl@marthacryan@LiamConnors

    Issue actions

      Release builds in CI not installing dependencies and not recognising [express] extra · Issue #5041 · plotly/plotly.py