numpy.distutils not compatible with python version>=3.12
Hi! Tried to install ellc in python 3.12 and it failed since numpy.distutils has been removed for the newest python versions - https://numpy.org/doc/stable/reference/distutils.html. It still imports OK in a v3.11 environment but might need attention soon!
I also got the same failure when installing ellc in python 3.12. It would be good to fix this version incompatibility issue.
Thank you for making this significant update, @zhang-zhixiang! I have tested it on my M4 Mac Mini with Python 12, and it works perfectly. It should also work for other M-series chips (M1, M2, and M3).
The general installation procedure for Mac with M-series chips is as follows:
### Install gfortran via Homebrew
brew install gfortran
### Install the latest version of ellc (now, it is 1.8.11)
pip install git+https://github.com/pmaxted/ellc.git
And, @pmaxted, if you need me to perform any additional tests, feel free to let me know!
Best, Xian-Yu
Hello, when will this be available in general release on pypi? I am using ellc as a dependency for another package and can't include dependencies pointing to git repositories.
The package distribution for ellc is broken now that numpy.distutils is deprecated. I cannot now build the package to upload it to pypi. I do not know how to fix this so it is unclear when the next version will be released on pypi.
If you know how to fix the following error, then please let me know ...
Creating tar archive
removing 'ellc-1.8.11' (and everything under it)
* Building wheel from sdist
* Creating isolated environment: venv+pip...
* Installing packages in isolated environment:
- setuptools >= 40.8.0
* Getting build dependencies for wheel...
make: *** No targets specified and no makefile found. Stop.
Traceback (most recent call last):
File "/Users/pflm/miniconda3/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in <module>
main()
File "/Users/pflm/miniconda3/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py", line 357, in main
json_out["return_val"] = hook(**hook_input["kwargs"])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/pflm/miniconda3/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py", line 134, in get_requires_for_build_wheel
return hook(config_settings)
^^^^^^^^^^^^^^^^^^^^^
File "/private/var/folders/dl/tc85r2_j2v94kqhby3hvz4n00000gn/T/build-env-x9hwubxl/lib/python3.11/site-packages/setuptools/build_meta.py", line 331, in get_requires_for_build_wheel
return self._get_build_requires(config_settings, requirements=[])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/private/var/folders/dl/tc85r2_j2v94kqhby3hvz4n00000gn/T/build-env-x9hwubxl/lib/python3.11/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
self.run_setup()
File "/private/var/folders/dl/tc85r2_j2v94kqhby3hvz4n00000gn/T/build-env-x9hwubxl/lib/python3.11/site-packages/setuptools/build_meta.py", line 512, in run_setup
super().run_setup(setup_script=setup_script)
File "/private/var/folders/dl/tc85r2_j2v94kqhby3hvz4n00000gn/T/build-env-x9hwubxl/lib/python3.11/site-packages/setuptools/build_meta.py", line 317, in run_setup
exec(code, locals())
File "<string>", line 28, in <module>
File "<string>", line 13, in configuration
File "<string>", line 8, in run_make
File "/Users/pflm/miniconda3/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['make']' returned non-zero exit status 2.
ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
Hello, I uploaded one version from my custom fork here https://pypi.org/project/ellk/. I can create a pull request from my fork
Here it is https://github.com/pmaxted/ellc/pull/20/files
Thanks. Version 1.8.11 now available on pypi