Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Support python 3.12 #1012

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Support python 3.12
Currently, opencv-python fails to build under python 3.12. This patch
fixes that problem by permitting the use of any setuptools>=59.2.0,
rather than mandating that specific version.

This patch fixes #988. See discussion there for details.

I have tested by successfully installing opencv-python.
  • Loading branch information
bryankaplan committed Dec 15, 2024
commit 218a392d1810a6c9fa974441fb6da13d881082ab
2 changes: 1 addition & 1 deletion 2 pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,5 @@ requires = [
"numpy>=2.0.0; python_version>='3.9'",
"pip",
"scikit-build>=0.14.0",
"setuptools==59.2.0",
"setuptools>=59.2.0",
Copy link

@Avasam Avasam Aug 1, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I normally wouldn't recommend pinning setuptools on an upperbound unless you have an explicit reason, but v71 changed how it vendors its dependencies in a major way. https://setuptools.pypa.io/en/latest/history.html#v71-0-0
Where it'll prefer already installed deps over its vendors. This can cause issues if the environment has an older version of a dep installed (which wasn't problematic before for setuptools, as it'd use it's own vendor anyway).

Note that running pip install setuptools[core] would install the necessary dependencies along with setuptools.

Given the various distributions and dockerization of opencv-python, it might be warranted to progressively relax this pin by first going to:

Suggested change
"setuptools>=59.2.0",
"setuptools>=59.2.0,<71.0.0",

Leaving this to the maintainers whether that's a concern 😄

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm reticent to introduce an upper-bound with neither any observed problems nor a plan to fix any anticipated problems. But I'm happy to commit the suggestion if maintainers agree it's prudent.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah same, figured I'd at least let it be known.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bryankaplan Done, thank you

]
Loading
Morty Proxy This is a proxified and sanitized view of the page, visit original site.