[Cython] Cython-ctypes branch
Stefan Behnel
stefan_ml at behnel.de
Tue Oct 18 10:06:14 CEST 2011
Hi Romain,
I know your branch isn't "ready" in the sense that it's useful for the real
world, but I'd like to find a way to get it merged, and to find a time
frame for that. Otherwise, it will just bit-rot, which is certainly not
what anyone wants. How would you judge your availability for this in the
near future? I hope you're interested. :)
For those who didn't follow the project, the branch lives here:
https://github.com/hardshooter/CythonCTypesBackend
The first thing that (IMHO, let's see if the others agree) needs to happen
is that you should try to rebase it on the latest master branch. There were
changes in the meantime that will not make this go clean. For example, the
pipeline code was factored out of Main.py into a separate module
Pipeline.py, so you will have to migrate your pipeline changes manually.
That shouldn't be too hard, though, and it's the only major conflict that I
currently anticipate.
There's a test runner change in the master branch that will allow you to
select the tested backends with a positive list, i.e. as in
runtests.py --backends=c,cpp
You'd want to add the ctypes backend here. The "--no-cpp" etc. set of
switches become very unwieldy as new backends are added.
You will also notice that Cython gained a couple of new features and syntax
since you started, specifically fused types, an extended array syntax for
memoryviews and parallel OpenMP loops. I'm not sure how (or even if) they
will translate to the Python backend. I think all of them will need a
dedicated implementation in some way, which is very unfortunate. But I
don't think that has to bother us for the moment.
I recreated the Jenkins build and test jobs for your branch:
https://sage.math.washington.edu:8091/hudson/view/dev-romain/
There's currently a unit test failure in the build job that keeps me from
trying the subsequent test runs. It looks trivial, though, so if you could
push a fix, I can make sure the build and test jobs work as expected. That
will give us an idea about the current status of your code.
I also noticed that the ctypes_configure script is not Py3 clean, so we
can't currently test your code on that platform. 2to3 may be able to do the
job, but the package needs fixing upstream.
Stefan
More information about the cython-devel
mailing list