Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Both packages provide format, check, render, completion, and hover operations ov
## Rust quick start

```sh
cargo add stack-engine@0.9.0
cargo add stack-engine@0.9.1
```

```rust
Expand All @@ -43,7 +43,7 @@ The crate supports Rust 1.85 or newer.
## Browser quick start

```sh
npm install @stack-sh/engine@0.9.0
npm install @stack-sh/engine@0.9.1
```

```js
Expand Down
2 changes: 1 addition & 1 deletion crates/stack-engine-wasm/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "stack-engine-wasm"
version = "0.9.0"
version = "0.9.1"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion crates/stack-engine/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "stack-engine"
version = "0.9.0"
version = "0.9.1"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion crates/stack-engine/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Pure Rust layout and SVG rendering for Stack diagrams. The engine reuses the reg

```toml
[dependencies]
stack-engine = "=0.9.0"
stack-engine = "=0.9.1"
```

Rust 1.85 or newer is supported. See the [API documentation](https://docs.rs/stack-engine) and [repository documentation](https://github.com/stack-sh/engine) for rendering, limits, and compatibility. The browser adapter is distributed separately as `@stack-sh/engine` on npm; this crate is the native library.
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/cargo-releasing.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Cargo publication

The native `stack-formatter` 0.1.0 and `stack-engine` 0.9.0 crates use exact registry dependencies. The workspace retains local paths for development, with registry versions declared for Cargo packaging. `stack-engine-wasm` is not published to crates.io; its browser output remains the npm package.
The native `stack-formatter` 0.1.0 and `stack-engine` 0.9.1 crates use exact registry dependencies. The workspace retains local paths for development, with registry versions declared for Cargo packaging. `stack-engine-wasm` is not published to crates.io; its browser output remains the npm package.

## Initial publication

Expand Down
14 changes: 14 additions & 0 deletions docs/releases/v0.9.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Stack Engine 0.9.1

## Clear arrowhead approaches

- Preserve a 16px final orthogonal run before an arrow-marked endpoint when the adjacent two-bend section can move safely, keeping the marker visually separate from its preceding bend.
- Apply the same clearance rule to forward and bidirectional relationships without changing arrowless endpoints.
- Validate each local adjustment against canvas bounds, nodes, fixed text obstacles, and group frames, retaining the original safe route when the adjustment is blocked.
- Keep the visibility-grid search unchanged so dense-layout runtime remains within the existing budget.

The Rust and browser WebAssembly packages share this correction. Public operation, language-intelligence, and theme contracts are unchanged; SVG geometry intentionally differs from 0.9.0 for affected routes. Consumers comparing exact SVG bytes should update reviewed references.

## Verification and rollback

The release keeps the native/WebAssembly parity, Rust 1.85, conformance, standalone SVG, coverage, and layout-performance gates. Roll back consumers by pinning Engine 0.9.0; published package versions and release assets remain immutable.
2 changes: 1 addition & 1 deletion layout-corpus/catalog.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "./schema.json",
"schemaVersion": "1.0",
"engineVersion": "0.9.0",
"engineVersion": "0.9.1",
"performance": {
"warmupIterations": 3,
"measuredIterations": 20,
Expand Down
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/dense-commerce.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/fanout-cross-edges.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/medium-group-flow.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/multilingual-long-labels.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/nested-platform.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/provider-icon-boundary.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions layout-corpus/snapshots/small-request-path.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "stack-engine-workspace",
"private": true,
"version": "0.9.0",
"version": "0.9.1",
"workspaces": [
"packages/engine"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/engine/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stack-sh/engine",
"version": "0.9.0",
"version": "0.9.1",
"description": "Browser WebAssembly adapter for Stack diagram operations",
"type": "module",
"license": "Apache-2.0",
Expand Down
4 changes: 2 additions & 2 deletions tests/wasm.test.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ test("browser diagnostics preserve actionable compiler guidance", () => {
);
assert.ok(actionable);
assert.equal(actionable.render.svg, null);
assert.equal(actionable.check.metadata.engineVersion, "0.9.0");
assert.equal(actionable.check.metadata.engineVersion, "0.9.1");
assert.deepEqual(actionable.check.diagnostics[0], {
code: "STK2002",
severity: "error",
Expand All @@ -232,7 +232,7 @@ test("browser rendering resolves the bundled explicit core icon", () => {
assert.ok(explicitIcon);
assert.deepEqual(explicitIcon.check.diagnostics, []);
assert.deepEqual(explicitIcon.render.diagnostics, []);
assert.equal(explicitIcon.render.metadata.engineVersion, "0.9.0");
assert.equal(explicitIcon.render.metadata.engineVersion, "0.9.1");
assert.equal(explicitIcon.render.metadata.themeCatalogVersion, "0.7.0");
assert.equal(
explicitIcon.render.metadata.themeCatalogRevision,
Expand Down