Skip to content

Releases: mmomtchev/pymport

v1.5.1

02 Apr 15:21
Compare
Choose a tag to compare
  • Fix the build with recent Node.js versions after node_api_nogc_env in Node.js 18.20

v1.5.0

08 Feb 22:55
Compare
Choose a tag to compare
  • Add Python 3.12 support and upgrade the built-in Python to 3.12.2
  • Drop Node.js 14 support

v1.4.3

29 Oct 17:40
Compare
Choose a tag to compare
  • Fix #104, do not mess up the loading of additional binary modules after pymport

v1.4.2

28 Aug 12:36
Compare
Choose a tag to compare
  • Builtin Python updated to 3.10.13

v1.4.1

02 May 00:07
Compare
Choose a tag to compare
  • Node.js 20 support
  • Builtin Python updated to 3.10.11
  • Fix [#78], a single Buffer argument is interpreted as kwargs

v1.4.0

22 Jan 17:47
Compare
Choose a tag to compare
  • The new minimum supported versions of Node.js are now v12.22.0, v14.17.0, v16.0.0

New Features

  • Allow limiting the depth of the recursion of toJS()
  • Allow disabling of the generic Buffer protocol transformation to toJS()
  • Add PyObject.prototype.map method compatible with Array.prototype.map
  • Proxified functions are now also Proxy objects, resolves #58
  • PyObject.item() now returns undefined instead of throwing an exception when an element cannot be retrieved by []
  • Allow enabling of debug output via the environment (PYMPORT_DEBUG_sys vars)
  • Improved bootstrap and shutdown allowing to load and unload the addon in worker_threads, partially resolves #69
Bug Fixes
  • Fix #66, race condition can result in an abort when using pymport with worker_threads
  • Fix #40, patch _sysconfigdata after installation
  • Fix #70, random crash in a worker_thread
  • Fix #69, pymport leaks TLS memory when used in a worker_thread

v1.4.0-rc.1

19 Jan 23:03
Compare
Choose a tag to compare
v1.4.0-rc.1 Pre-release
Pre-release

The new minimum supported versions of Node.js are now v12.22.0, v14.17.0, v16.0.0

New Features

  • Allow limiting the depth of the recursion of toJS()
  • Allow disabling of the generic Buffer protocol transformation to toJS()
  • Add PyObject.prototype.map method compatible with Array.prototype.map
  • Proxified functions are now also Proxy objects, resolves #58
  • PyObject.item() now returns undefined instead of throwing an exception when an element cannot be retrieved by []
Bug Fixes
  • Fix #66, race condition can result in an abort when using pymport with worker_threads
  • Fix #40, patch _sysconfigdata after installation
  • Fix #70, use the correct event loop when running in a worker_thread

v1.4.0-rc.0

19 Jan 20:31
Compare
Choose a tag to compare
v1.4.0-rc.0 Pre-release
Pre-release
  • The new minimum supported versions of Node.js are now v12.22.0, v14.17.0, v16.0.0

New Features

  • Allow limiting the depth of the recursion of toJS()
  • Allow disabling of the generic Buffer protocol transformation to toJS()
  • Add PyObject.prototype.map method compatible with Array.prototype.map
  • Proxified functions are now also Proxy objects, resolves #58
  • PyObject.item() now returns undefined instead of throwing an exception when an element cannot be retrieved by []
Bug Fixes
  • Fix #66, race condition can result in an abort when using pymport with worker_threads
  • Fix #40, patch _sysconfigdata after installation
  • Fix #70, use the correct event loop when running in a worker_thread

v1.3.1

07 Jan 19:15
Compare
Choose a tag to compare
  • Fix #63, restore the executable bit of pympip3
  • Fix #40, revert and lock setuptools for the builtin interpreter to 65.1.1 due to setuptools#3589
  • Fix #60, proxified objects are not GCed
  • Fix #48, do not consider falsy properties as being undefined
  • Fix #50, proxified .toString() is not identical to PyObject.toString()

v1.3.0

22 Dec 21:13
Compare
Choose a tag to compare

New Features

  • Builtin Python 3.10.9
  • Multithreading safety
  • callAsync method allowing asynchronous calling of Python functions
  • On Linux and macOS, the builtin Python interpreter includes static versions of OpenSSL and libffi, this ensures better compatibility at the price of disabling the OpenSSL extensions supporting dedicated crypto hardware - this restriction does not apply if pymport is rebuilt from source
  • Named ES6 exports
  • Add PyObject.with implementing Python with
  • Return the Python exception object and its constructor in PythonError.pythonValue and PythonError.pythonType

Bug Fixes

  • Fix #27, a function as a single argument is considered a kwargs object
  • Fix #33, PyObject.prototype.constr has wrong TypeScript type