Skip to content

Releases: brython-dev/brython

Brython-3.10.5

08 Mar 08:11
Compare
Choose a tag to compare

The main new feature in this release is the ability to generate Javascript code from the Python-compliant AST structure introduced in version 3.10.4.

The feature is not used yet in this release because it still needs testing, but should be used in the next release.

Brython-3.10.4

31 Dec 09:42
Compare
Choose a tag to compare

The main change in this version is the support of the Python ast module. Brython implementation has been adapted and simplified to adapt to the standard AST structure.

Brython-3.10.3

02 Nov 10:42
Compare
Choose a tag to compare

This is almost the same version as 3.10.2, but the minifier used by CDNs produced an unusable version of brython.min.js...

Brython-3.10.2

31 Oct 13:10
Compare
Choose a tag to compare

The main visible feature in this version is the implementation of "suggestions" introduced in Python 3.10 : in case of a NameError, if the namespace has a name similar to the wrong name, the interpreter suggests "did you mean <similar name> ?".

Brython 3.10.1 on Netscape 5.0 (Windows)
>>> data = 0
>>> datz
Traceback (most recent call last):
  File <string>, line 1, in <module>
NameError: name 'datz' is not defined. Did you mean: 'data'?
>>> 

The same applies to AttributeError:

Brython 3.10.1 on Netscape 5.0 (Windows)
>>> x = 12
>>> x.bitlength()
Traceback (most recent call last):
  File <string>, line 1, in <module>
AttributeError: 'int' object has no attribute 'bitlength'. Did you mean: 'bit_length'?
>>> 

Another important change is a complete refactoring of comprehensions. The previous version was difficult to undestand / maintain and was not adapted to a future implemention of Python ast.

Brython-3.10.1

31 Oct 10:36
Compare
Choose a tag to compare

The main visible feature in this version is the implementation of "suggestions" introduced in Python 3.10 : in case of a NameError, if the namespace has a name similar to the wrong name, the interpreter suggests "did you mean <similar name> ?".

Brython 3.10.1 on Netscape 5.0 (Windows)
>>> data = 0
>>> datz
Traceback (most recent call last):
  File <string>, line 1, in <module>
NameError: name 'datz' is not defined. Did you mean: 'data'?
>>> 

The same applies to AttributeError:

Brython 3.10.1 on Netscape 5.0 (Windows)
>>> x = 12
>>> x.bitlength()
Traceback (most recent call last):
  File <string>, line 1, in <module>
AttributeError: 'int' object has no attribute 'bitlength'. Did you mean: 'bit_length'?
>>> 

Another important change is a complete refactoring of comprehensions. The previous version was difficult to undestand / maintain and was not adapted to a future implemention of Python ast.

Brython-3.10.0

05 Oct 07:10
Compare
Choose a tag to compare

This version implements most of the features of Python 3.10, including pattern matching (match / case).

Brython-3.9.6

28 Sep 09:07
Compare
Choose a tag to compare

Apart from the usual bug fixes, this version includes:

  • important internal implementation changes (strings, conflicts with reserved Javascript names)
  • major improvement in loading time for programs that use stdlib modules
  • anticipation of Python 3.10 features
  • preliminary work to provide a Python-compliant ast module

Brython-3.9.5

05 Jul 09:22
Compare
Choose a tag to compare

This version is published mainly to fix an issue that broke the interactive interpreter (#1699).

Brython-3.9.4

16 Jun 11:55
Compare
Choose a tag to compare

Main new features in this version:

  • tokenisation of Python code is now compliant with the standard CPython API, with tokens similar to those produced by CPython tokenize module. Rewriting of py2js.js to use these tokens, produced in new script python_tokenizer.js
  • improvements to module browser.ajax + support of binary mode for the built-in function open()
  • rewriting of many special methods for operations (__add__() etc.) on built-in types for better compliance with CPython

Brython-3.9.3

16 May 13:35
Compare
Choose a tag to compare

This release fixes a critical bug on iOS.