Thursday, March 20, 2014

IronPython 3 Update

I know a lot of people are interested in IronPython 3, so I'm going to provide an idea of where things are right now and where they are headed.

First off, IronPython 3 development will take place in a new repository to break from the old repo that was converted from Microsoft's internal TFS. It is not up-to-date with the old repo and I probably won't sync them until after 2.7.5 is released. Doing so while preserving committers should be possible but I haven't tried yet. One side effect of the repo split is that the history is also split; preserving it in a sane way was not really possible.

The README has the necessary instructions to get started (finally!).

There is also a new test runner based on NUnitLite; you can run the tests by running make test from a command prompt. I haven't tested it on Mono yet but it should work there as well. The Makefile needs to be updated to include testing.

The Python 3 standard library has been imported; it doesn't really work because it uses Python 3 features, but that should provide some prioritization (the new metaclass syntax is pretty critical now, because io.py uses it). All of the old IronPython tests are there as well, although many will have to be updated (or removed, if they're redundant with CPython tests) for Python 3.

I'm going to add the needed PEPs to the issues list for the new repo so that anyone interested can claim them.

The new repo structure should make working on IronPython much easier than before, which will hopefully encourage more people to contribute. It also make it easier to push stdlib changes back upstream to reduce the maintenance load.

As always, I'm happy to answer any questions.

No comments:

Post a Comment