Closed laixintao closed 9 months ago
Looking into it deeper and found that the causes are multifaceted.
numpy
supporting 3.8 is 1.24.4, which doesn't have prebuilt wheels for Python 3.12. But the build system strictly requires setuptools==59 that doesn't work on Python 3.12. Dead end ❌ . This is possibly solvable by change the project's minimum python requires to 3.9.greenlet
2.0.2 doesn't have prebuilt wheels for Python 3.12, and the source files seem to be incompatible with Python 3.12. Fortunately, it can be solved by updating the version to 3.0 💡 .pandas
again, no Python 3.12 wheels, and the build system requires numpy
, failing due to the same reason as 1.Looking into it deeper and found that the causes are multifaceted.
- The last version of
numpy
supporting 3.8 is 1.24.4, which doesn't have prebuilt wheels for Python 3.12. But the build system strictly requires setuptools==59 that doesn't work on Python 3.12. Dead end ❌ . This is possibly solvable by change the project's minimum python requires to 3.9.- The pinned version of
greenlet
2.0.2 doesn't have prebuilt wheels for Python 3.12, and the source files seem to be incompatible with Python 3.12. Fortunately, it can be solved by updating the version to 3.0 💡 .pandas
again, no Python 3.12 wheels, and the build system requiresnumpy
, failing due to the same reason as 1.
Thanks so much!
I tried new verison of pandas, pdm will complain that there was a conflict, which is correct.
pdm install
Lock file hash doesn't match pyproject.toml, packages may be outdated
Updating the lock file...
🔒 Lock failed
Unable to find a resolution for numpy
because of the following conflicts:
numpy>=1.22.4; python_version < "3.11" (from pandas@2.1.1)
numpy>=1.23.2; python_version == "3.11" (from pandas@2.1.1)
numpy>=1.26.0; python_version >= "3.12" (from pandas@2.1.1)
python>=3.8 (from project)
python>=3.9 (from pandas@2.1.0)
To fix this, you could loosen the dependency version constraints in pyproject.toml. See https://pdm.fming.dev/latest/usage/dependency/#solve-the-locking-failure for more
details.
(but pdm's message is a bit confusing, I can not tell what's the conflict about without thinkging... not a big issue though)
after all this, I realized that pandas
here, only need for testing, not really a dev
dependency. So I moved it out of pyproject.toml
to tox
, so that we can install pandas
differenctly in different python version testing.
Thank you both! I'll take a look when I get home
So I moved it out of pyproject.toml to tox, so that we can install pandas differenctly in different python version testing.
LGTM. Thanks for making this change, and @frostming for the investigation!
Will create a release after adding new dunder methods to the right categories.
Dependencies