Skip to content

Releases: howtis/python-embed

python-embed-maven-plugin v1.0.2

26 Jun 06:49

Choose a tag to compare

python-embed-build-common v1.0.2

26 Jun 06:39

Choose a tag to compare

python-embed-spring-boot-starter v1.0.3

25 Jun 09:05

Choose a tag to compare

python-embed-spring-boot-starter v1.0.2

24 Jun 03:08

Choose a tag to compare

Added

  • Spring Boot Configuration Metadata for IDE autocompletion (spring-configuration-metadata.json)
  • Missing option properties for pool settings (minPool, maxPool, maxIdle, keepAlive, startupTimeout, healthCheckIntervalMs)

Changed

  • Independent module versioning with starter-v* publish tags
  • Version extracted from git tags in publish workflow

python-embed-runtime v1.0.2

24 Jun 03:08

Choose a tag to compare

Changed

  • Independent module versioning with runtime-v* publish tags
  • Version extracted from git tags in publish workflow

python-embed-gradle-plugin v1.0.2

24 Jun 03:08

Choose a tag to compare

Added

  • targetOs property for cross-compilation in Gradle plugin (windows, linux, macos)

Fixed

  • Cross-platform compatibility in VenvTask.extractTarGz: backslashes converted to forward slashes in tar entry paths

Changed

  • Upgrade com.gradle.plugin-publish 1.3.1 → 2.1.1 with compatibility declaration
  • Add Gradle wrapper to plugin subproject for CI independence
  • Independent module versioning with plugin-v* publish tags
  • Version extracted from git tags in publish workflow

v1.0.1

24 Jun 03:08

Choose a tag to compare

Changed

  • Add default_encoder fallback to msgpack.packb in write_frame for broader type compatibility
  • Include MIT LICENSE file in all JAR artifacts

v1.0.0 - First Stable Release

23 Jun 09:44

Choose a tag to compare

What's New

Core Runtime

  • Embed CPython in JVM via subprocess + MessagePack binary protocol
  • PythonEmbed runtime with eval, exec, execFile, and toJson APIs
  • PythonEmbedPool with auto-scaling and async CompletableFuture API
  • Object handles with numeric ID referencing for long-lived Python objects
  • Generator/streaming support via Java Iterator
  • Python-to-Java callbacks via _bridge.call() and _bridge.push()
  • Batch execution (batchEval/batchExec) for multiple requests in one round-trip
  • Proxy objects (PythonProxy) with dynamic Java interface implementation
  • Builder API with fluent construction for PythonEmbed and PythonEmbedPool
  • Type-safe argument conversion (arg()): null, Boolean, Number, String, List, Map, Set, byte[], datetime
  • Python log forwarding to SLF4J via python.* logger namespace
  • Periodic health check with RSS memory, ref count, and GC status reporting
  • Close hook support for resource cleanup

Spring Boot Starter

  • Spring Boot 3.x auto-configuration (python-embed-spring-boot-starter)
  • SINGLE and POOL modes with Actuator HealthIndicator

Gradle Plugin

  • Gradle plugin (python-embed-gradle-plugin) for venv creation and package installation
  • Python auto-download via python-build-standalone when system Python is absent

Examples

  • 13 example applications in python-embed-examples