@tscircuit/pcb-viewer 1.11.412 → 1.11.414

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -98,27 +98,30 @@ continuously. The main thread handles React, interaction, and view messages.
98
98
  There is no bitmap zoom-settle delay or pool of raster workers.
99
99
 
100
100
  Pass `renderer="canvas"` to explicitly use the existing Canvas renderer. WebGPU
101
- also falls back to Canvas when WebGPU/OffscreenCanvas is unavailable, initialization
102
- fails, the GPU device is lost, or the scene includes unsupported geometry (such
103
- as dimension annotations or interpolated trace routes). The initial GPU geometry compile
101
+ stays selected when WebGPU/OffscreenCanvas is unavailable, initialization fails,
102
+ the GPU device is lost, or the scene includes unsupported geometry (such as
103
+ dimension annotations or interpolated trace routes). These failures display an
104
+ error in the viewer and release the worker; they never start the Canvas renderer.
105
+ If the installed WebGPU renderer does not support X-Ray, the viewer displays a
106
+ notice and keeps the GPU view visible. The initial GPU geometry compile
104
107
  still takes time on large boards, but runs in the worker. Curves use fixed
105
108
  triangle tessellation and can show facets at extreme zoom.
106
109
 
107
110
  Right-click the board and choose **Rendering Engine → Canvas** or
108
111
  **WebGPU (experimental)** to switch without resetting pan, zoom, or layer visibility.
109
112
  The `renderer` prop sets the initial selection; changing that prop updates the selection.
110
- Selecting WebGPU still permits automatic Canvas fallback on unsupported devices or scenes.
113
+ Switching to Canvas always requires an explicit engine selection.
111
114
 
112
115
  Run `bun run test:webgpu` after `bunx playwright install chromium` to test the built
113
116
  viewer bundle, AM3352 wheel zoom, resize, StrictMode cleanup, context-menu switching,
114
- and fallbacks. The Cosmos `WebGpuAm3352` fixture also switches between backends.
117
+ and failure handling. The Cosmos `WebGpuAm3352` fixture also switches between backends.
115
118
 
116
119
  The WebGPU integration is still experimental. The complete imported Canvas suite
117
120
  currently exposes substantial non-text parity gaps, including soldermask, trace
118
121
  clipping, and keepouts. See the renderer's
119
122
  [full parity report](https://github.com/tscircuit/circuit-json-webgpu/blob/main/tests/parity/latest-report.json).
120
123
  The integration PR remains draft until these are resolved; existing diagnostics
121
- and Canvas fallback do not yet detect every visual mismatch.
124
+ do not yet detect every visual mismatch.
122
125
 
123
126
  The WebGPU renderer is installed as a bundled devDependency from
124
127
  `https://jscdn.tscircuit.com/@tscircuit/circuit-json-webgpu/0.0.3.tgz`.
package/dist/index.d.ts CHANGED
@@ -82,7 +82,7 @@ type Props = {
82
82
  circuitJson?: AnyCircuitElement[];
83
83
  height?: number;
84
84
  /** Initial engine; users can switch via the context menu. Prop changes reset it.
85
- * WebGPU runs in a worker and falls back to Canvas when unavailable. */
85
+ * WebGPU runs in a worker and reports failures without changing engines. */
86
86
  renderer?: "webgpu" | "canvas";
87
87
  allowEditing?: boolean;
88
88
  editEvents?: ManualEditEvent[];