Hiperspace.Rocks
2.5.39
Prefix Reserved
See the version list below for details.
dotnet add package Hiperspace.Rocks --version 2.5.39
NuGet\Install-Package Hiperspace.Rocks -Version 2.5.39
<PackageReference Include="Hiperspace.Rocks" Version="2.5.39" />
<PackageVersion Include="Hiperspace.Rocks" Version="2.5.39" />
<PackageReference Include="Hiperspace.Rocks" />
paket add Hiperspace.Rocks --version 2.5.39
#r "nuget: Hiperspace.Rocks, 2.5.39"
#:package Hiperspace.Rocks@2.5.39
#addin nuget:?package=Hiperspace.Rocks&version=2.5.39
#tool nuget:?package=Hiperspace.Rocks&version=2.5.39
Hiperspace.Rocks
RocksDB is a remarkable technology, originally developed by Google (LevelDB) and optimized by Facebook for
absolutely lowest possible latency writing to SSD devices.
RocksDB used Log-structured-Merge (LSM) to stream updates while maintaining fast key access.
It is used both as a key/value database, and also as a driver for relational-databases, message-stores,
blockchain and various analytical services. The use of LSM optimizes performance and life of SSD devices.
Hiperspace.Rocks uses RockDB to store elements in durable SSD memory
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Hiperspace (>= 2.5.39)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- protobuf-net.Core (>= 3.2.56)
- RocksDB (>= 10.4.2.64152)
- System.Numerics.Tensors (>= 10.0.5)
-
net8.0
- Hiperspace (>= 2.5.39)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- protobuf-net.Core (>= 3.2.56)
- RocksDB (>= 10.4.2.64152)
- System.Numerics.Tensors (>= 10.0.5)
-
net9.0
- Hiperspace (>= 2.5.39)
- Microsoft.Bcl.HashCode (>= 6.0.0)
- protobuf-net.Core (>= 3.2.56)
- RocksDB (>= 10.4.2.64152)
- System.Numerics.Tensors (>= 10.0.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.5.43 | 28 | 4/1/2026 |
| 2.5.39 | 87 | 3/20/2026 |
| 2.5.35 | 98 | 2/27/2026 |
| 2.5.33 | 103 | 2/14/2026 |
| 2.5.32 | 104 | 1/30/2026 |
| 2.5.29 | 106 | 1/17/2026 |
| 2.5.28 | 111 | 12/31/2025 |
| 2.5.26 | 190 | 12/21/2025 |
| 2.5.21 | 446 | 12/10/2025 |
| 2.5.18 | 677 | 12/3/2025 |
| 2.5.13 | 216 | 11/24/2025 |
| 2.5.8 | 195 | 11/15/2025 |
| 2.5.2 | 234 | 11/6/2025 |
| 2.5.0 | 216 | 10/20/2025 |
| 2.4.6 | 226 | 9/23/2025 |
| 2.4.4 | 301 | 8/7/2025 |
| 2.4.2 | 190 | 7/28/2025 |
| 2.4.0 | 219 | 7/10/2025 |
| 2.3.8 | 223 | 7/1/2025 |
| 2.3.7 | 215 | 6/18/2025 |
https://www.cepheis.com/hiperspace/20260320
# Overview
This release introduces two significant enhancements to hyperspace, to support [Mult-version concurrency control](https://en.wikipedia.org/wiki/Multiversion_concurrency_control) in **Hiperspace.DB**, and [Mermaid](https://mermaid.js.org/) [Markdown](https://en.wikipedia.org/wiki/Markdown) documentation for **#AI** agents.
## Multi-Version Concurrency Control (MVCC)
MVCC is rarely needed for normal Hiperspace transactions because it is possible to use [CQRS](https://en.wikipedia.org/wiki/Command_Query_Responsibility_Segregation) to apply a change to *elements* in Hiperspace that are invisible to other sessions (using `Horizon` filters), but this is not practical for **Cube** aggregation, where it would be possible to have inconsistent aggregates while updates are applied in real-time.
This implementation of MVCC follows the [ISO SQL](https://en.wikipedia.org/wiki/SQL) standard that every database change is enrolled in a transaction and only visible to other sessions when the *transaction* is committed and backed-out on rollback. There are no nested transactions, since the implementation (in **Hiperspace.DB**) is efficient and combined with the `@DeltaIndex` functionality for efficient point-in-time access.
For local *hiperspaces* (e.g. [Hiperspace.Rocks](Hiperspace.Rocks)) transactions are automatic, and `Rollback()` will return false
```
public bool Commit() => Commit(Transaction);
public bool Rollback() => Rollback(Transaction);
```
## MarkDown documentation with HiLang
The [HILang](HiLang) *schema* compiler generates a *Domain Specific DataBase* that can be used in a client application (including web-assembly) for object persistence either to a local hiperspace (e.g. [Hiperspace.Rocks](Hiperspace.Rocks)) or remotely using **Hiperspace.DB** either with *lazy loading* of reference or *eager loading* using `message`. Message is analogous to stored procedures that execute on the server (using message `key`) and return full object `value` in response using a shared DSDB code.
Code is generated during compilation to produce a DSDB with a number of transformations:
* Segments (many) are specialized for the Element that references them
* Aspects (one) are specialized for the Element that references them
* `@CubeFact` elements are transformed adding properties for aggregation
* `@CubeFact` elements are transformed to provide `_Cube` aggregates and `_Fact` cube cell aggregates
* `@CubeDimension` elements are transformed to include *DrillDown* to aggregates via *lazy* property
These transformations are not visible to **AI Agents** because the generated code is ephemeral (*using the Indonesian word **hilang***). For *agent-based development*, the HiLang schema can be generated to markdown files using the `%markdown` directive in source.
### Schema.md
For each `.hilang` schema file a matching `.md` file is generated containing formatted documentation in a **AI** friendly form, with a *mermaid* diagram of the data-model. This documentation file matches the structure of the `.hilang` schema
### Schema-physical.md
For each `.hilang` schema file a matching `.md` file is generated containing formatted documentation in a **AI** friendly form, with a *mermaid* diagram of the data-model. This documentation file matches the generated classes, including all the transformations referenced above
### Schema-cube.md
This markdown file contains only `_Cube` elements and the related *dimensions*
### Schema-graph.md
This markdown file contains only graph (`Node` and `Edge`) elements and a diagram of relations