Skip to content
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

Plan for distutils removal in Python 3.12 #108

Open
JamieMagee opened this issue Apr 20, 2022 · 3 comments
Open

Plan for distutils removal in Python 3.12 #108

JamieMagee opened this issue Apr 20, 2022 · 3 comments
Assignees
Labels
detector:pip The pip detector status:in-progress Someone is working on implementation type:refactor Refactoring or improving of existing code

Comments

@JamieMagee
Copy link
Member

JamieMagee commented Apr 20, 2022

The distutils module in Python was deprecated in Python 3.101 and is planned to be removed entirely in Python 3.12. Our Python detector is currently based around distutils2. Python 3.12 is due to be released in October 20233.

There are some suggested migration paths in the release notes for Python 3.101.

AB#2095297

Footnotes

  1. https://docs.python.org/3/whatsnew/3.10.html#distutils-deprecated 2

  2. https://github.com/microsoft/component-detection/blob/2d5a418320e23f019f67b59e191ac72b5f8d9666/docs/detectors/pip.md#detection-strategy

  3. https://peps.python.org/pep-0602/

@JamieMagee JamieMagee added status:requirements Full requirements are not yet known, so implementation should not be started detector:pip The pip detector labels Apr 20, 2022
@JamieMagee JamieMagee changed the title Plan for disutils removal in Python 3.12 Plan for distutils removal in Python 3.12 Apr 20, 2022
@jenshnielsen
Copy link

jenshnielsen commented Aug 30, 2022

Another shortcoming of the python detector is that it does not respect pep517 build dependencies. Which means that this code will fail if the user imports something not in the current environment. This is made worse by the fact that this error is silent see #242

Having direct support for declarative specifications of dependencies as in #243 would help making this less of an issue

@jenshnielsen
Copy link

Are there any news on this. Release candidate 1 of python 3.12 is out and the release of 3.12.0 is expected for Oktober.

@cobya cobya self-assigned this Jan 19, 2024
@cobya cobya added status:in-progress Someone is working on implementation and removed status:requirements Full requirements are not yet known, so implementation should not be started labels Jan 19, 2024
@cobya cobya removed their assignment May 15, 2024
@cobya cobya moved this from Ready to In review in Component Detection - Detector Improvements May 23, 2024
@cobya
Copy link
Contributor

cobya commented May 23, 2024

We are preparing the new pip installation report detector for validation on our next release. It is not an experimental detector!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
detector:pip The pip detector status:in-progress Someone is working on implementation type:refactor Refactoring or improving of existing code
Projects
Development

No branches or pull requests

3 participants