Skip to content

Commit 785e6e9

Browse files
authored
Merge pull request #1113 from nteract/pre-3.8.3
Release 3.8.3: narrative examples & SSR alignment
2 parents 966df42 + 0355269 commit 785e6e9

19 files changed

Lines changed: 69 additions & 46 deletions

CHANGELOG.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [3.8.3] - 2026-07-17
11+
12+
### Added
13+
14+
- **Narrative examples.** Added Earthquakes and Europa Languages examples,
15+
including deterministic data fixtures and example-gallery previews.
16+
17+
### Changed
18+
19+
- **Browser/server rendering alignment.** Browser, static SVG, and MCP render
20+
paths now share chart-mode defaults, line and geo styling, legend layout,
21+
temporal histogram configuration, and specialized network, geo, gauge, and
22+
custom-chart rendering behavior.
23+
- **SSR parity coverage.** Replaced the redundant SSR/CSR screenshot matrix
24+
with semantic markup and targeted geometry assertions, while retaining the
25+
dedicated cross-browser visual suite.
26+
27+
### Fixed
28+
29+
- **Docs example route smoke test.** The route contract now targets the
30+
`ExamplePageLayout` title specifically, and the Earthquakes dashboard uses a
31+
nested heading level instead of duplicating the page's H1.
32+
1033
## [3.8.2] - 2026-07-16
1134

1235
### Fixed

README.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,16 @@ AI coding assistants generate correct chart code on the first try.
1616
<img src="./docs/public/assets/img/semiotic-release-dashboard.svg" alt="Semiotic release dashboard showing chart count, bundle sizes, capability coverage, chart families, and documentation growth" width="100%">
1717
<!-- semiotic-readme-dashboard:end -->
1818

19-
## What's New in 3.8.2
19+
## What's New in 3.8.3
2020

21-
3.8.2 makes the hosted MCP accessibility contract internally consistent:
21+
3.8.3 aligns browser and server rendering while tightening the docs release gate:
2222

23-
- Chart schemas, validation, repair guidance, and audits consistently expose `title`,
24-
`description`, `summary`, and `accessibleTable`.
25-
- Hosted `getChartSchema` returns structured output for component lists, schemas, and errors,
26-
including direct and `ChartContainer` accessibility guidance.
27-
- The public MCP profile remains a focused five-tool surface with render-proven `createChart` output.
23+
- Static SVG rendering now shares chart defaults, legend layout, color behavior, and specialized
24+
chart paths with the browser renderers.
25+
- SSR parity coverage compares semantic chart output and targeted rendered geometry without
26+
maintaining a second, redundant visual-snapshot matrix.
27+
- Two new narrative examples—Earthquakes and Europa Languages—exercise geographic and network
28+
visualization paths, and every example source route is smoke-tested in CI.
2829

2930
```jsx
3031
import { LineChart } from "semiotic/xy"

ai/mcp-build-info.test.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import {
44
} from "./mcp-build-info"
55

66
describe("Semiotic MCP build identity", () => {
7-
const packageVersion = "3.8.2"
8-
const surfaceVersion = "3.8.2-ai"
7+
const packageVersion = "3.8.3"
8+
const surfaceVersion = "3.8.3-ai"
99

1010
it("reports explicit repository-nightly provenance and a distinct MCP identity", () => {
1111
const commitSha = "00db062e9ed42be02a9c4f59dbf8396ebd1712cd"
@@ -35,7 +35,7 @@ describe("Semiotic MCP build identity", () => {
3535
})
3636
expect(mcpServerInfoForBuild(buildInfo)).toEqual({
3737
name: "semiotic-nightly",
38-
version: "3.8.2-nightly+00db062",
38+
version: "3.8.3-nightly+00db062",
3939
})
4040
})
4141

@@ -117,7 +117,7 @@ describe("Semiotic MCP build identity", () => {
117117

118118
const serverInfo = mcpServerInfoForBuild(buildInfo)
119119
expect(serverInfo.name).toBe("semiotic-nightly")
120-
expect(serverInfo.version).toBe("3.8.2-nightly+unknown")
120+
expect(serverInfo.version).toBe("3.8.3-nightly+unknown")
121121
expect(serverInfo.version).not.toBe(packageVersion)
122122
})
123123
})

ai/schema.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
33
"name": "semiotic",
4-
"version": "3.8.2",
4+
"version": "3.8.3",
55
"description": "React data visualization library for charts, networks, and beyond",
66
"tools": [
77
{

ai/surface-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"src/components/semiotic-ai.ts",
88
"ai/mcp-server.ts"
99
],
10-
"version": "3.8.2",
10+
"version": "3.8.3",
1111
"components": {
1212
"schema": 54,
1313
"aiChartExports": 51,

benchmarks/setup/cold-consumer-imports.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"schemaVersion": 1,
33
"package": {
44
"name": "semiotic",
5-
"version": "3.8.2"
5+
"version": "3.8.3"
66
},
77
"method": {
88
"artifact": "npm pack --ignore-scripts tarball",
-3.52 KB
Loading
-15.6 KB
Loading

docs/public/assets/img/semiotic-release-dashboard.svg

Lines changed: 10 additions & 10 deletions
Loading
72.7 KB
Loading

0 commit comments

Comments
 (0)