[Python-Dev] Status of C compilers for Python on Windows

Tony Kelman kelman at berkeley.edu
Sun Oct 26 18:59:16 CET 2014


> If this includes (or would likely include) a significant portion of the
> Scientific Computing community, I would think that would be a compelling
> use case.

I can't speak for any of the scientific computing community besides myself,
but my thoughts: much of the development, as you know, happens on Linux
with GCC (or OSX with clang). But it's important for users across all
platforms to be able to install binaries with a minimum of fuss.
Limitations of MSVC have already led the numpy/scipy community to
investigate building with MinGW-w64. (See several related threads from
April on the numpy-discussion list.) Ensuring compatibility with CPython's
chosen msvcrt has made that work even more difficult for them.

And Julia is not yet a significant portion of anything, but our community
is growing rapidly. See https://github.com/JuliaLang/IJulia.jl/pull/211 -
with respect to IJulia, "Python is just an implementation detail." Even
such a silly thing as automating the execution of the Python installer, to
set up a private only-used-by-IJulia copy, is needlessly difficult to do.
The work on Jupyter will hopefully help this specific situation sooner or
later, but there are other cases where CPython needs to serve as part of
the infrastructure, and the status quo makes that harder to automate.

> We'd need to be educated more about the reasons why this approach works
> better than remaining compatible with MSVC CPython so we could evaluate
> the risks and reward intelligently.

Ideally, we can pursue an approach that would be able to remain compatible
with MSVC CPython. Even if this needs involvement from MinGW-w64 to make
happen, I don't think it's intractable. But I know less about the inner
details of CPython than you do so I could be wrong.

> But as has been discussed, it seems better to focus first on fixing the
> issues on which we are all in agreement (building extensions with MinGW).

Yes. We'll look into how much of the work has already been done on this.

> there *are* people on the core-mentorship list who have expressed
> interest in helping out with our automated testing infrastructure,
> including (if I understand correctly) adding some level of integration
> to other CI systems (which might just be messages to the IRC
> channel)[*].  So that could be a fruitful avenue to explore.

If we pursue a fork (which not everyone will like but might happen anyway)
then we likely would do this type of CI integration along the way as Ray
suggested. So even if it turns out to fail as an endeavor, some good may
come of it.

Sincerely,
Tony



More information about the Python-Dev mailing list