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
17 changes: 0 additions & 17 deletions .changeset/compiler-fallback-loop-tools.md

This file was deleted.

10 changes: 0 additions & 10 deletions .changeset/compiler-shadowed-loop-tools.md

This file was deleted.

15 changes: 0 additions & 15 deletions .changeset/document-source-metadata.md

This file was deleted.

11 changes: 0 additions & 11 deletions .changeset/native-batched-tool-authoring.md

This file was deleted.

14 changes: 0 additions & 14 deletions .changeset/runtime-error-tool-formatting.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/safe-path-panic-formatting.md

This file was deleted.

12 changes: 0 additions & 12 deletions .changeset/strict-scope-rules.md

This file was deleted.

11 changes: 0 additions & 11 deletions .changeset/ternary-condition-source-mapping.md

This file was deleted.

47 changes: 47 additions & 0 deletions packages/bridge-compiler/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,52 @@
# @stackables/bridge-compiler

## 2.4.1

### Patch Changes

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Add memoized tool handles with compiler support.

Bridge `with` declarations now support `memoize` for tool handles, including
loop-scoped tool handles inside array mappings. Memoized handles reuse the same
result for repeated calls with identical inputs, and each declared handle keeps
its own cache.

The AOT compiler now compiles memoized tool handles too, including loop-scoped
tool handles inside array mappings. Compiled execution preserves request-scoped
caching semantics and reuses results for repeated calls with identical inputs.

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Compile shadowed loop-scoped tool handles in the AOT compiler.

Bridges can now redeclare the same tool alias in nested array scopes without
triggering `BridgeCompilerIncompatibleError` or falling back to the interpreter.
The compiler now assigns distinct tool instances to repeated handle bindings so
each nested scope emits and reads from the correct tool call.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Move Bridge source metadata onto BridgeDocument.

Parsed documents now retain their original source text automatically, and can
optionally carry a filename from parse time. Runtime execution, compiler
fallbacks, GraphQL execution, and playground formatting now read that metadata
from the document instead of requiring callers to thread source and filename
through execute options.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Fix segment-local `?.` traversal so later strict path segments still fail after a guarded null hop, and preserve source formatting for `panic` control-flow errors.

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Fix strict nested scope resolution for array mappings.

Nested scopes can now read iterator aliases from visible parent scopes while
still resolving overlapping names to the nearest inner scope. This also keeps
invalid nested tool input wiring rejected during parsing.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Improve runtime error source mapping for ternary conditions and strict path traversal.

Runtime and compiled execution now preserve clause-level source spans for ternary conditions and branches, so formatted errors can highlight only the failing condition or selected branch instead of the whole wire.
Strict path traversal also now fails consistently on primitive property access in both runtime and AOT execution, keeping error messages and behavior aligned.

- Updated dependencies [[`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`375e2b0`](https://github.com/stackables/bridge/commit/375e2b08a16f670cded3aba7d6e2ee52254eab1c), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942)]:
- @stackables/bridge-core@1.6.0
- @stackables/bridge-stdlib@1.5.3

## 2.4.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-compiler/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stackables/bridge-compiler",
"version": "2.4.0",
"version": "2.4.1",
"description": "Compiles a BridgeDocument into highly optimized JavaScript code",
"main": "./build/index.js",
"type": "module",
Expand Down
58 changes: 58 additions & 0 deletions packages/bridge-core/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,63 @@
# @stackables/bridge-core

## 1.6.0

### Minor Changes

- [#112](https://github.com/stackables/bridge/pull/112) [`375e2b0`](https://github.com/stackables/bridge/commit/375e2b08a16f670cded3aba7d6e2ee52254eab1c) Thanks [@aarne](https://github.com/aarne)! - Improve native batched tool authoring by documenting the feature, exporting dedicated batch tool types, and simplifying the batch contract to plain input arrays.

Batch tools now receive `Input[]` and must return `Output[]` in matching order. Batched tool tracing and logging are also emitted once per flushed batch call instead of once per queued item.

Native batching now works in compiled execution as well as the runtime interpreter. Batch tools can also signal partial failures by returning an `Error` at a specific result index, which rejects only that item and allows normal wire-level `catch` fallbacks to handle it.

### Patch Changes

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Add memoized tool handles with compiler support.

Bridge `with` declarations now support `memoize` for tool handles, including
loop-scoped tool handles inside array mappings. Memoized handles reuse the same
result for repeated calls with identical inputs, and each declared handle keeps
its own cache.

The AOT compiler now compiles memoized tool handles too, including loop-scoped
tool handles inside array mappings. Compiled execution preserves request-scoped
caching semantics and reuses results for repeated calls with identical inputs.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Move Bridge source metadata onto BridgeDocument.

Parsed documents now retain their original source text automatically, and can
optionally carry a filename from parse time. Runtime execution, compiler
fallbacks, GraphQL execution, and playground formatting now read that metadata
from the document instead of requiring callers to thread source and filename
through execute options.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Improve formatted runtime errors for missing tools and source underlines.

`No tool found for "..."` and missing registered tool-function errors now carry
Bridge source locations when they originate from authored bridge wires, so
formatted errors include the filename, line, and highlighted source span.
Control-flow throw fallbacks now preserve their own source span, so
`?? throw "..."` highlights only the throw clause instead of the whole wire.
Caret underlines now render the full inclusive source span instead of stopping
one character short.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Fix segment-local `?.` traversal so later strict path segments still fail after a guarded null hop, and preserve source formatting for `panic` control-flow errors.

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Fix strict nested scope resolution for array mappings.

Nested scopes can now read iterator aliases from visible parent scopes while
still resolving overlapping names to the nearest inner scope. This also keeps
invalid nested tool input wiring rejected during parsing.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Improve runtime error source mapping for ternary conditions and strict path traversal.

Runtime and compiled execution now preserve clause-level source spans for ternary conditions and branches, so formatted errors can highlight only the failing condition or selected branch instead of the whole wire.
Strict path traversal also now fails consistently on primitive property access in both runtime and AOT execution, keeping error messages and behavior aligned.

- Updated dependencies [[`375e2b0`](https://github.com/stackables/bridge/commit/375e2b08a16f670cded3aba7d6e2ee52254eab1c)]:
- @stackables/bridge-types@1.2.0
- @stackables/bridge-stdlib@1.5.3

## 1.5.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stackables/bridge-core",
"version": "1.5.0",
"version": "1.6.0",
"description": "Bridge runtime engine — execute pre-compiled bridge instructions",
"main": "./build/index.js",
"type": "module",
Expand Down
16 changes: 16 additions & 0 deletions packages/bridge-graphql/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# @stackables/bridge-graphql

## 1.2.1

### Patch Changes

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Move Bridge source metadata onto BridgeDocument.

Parsed documents now retain their original source text automatically, and can
optionally carry a filename from parse time. Runtime execution, compiler
fallbacks, GraphQL execution, and playground formatting now read that metadata
from the document instead of requiring callers to thread source and filename
through execute options.

- Updated dependencies [[`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`375e2b0`](https://github.com/stackables/bridge/commit/375e2b08a16f670cded3aba7d6e2ee52254eab1c), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942)]:
- @stackables/bridge-core@1.6.0
- @stackables/bridge-stdlib@1.5.3

## 1.2.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-graphql/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stackables/bridge-graphql",
"version": "1.2.0",
"version": "1.2.1",
"description": "Bridge GraphQL adapter — wire bridges into a GraphQL schema",
"main": "./build/index.js",
"type": "module",
Expand Down
38 changes: 38 additions & 0 deletions packages/bridge-parser/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,43 @@
# @stackables/bridge-parser

## 1.4.1

### Patch Changes

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Add memoized tool handles with compiler support.

Bridge `with` declarations now support `memoize` for tool handles, including
loop-scoped tool handles inside array mappings. Memoized handles reuse the same
result for repeated calls with identical inputs, and each declared handle keeps
its own cache.

The AOT compiler now compiles memoized tool handles too, including loop-scoped
tool handles inside array mappings. Compiled execution preserves request-scoped
caching semantics and reuses results for repeated calls with identical inputs.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Move Bridge source metadata onto BridgeDocument.

Parsed documents now retain their original source text automatically, and can
optionally carry a filename from parse time. Runtime execution, compiler
fallbacks, GraphQL execution, and playground formatting now read that metadata
from the document instead of requiring callers to thread source and filename
through execute options.

- [#108](https://github.com/stackables/bridge/pull/108) [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339) Thanks [@aarne](https://github.com/aarne)! - Fix strict nested scope resolution for array mappings.

Nested scopes can now read iterator aliases from visible parent scopes while
still resolving overlapping names to the nearest inner scope. This also keeps
invalid nested tool input wiring rejected during parsing.

- [#111](https://github.com/stackables/bridge/pull/111) [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942) Thanks [@aarne](https://github.com/aarne)! - Improve runtime error source mapping for ternary conditions and strict path traversal.

Runtime and compiled execution now preserve clause-level source spans for ternary conditions and branches, so formatted errors can highlight only the failing condition or selected branch instead of the whole wire.
Strict path traversal also now fails consistently on primitive property access in both runtime and AOT execution, keeping error messages and behavior aligned.

- Updated dependencies [[`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`375e2b0`](https://github.com/stackables/bridge/commit/375e2b08a16f670cded3aba7d6e2ee52254eab1c), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942), [`de20ece`](https://github.com/stackables/bridge/commit/de20ece3ca9c42d0def90f512f90900962670339), [`fc836e4`](https://github.com/stackables/bridge/commit/fc836e4ff33f00a078246094b8b12b77ee844942)]:
- @stackables/bridge-core@1.6.0
- @stackables/bridge-stdlib@1.5.3

## 1.4.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-parser/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stackables/bridge-parser",
"version": "1.4.0",
"version": "1.4.1",
"description": "Bridge DSL parser — turns .bridge text into a BridgeDocument (AST)",
"main": "./build/index.js",
"type": "module",
Expand Down
7 changes: 7 additions & 0 deletions packages/bridge-stdlib/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# @stackables/bridge-stdlib

## 1.5.3

### Patch Changes

- Updated dependencies [[`375e2b0`](https://github.com/stackables/bridge/commit/375e2b08a16f670cded3aba7d6e2ee52254eab1c)]:
- @stackables/bridge-types@1.2.0

## 1.5.2

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/bridge-stdlib/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stackables/bridge-stdlib",
"version": "1.5.2",
"version": "1.5.3",
"description": "Bridge standard library — httpCall, string, array, and audit tools",
"main": "./build/index.js",
"type": "module",
Expand Down
Loading
Loading