Comments (4)
My 2 cents: there is a discussion to depreciate distutils (https://www.python.org/dev/peps/pep-0632/). Now that we have pep517 and isolated builds with pyproject.toml, supporting builds using hpy with only distutils doesn't seem to be very useful.
from hpy.
I pushed a small fix to https://github.com/hpyproject/ultrajson-hpy/tree/antocuni/update-to-latest-hpy.
The high-level issue is that ultrajson-hpy's setup.py was passing the distutils version of build_ext
rather than the setuptools one.
The question now is what to do about it on the HPy side? It's likely a common and confusing issue, so we should do something.
One option is to try detect the issue and either raise an error or warning. One way to detect the issue is to check whether the setuptools build_ext is somewhere in the inheritance hierarchy of the current build_ext. If it isn't, the build will probably fail anyway.
Another option is to somehow handle the case where only distutils is being used, but I don't really know what that should look like, other than that it would probably be even more of a mess.
from hpy.
One option is to try detect the issue and either raise an error or warning. One way to detect the issue is to check whether the setuptools build_ext is somewhere in the inheritance hierarchy of the current build_ext. If it isn't, the build will probably fail anyway.
Another option is to somehow handle the case where only distutils is being used, but I don't really know what that should look like, other than that it would probably be even more of a mess.
I don't know enough on the subject to make a reasonable comment. I am fine with both options if they improve the current situation.
from hpy.
Addressed by #178.
from hpy.
Related Issues (20)
- Add an example or test that uses HPy_mod_execute HOT 2
- HPy universal modules on CPython via a CPython API entrypoint embedded in the extension HOT 1
- Exposing APIs from HPy extensions to be used by other HPy extensions HOT 9
- Design goal of HPyCapsule conflicts with universal mode HOT 9
- debug ctx_Type_GetName does not take trailing NULL into account HOT 2
- HPy helpers deployment HOT 1
- test_metaclass and `set_meta_data`: it seems to be operating on the wrong legacy class? HOT 1
- Duplicate supports_ref_counts HOT 2
- missing tests for _load_bootstrap HOT 3
- ambiguous struct fields in HPyType_Spec HOT 3
- support uses a trick to get a module spec which fails on PyPy HOT 2
- Ambiguous tests in test_hpytype_legacy.py
- Return an error state from HPyField_Store HOT 4
- HPyGlobal: debug mode should check registration in HPyModuleDef->globals HOT 4
- HPyErr_Format missing HOT 3
- `python setup.py` and the use of `setup.py` as a command line tool are deprecated HOT 14
- ABI for unboxed calls from JITs (and cython, etc.)
- Support the Meson build system with meson-python
- Is keeping 2.7 compatibility for `hpy/devel/__init__.py` still relevant? HOT 2
- declare exception class? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hpy.