Sunday, December 7, 2014

Pip in IronPython 2.7.5

With IronPython 2.7.5 finally released, one of the most useful features is finally widely available – pip support.

Installing pip is done with a backport of the ensurepip module:

ipy -X:Frames -m ensurepip

Note that –X:Frames is always required when working with pip. If using an installed IronPython that should be run from an Administrator command prompt (or using install -user). Using a regular command prompt will probably result in errors.


To install packages:

ipy -X:Frames -m pip install html5lib

Unfortunately pip does not work, so the longer version has to be used instead.


There is no gaurantee that all libraries will install or run successfully, but many popular ones (like html5lib) do.

Saturday, December 6, 2014

IronPython 2.7.5 Released

On behalf of the IronPython team, I'm very happy to announce the release IronPython 2.7.5. Like all IronPython 2.7-series releases, .NET 4 is required to install it. Installing this release will replace any existing IronPython 2.7-series installation. Assemblies for embedding are provided for .NET 3.5, .NET 4, .NET 4.5, and Silverlight 5.

IronPython 2.7.5 is primarily a collection of bug fixes which smooths off many of the remaining rough edges. The complete list of changes is also available.

A major new feature is the inclusion of ensurepip, which will install the pip package manager:

; -X:Frames is required when using pip
ipy.exe -X:Frames -m ensurepip

; Run from an Administrator console if using IronPython installer
ipy.exe -X:Frames -m pip install html5lib

Note: The assembly version of IronPython has changed to 2.7.5.0. All previous 2.7 versions had the same version (2.7.0.40) which caused issues when different versions were installed. Publisher policy files are used to so that applications don't have to be recompiled, but recompiling is strongly recommended.

A huge thanks goes out to Pawel Jasinski, who contributed most of the changes in this release. Thanks is also due to Simon Opelt, Alex Earl, Jeffrey Bester, yngipy hernan, Alexander Köplinger,Vincent Ducros, and fdanny.

For Visual Studio integration, check out Python Tools for Visual Studio which has support for IronPython as well as CPython, and many other fantastic features.

IronPython 2.7.5 is also available for embedding via NuGet. The main package is IronPython, and the standard library is in IronPython.StdLib.

Tuesday, November 25, 2014

IronPython 2.7.5 Release Candidate 2

IronPython 2.7.5 RC 2 is now available. The only change is a couple of late-breaking bug fixes from Pawel. The next release should be the final 2.7.5, barring any mishaps.

Friday, November 21, 2014

IronPython 2.7.5 Release Candidate 1 Available

On behalf of the IronPython team, I'm happy to announce the first release candidate of IronPython 2.7.5. This release includes everything from IronPython 2.7.4 and earlier. Like all IronPython 2.7-series releases, .NET 4 is required to install it. Installing this release will replace any existing IronPython 2.7-series installation. Assemblies for embedding are provided for .NET 3.5, .NET 4, .NET 4.5, and Silverlight 5.

IronPython 2.7.5 is primarily a collection of bug fixes which smooths off many of the remaining rough edges. Thecomplete list of changes is also available.

Note: The assembly version of IronPython has changed to 2.7.5.0. All previous 2.7 versions had the same version (2.7.0.40) which caused issues when different versions were installed. Publisher policy files are used to so that applications don't have to be recompiled, but recompiling is strongly recommended.

A huge thanks goes out to Pawel Jasinski, who contributed most of the changes in this release. Thanks is also due to Simon Opelt, Alex Earl, Jeffrey Bester, yngipy hernan, Alexander Köplinger, Vincent Ducros, and fdanny.

For Visual Studio integration, check out Python Tools for Visual Studio which has support for IronPython as well as CPython, and many other fantastic features.
IronPython 2.7.5 RC 1 is also available for embedding via NuGet. The main package is IronPython, and the standard library is in IronPython.StdLib.

Monday, October 20, 2014

IronPython 2.7.5 Beta 3 Released

On behalf of the IronPython team, I'm happy to announce the third and final beta release of IronPython 2.7.5. This release includes everything from IronPython 2.7.4 and earlier. Like all IronPython 2.7-series releases, .NET 4 is required to install it. Installing this release will replace any existing IronPython 2.7-series installation. Assemblies for embedding are provided for .NET 3.5, .NET 4, .NET 4.5, and Silverlight 5.

IronPython 2.7.5 Beta 3 is primarily a collection of bug fixes which smooths off many of the remaining rough edges. The complete list of changes is also available.

Note: The assembly version of IronPython has changed to 2.7.5.0. All previous 2.7 versions had the same version (2.7.0.40) which caused issues when different versions were installed. Publisher policy files are used to so that applications don't have to be recompiled, but recompiling is strongly recommended.

A huge thanks goes out to Pawel Jasinski, who contributed most of the changes in this release. Thanks is also due to Simon Opelt, Alex Earl, Jeffrey Bester, yngipy hernan, Alexander Köplinger, Vincent Ducros, and fdanny.

For Visual Studio integration, check out Python Tools for Visual Studio which has support for IronPython as well as CPython, and many other fantastic features.

IronPython 2.7.5 Beta 3 is also available for embedding via NuGet. The main package is IronPython, and the standard library is in IronPython.StdLib.

Sunday, May 25, 2014

IronPython 2.7.5 Beta 2 Released

On behalf of the IronPython team, I'm happy to announce the second beta release of IronPython 2.7.5. This release includes everything from IronPython 2.7.4 and earlier. Like all IronPython 2.7-series releases, .NET 4 is required to install it. Installing this release will replace any existing IronPython 2.7-series installation. Assemblies for embedding are provided for .NET 3.5, .NET 4, .NET 4.5, and Silverlight 5.
IronPython 2.7.5 Beta 2 is primarily a collection of bug fixes which smooths off many of the remaining rough edges. The complete list of changes is also available.

Note: The assembly version of IronPython has changed to 2.7.5.0. All previous 2.7 versions had the same version (2.7.0.40) which caused issues when different versions were installed. Publisher policy files are used to so that applications don't have to be recompiled, but recompiling is strongly recommended.

A huge thanks goes out to Pawel Jasinski, who contributed most of the changes in this release. Thanks is also due to Simon Opelt, Alex Earl, Jeffrey Bester, and yngipy hernan.

For Visual Studio integration, check out Python Tools for Visual Studio which has support for IronPython as well as CPython, and many other fantastic features.

IronPython 2.7.5 Beta 2 is also available for embedding via NuGet. The main package is IronPython, and the standard library is in IronPython.StdLib.

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.