Skip to content

Releases: finos/rune-python-runtime

Rune Functions Support

17 Apr 19:12
346c8b4

Choose a tag to compare

Rune Python Runtime 2.0.0

Rune Python Runtime 2.0.0 is a major update focused on function execution support, safer mutation semantics, and better compatibility with generated Rune model packages.

Highlights

  • Added first-class runtime support for generated Rune functions.
  • Introduced replaceable function proxies, scoped function replacement, unchecked invocation helpers, and native function registration/loading.
  • Added copy-on-write support for models, builders, lists, dicts, and sets so generated functions can work with mutable views without mutating original inputs.
  • Introduced ObjectBuilder for draft-style model construction and materialization into validated Rune models.
  • Improved BaseDataClass, metadata, and reference handling to better support Pydantic validation, function return finalization, and internal, external, and scoped references.
  • Added support for namespace-prefixed model installations, allowing prefixed generated packages and native implementations to be resolved correctly.
  • Aligned utility behavior more closely with Rune semantics for null handling, list operations, attribute resolution, and cardinality checks.
  • Expanded test coverage across function execution, copy-on-write behavior, object building, key/reference resolution, namespace-prefix handling, and runtime utilities.

Breaking Changes

  • Some older mutation-oriented helper patterns have been replaced by ObjectBuilder, copy-on-write wrappers, and rune_add_to_list.
  • Edge-case behavior involving None, empty collections, and list comparisons now follows Rune semantics more closely and may differ from 1.x releases.

Upgrade Notes

  • Update any custom code that relied on Draft to use ObjectBuilder.
  • Review custom integrations around runtime helper utilities if they depended on legacy mutation helpers.
  • If you use generated Rune functions or prefixed generated packages, upgrade the runtime together with a compatible generator output.

This release lays the foundation for richer generated-function support in Python while improving model safety, interoperability, and correctness.

Release to PyPi

27 Mar 21:42
a327e5a

Choose a tag to compare

Merge pull request #26 from finos/plamen-neykov-patch-1

Update pyproject.toml

Minor fix of the serialization interface

11 Nov 21:35
dc70e22

Choose a tag to compare

Fixes an inconsistency in the deserialization interface when a json string is supplied.

Update to datetime handling

20 Aug 18:47
9ccdd8d

Choose a tag to compare

Merge pull request #9 from finos/plamen-neykov-patch-1

Update run-tests.yml

Build system refactoring

20 Jun 15:51
25a43a8

Choose a tag to compare

Consolidated all dependencies in the pyproject.toml and removed auxiliary dependency files.

Minor fix to check also allowed meta of the type itself.

04 Apr 20:24
3453547

Choose a tag to compare

Merge pull request #7 from Cloudrisk/develop

minor fix to check in addition to _KEY_REF_CONSTRAINTS the type speci…

Fix for reference resolution bug

03 Apr 22:51
067d045

Choose a tag to compare

Merge pull request #6 from Cloudrisk/develop

fixed the reference resolution issue when deeper nesting was present

Flag to control constraints execution

19 Mar 00:21
898da12

Choose a tag to compare

Merge pull request #5 from Cloudrisk/develop

Develop

Better handling of type mismatches

18 Mar 22:41
0ef584a

Choose a tag to compare

Merge pull request #4 from Cloudrisk/develop

Develop

Allow basic types with metadata to be initialised by its underlying type

17 Mar 21:56
b0d5f12

Choose a tag to compare

Merge pull request #3 from Cloudrisk/develop

allow ..WithMeta data types to be initialized with objects of the bas…