Skip to content

Latest commit

 

History

History
62 lines (56 loc) · 2.7 KB

ChangeLog.md

File metadata and controls

62 lines (56 loc) · 2.7 KB

0.3.0.0 [2026.10.15]

  • Support for asynchronous execution added in module Python.Inline.Async. It uses API modelled after async package. Such computations could be interrupted using cancelPy even when they're running python code or haskell callback/
  • When threaded runtime is used runPyInMain could be reliably interrupted by asynchronous exceptions.
  • Python module inline_python is now available. It contains exception types used by library: AsyncCancelled and HaskellError which wraps haskell exception from callback.
  • Python.Inline.Monad and Python.Inline.Monad.QQ modules providing monadic API. It uses MonadPy type class which allows user code to carry around python dictionaries with global and local scopes.
  • Package now uses Custom build type. It now supports configuring python using python3-config instead of pkg-config when -fpython3-config manual cabal flag is set. Default behavior is unchanged.
  • Haskell exception raised in haskell callback will be rethrown if not caught by python instead of being converted to PyError.
  • evalPyFunction is added to company of eval and exec. It uses new PyQuoteFun data type as parameter.
  • pySource quasiquoter added. It loads python code from file.
  • createModule added which gives standard way of defining python code.
  • Bug fixes:
  • Memory leak in exception handling is fixed. Python exception object were never freed when exception propagated to haskell side.
  • bindVar and codeFromString, codeFromText violated memory safety but happened to work correctly when strings were created by TH. Consider upgrade if using them.

0.2.1.0 [2026.01.13]

  • From/ToPy instance for Integer&Natural added.
  • vector-0.13.2 is required.
  • Python>=3.10 is supported. Boolean marshaling with python<3.12 is fixed. Previously it caused crashes on counter decrement.
  • Documentation fixes.

0.2 [2025.05.04]

  • FromPy/ToPy instances added for: Complex, both strict and lazy Text & ByteString, ShortByteString, Maybe a.
  • Module Python.Inline.Eval added which support for eval/exec with user supplied global and local variables.
  • QuasiQuotes Python.Inline.QQ.pycode added for creating PyQuote data type.

0.1.1.1 [2025.03.10]

  • Crash of python's main thread when one attempts to interrupt it fixed.

0.1.1 [2025.02.13]

  • Number of deadlocks in runPyInMain fixed:
    • It no longer deadlocks if exception is thrown
    • Nested calls no longer deadlock.
    • Calling it from python callback.
  • ToPy instance added for Py b, a -> Py b, a1 -> a2 -> Py b

0.1 [2025.01.18]

Initial release