84

According to Jython's documentation:

Jython is an implementation of the Python language for the Java platform. Jython 2.5 implements the same language as CPython 2.5, and nearly all of the Core Python standard library modules. (CPython is the C implementation of the Python language.) Jython 2.5 uses the same regression test suite as CPython, with some minor modifications.

Are there any plans to support Python 3? If so, when is it scheduled to be released?

tshepang
  • 12,111
  • 21
  • 91
  • 136
Adam Paynter
  • 46,244
  • 33
  • 149
  • 164
  • 6
    Found this was wondering the same thing today, 7 years on. I see that IronPython has been picked up again... but still no Jython. – c z Sep 13 '17 at 16:28
  • 1
    No change in Jython 3 repository since 18 July 2017 so it doesn't look good. But Jython 2 is still active, there's a chance activity on Jython 3 restarts in 2020 if Python 2 actually stops being supported. It's purely speculative. – RedGlyph Aug 19 '19 at 19:07

4 Answers4

56

Another update: an August 2020 commit clarified that the repository to look at is not the Jython3 one but the main Jython repo. Anyway "The latest version of Jython remains 2.7.x. A Jython 3.x should appear, but exploratory work towards it is not stable at the time of writing. Please watch the jython-dev mailing list for developements."


Update: 9 years after the question has been originally asked the answer now seems to be not in the near future. Most recent commit is now more than two years old (July 18, 2017), and developers say that the 3.x branch is "resting".


My original answer:

5 years after the question has been asked, the answer is still "it will come, but the time frame for an initial release is not clear yet".

What we can say is that now there is a jython3 repository targetting Python 3.5. README.md, dated 28 May 2015, says:

This repo is in the very early stages of development of a release of Jython 3.5. Planned goals are language and runtime compatibility with CPython 3.5, along with continued substantial support of the Python ecosystem.

Jython FAQ page states that:

Jython 3.x development is in progress.

Diego
  • 5,326
  • 1
  • 35
  • 32
  • 7
    @BhabaniSankarMishra looking at the commit history, it's mildly alive https://github.com/jython/jython3/commits/master but I wouldn't count on Jython 3 being officially released anytime soon. – Diego Sep 19 '17 at 09:23
  • 3
    It looks moribund. No commits since Jul 18, 2017. Sad. – mzjn Jan 24 '19 at 06:49
  • 3
    See also https://github.com/jython/jython3/issues/36. Frank Wierzbicki wrote on Mar 1, 2018: "Jython3 is more stalled than dead". Jeff Allen wrote on Apr 18, 2019: It's not dead, it's resting". – mzjn Jul 22 '19 at 06:56
  • 1
    Appears to be a dead parrot – MichaelMaggs Jan 18 '21 at 16:22
37

Jython roadmap is definitely outdated.
However, on Frank Wierzbicki's Weblog (one of Jython's main developers) you can get an update, telling that Python 3 is definitely on the radar.

Unfortunately, it is not yet clear when, as it is stated in a comment in that same blog from 2010:

Jython will reach 2.6 and later a 3.x, but it's hard to give a solid time frame. I'm hoping to get a 2.6 out in a few months.

In an interview in 2017, Wierzbicki stated that Python 3 is desirable but difficult.

Langfristig wollen wir eine 3.x-Version veröffentlichen, aber das ist ein langwieriger Prozess, weil es eine große Menge an Veränderungen in der 3.x-Serie gab.

English:

We want to publish a version 3.x in the long run, but that is a drawn-out process, because there were a lot of changes in the 3.x series.

Jython – Python in der Java-Welt [Pirates of the JVM], JAXenter, 2017-04-12.

sleske
  • 81,358
  • 34
  • 189
  • 227
rob
  • 36,896
  • 2
  • 55
  • 65
  • Great find! I was sure that this question must have been asked *somewhere*, but my Google-fu was lacking. :) – Adam Paynter Feb 28 '10 at 15:58
  • Just looked for "jython roadmap" ;-) – rob Feb 28 '10 at 17:43
  • 6
    This was posted over 2 years ago and searches right now are still lacking. It looks like Jython 3 isn't anywhere except the dev's heads atm. – fIwJlxSzApHEZIl May 21 '12 at 22:23
  • As you can see on that blog, the main contributor had to stop working on Jython for a while; now they are approaching 2.7, and 3.0 should be next step. – rob May 22 '12 at 08:52
  • 10
    5+ years later, [Jython 2.7 is out](http://fwierzbicki.blogspot.fi/2015/05/jython-270-final-released.html). – gerrit Jun 16 '15 at 13:28
  • 3
    In a German interview with Frank Wierzbicki, dated April 2017, he states that "in the long term, we want to publish a 3.x version, but that is a lengthy process." https://jaxenter.de/jython-jvm-pirates-52427 – Marco Eckstein Oct 04 '17 at 12:05
  • 1
    @MarcoEckstein: Thanks for pointing this out. I edited it into the answer. – sleske Jan 04 '18 at 12:22
11

I suggest looking elsewhere for a Python 3 interpreter on the JVM.

The GraalPython project (https://github.com/graalvm/graalpython) looks promissing. There is good rationale behind its existence, essentially it says "Let's support scientific computing and data analysis in Python, which means e.g. numpy, including native-code modules, and let's make it fast and interoperable".

Jython, not so much, at this point.

user7610
  • 25,267
  • 15
  • 124
  • 150
  • But then the huge différence is cpu intensive code using objects that can t be serialized have to remain single threaded like with Cpython (Jython is gil less). – user2284570 Jan 05 '21 at 00:41
  • I briefly checked and it indeed looks like GIL is present in GraalPython. Lets see what the answer to comment https://github.com/oracle/graalpython/issues/180#issuecomment-754315123 will be ;P – user7610 Jan 05 '21 at 12:09
  • I m the author of the comment. That s why per thread performance is still the underlying reason when choossing the cpu (and thus having to stay with Intel abi instead of longsun or arm). Because of a poor design decision in the language. I m needing Python3 and the objects I m using can t be serialized which means a Python3 implementation of Python without the gil (or making it optional) is needed. – user2284570 Jan 05 '21 at 12:17
0

Probably the most up to date info on the Jython Website https://www.jython.org/jython-3-roadmap but without timescales.

James Mudd
  • 1,816
  • 1
  • 20
  • 25