v0.24.3¶
Release date: 2026-08-10
Early Access
The Luminary Cloud API and Python SDK are Early Access features that are still under development. View the Luminary Cloud Early Access Terms. The interface may change, and you may need to migrate or discard scripts and configuration files multiple times before v1.0.0 is released. In the future, migrations may also be necessary when upgrading to new major versions of the SDK (e.g. v2.0.0).
Release Notes¶
This release exposes an explicit tolerance on every geometry boolean operation, adds a blade-to-blade extract for turbomachinery solutions, lets surface streamlines advect on a parent filter’s cut plane, and fixes several visualization and upload issues.
Breaking Changes¶
None.
Features¶
All geometry boolean operations now accept an explicit keyword-only
tolerance: float = 0, the distance within which geometry is treated as coincident during the operation.0(the default) preserves the existing behavior. Added toVolumeSelection.union(),VolumeSelection.subtract(),VolumeSelection.intersection(),VolumeSelection.chop(),VolumeSelection.imprint(), andGeometry.add_farfield().VolumeSelection.stitch()no longer requires a tolerance.tolerancenow defaults to0, which lets the geometry kernel choose one automatically; only negative values are rejected. Existing calls that pass a positive tolerance are unaffected.New
vis.blade_to_blade()submits an asynchronous blade-to-blade extract for a turbomachinery solution. It slices the volume at one or more constant radii about the machine axis and unwraps each slice into a 2D(z, r*theta)surface, written as a VTK.vtufile with all point fields carried along. Returns aFilterDataOutputhandle; callwait()thendownload().Note: This feature is experimental and may change in a future release.
New
SurfaceStreamlineMode.ADVECT_ON_PARENT_SURFACEconstrains particle advection to the 2D output of a parent filter — aSlice,MultiSliceorIsosurfaceset viaset_parent()— instead of named mesh surfaces, so you can see the in-plane flow on a cut. Velocity is a valid field in this mode (unlike on walls, where it is zero).BoxClip,PlaneClipandThresholdpass the surface through, soSlice -> Clip -> Streamlinesworks. Named surfaces and a non-zerooffsetare not supported in this mode and raise aValueError.
Deprecations¶
None.
Bug Fixes / Improvements¶
SurfaceStreamlines.sampling_rateis now applied. It was never sent to the server, so the value silently had no effect. The default is now10, and the value must be an integer in the range[1, 1000].DisplayAttributes.opacityis now carried through to the render request. It was previously documented and settable but silently dropped.Render and extract status is now always a
RenderStatusTyperather than degrading to a raw integer after the firstrefresh(). A backend render failure now reports the actual status instead of raisingAttributeError: 'int' object has no attribute 'name'.Transient network errors during file uploads to cloud storage are now retried, fixing intermittent
ConnectionErrorfailures when uploading geometry and mesh files.Surface validation for
SurfaceStreamlinesandSurfaceLICis now applied consistently across image renders, data extracts and interactive scenes.
Migration Guide¶
No breaking changes.