Release 5th May 2025

Change Control note --version 2.2.2

Overview

This release is concerned with asynchronous execution, particularly in a Blazor web-assembly environment where all IO must be async to avoid blocking the UI thread. All Async functions now use underlying async functions rather that dispatching Tasks

HiperSpace

BatchBindAsync and GetAsync now call the driver async functions

Horizons

Horizon filters provide a mechanism to fine-grained access control, and context dependent filterning of content. The most common filter is to provide logical delete to remove deleted elements from from read view, but present for update views.

Horizon now supports async filters for complex horizons that depend on other elements (that may need to be fetched over the network).

KeyRef

KeyRef<> has the additional method ValueAsync() that will fetch a value asyncronously if needed (the value is cached for further reference)

RefSet

RefSet<> has an additional method AsAsyncEnumerable(CancellationToken cancellationToken) that can be used to access elements asyncronously

RefSingle

RefSingle<> is a special case of KeyRef for aspects (optional one-of) that is bound to the woining element so that it cane be used like a property. ValueAsync() has been added for async access.

SetSpace

SetSpace<> has additional functions for Async (filter, insert, update, deletem, get) operations without blocking and AsAsyncEnumerable(CancellationToken cancellationToken) for asyncronous access to the full set

Hilang

The language compiler for Hiperspace domain spaces has been updated to generate code that uses async interfaces

Additional functions are provided for async access to the properties that might require network IO. e.g.

entity Customer [Accounts : Account];
segment Account (...) {...};

will generate a storage element CustomerAccounts with a property owner : Customer to access the owner of the segment element. CustomerAccounts now has an ownerAsync() member that retrieves the custoemr asyncronously

This release extends the Hipperspace model to better support streaming aggregation of Cube and viewing of aggregates part of graph view. It also updated SessionSpace to use stream replication rather than Zip file compression.

Release 6th June 2025 Release 5th May 2025 Release 14th April 2025
Copyright © Cepheis 2024