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
vstack
unit fails to execute on binref installations with Python 3.12 due to failed Unicorn import
#39
Comments
Ok so ... "bad" news: I cannot reproduce this in the CICD tests. And even though the coverage for |
Oddly enough, on a vanilla Python 3.12 install in Windows, importing
I then installed Python 3.12 on Ubuntu, and this one is even more interesting. It does not come with
but after installing binary refinery via
It just works and |
There is a possible explanation for the weirdness we're seeing here, where According to the What’s New In Python 3.12 page, developers are encouraged to use the third-party
This behaviour manifests as follows, in a Python 3.12.0 virtual environment where
This means that as long as
|
My problem however, is that my Python test environment behaves slightly differently. After installing
So in my case, importing |
I can indeed reproduce the issue with |
Description
When running the
vstack
unit on an installation of Binary Refinery in a Python virtual environment running Python 3.12, I kept seeing the following error:This was despite verifying inside the virtual environment that the listed dependencies were present.
To Reproduce
Install Binary Refinery with the
binary-refinery[all]
spec in an environment which uses Python 3.12, then execute thevstack
unit.Re-installing refinery inside a virtual environment with Python 3.11.6 fixes this issue.
Cause
As far as I can tell, this is the reason for this issue:
distutils
module from the standard library (which was deprecated starting in 3.10: https://docs.python.org/3.12/whatsnew/3.10.html#distutils-deprecated)unicorn
when executing thevstack
unit, which results in aRefineryImportMissing
exception, which is reported by refinery as a missing dependency.Environment
Additional Context
Verbose error and traceback:
The text was updated successfully, but these errors were encountered: