From c9c74bafbd02be00913960ea01cb7d91abdaa05d Mon Sep 17 00:00:00 2001 From: Endri Bezati Date: Sat, 24 Oct 2026 05:58:16 +0200 Subject: [PATCH 1/2] release: Dialogram API 0.8.0, extension 0.3.0 The Unreleased section becomes [0.8.0] - 2026-10-24 (#90-#107): group containers, facts, badges, panel links and editable fields, outline rows, read-only views, the status overlay, edge kinds, captions once per trunk, the Java ELK server, the headless renderer and the export's running ring. `DIALOGRAM_API_VERSION` is 0.8.0. Every addition is opt-in, but a product that uses one needs this platform, and compatibility is exact major.minor while pre-1.0, so consumers raise `EXPECTED_DIALOGRAM_API_VERSION` to 0.8.0. The extension (the VSIX) goes from 0.2.0 to 0.3.0. Claude-Session: https://claude.ai/code/session_01E8WfqKknDNN6xpNVcJL5K8 --- CHANGELOG.md | 14 ++++++++++++++ packages/extension-core/src/api.ts | 2 +- packages/extension-core/test/api-version.test.ts | 8 ++++++-- packages/extension/package.json | 2 +- 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d41cd2..ce2ac83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,20 @@ platform API version. ## [Unreleased] +## [0.8.0] - 2026-10-24 + +What a producer of document-like diagrams needs: group containers, facts, +header badges, links and editable fields in the property panel, outline rows, +read-only views, a status overlay, edge kinds on connect, captions once per +trunk, and the Java ELK server for large graphs; plus the headless renderer +and a faithful SVG export of running nodes. (#90-#107) + +Every addition is opt-in and the exported API only grows, but the minor bump +is deliberate: a product that uses any of it needs this platform, and +compatibility is exact major.minor while pre-1.0. **Consumers must raise +`EXPECTED_DIALOGRAM_API_VERSION` to `0.8.0`** in their `extension/main.ts`, or +the platform refuses to load for them. + ### Added - `DiagramProfile.clientStylesheets` (and `SidecarProfileInput.clientStylesheets`): diff --git a/packages/extension-core/src/api.ts b/packages/extension-core/src/api.ts index 0aab343..f914685 100644 --- a/packages/extension-core/src/api.ts +++ b/packages/extension-core/src/api.ts @@ -44,7 +44,7 @@ export type { AcpConnectorConfig, AcpConnectorFiles }; * Semver of the API contract. Consumers must check the major version on * activation and fail with an actionable message on mismatch. */ -export const DIALOGRAM_API_VERSION = "0.7.0"; +export const DIALOGRAM_API_VERSION = "0.8.0"; /** The extension id consumers pass to `vscode.extensions.getExtension`. */ export const DIALOGRAM_EXTENSION_ID = "ebezati.dialogram"; diff --git a/packages/extension-core/test/api-version.test.ts b/packages/extension-core/test/api-version.test.ts index 9332114..37591e2 100644 --- a/packages/extension-core/test/api-version.test.ts +++ b/packages/extension-core/test/api-version.test.ts @@ -2,8 +2,8 @@ import { describe, expect, it } from 'vitest'; import { DIALOGRAM_API_VERSION, isApiVersionCompatible } from '../src/api'; describe('DIALOGRAM_API_VERSION', () => { - it('is 0.7.0', () => { - expect(DIALOGRAM_API_VERSION).toBe('0.7.0'); + it('is 0.8.0', () => { + expect(DIALOGRAM_API_VERSION).toBe('0.8.0'); }); }); @@ -32,6 +32,10 @@ describe('isApiVersionCompatible', () => { expect(isApiVersionCompatible('0.7.0', '0.7.0')).toBe(true); expect(isApiVersionCompatible('0.7.0', '0.6.0')).toBe(false); expect(isApiVersionCompatible('0.6.0', '0.7.0')).toBe(false); + // 0.8.0 likewise: every shell raises its expectation to 0.8.0. + expect(isApiVersionCompatible('0.8.0', '0.8.0')).toBe(true); + expect(isApiVersionCompatible('0.8.0', '0.7.0')).toBe(false); + expect(isApiVersionCompatible('0.7.0', '0.8.0')).toBe(false); expect(isApiVersionCompatible('1.0.0', '0.1.0')).toBe(false); }); diff --git a/packages/extension/package.json b/packages/extension/package.json index ac09a51..6bea551 100644 --- a/packages/extension/package.json +++ b/packages/extension/package.json @@ -1,7 +1,7 @@ { "name": "dialogram", "description": "Dialogram — talk to your diagrams. GLSP diagram platform with integrated agent chat, consumed by other extensions through its exported API.", - "version": "0.2.0", + "version": "0.3.0", "displayName": "Dialogram", "publisher": "ebezati", "author": "Endri Bezati", From c979c4a6c8c621de2181563a5334f5800e66b5a0 Mon Sep 17 00:00:00 2001 From: Endri Bezati Date: Sat, 24 Oct 2026 05:58:33 +0200 Subject: [PATCH 2/2] release: the lockfile records the extension at 0.3.0 Claude-Session: https://claude.ai/code/session_01E8WfqKknDNN6xpNVcJL5K8 --- package-lock.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 4444163..37a10d6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8358,7 +8358,7 @@ }, "packages/extension": { "name": "dialogram", - "version": "0.2.0", + "version": "0.3.0", "license": "(EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0)", "dependencies": { "@dialogram/diagram-client": "*",