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
5 changes: 0 additions & 5 deletions .sampo/changesets/borrow-local-scopes.md

This file was deleted.

6 changes: 0 additions & 6 deletions .sampo/changesets/bounded-trait-lookup.md

This file was deleted.

12 changes: 0 additions & 12 deletions .sampo/changesets/concise-source-aware-diagnostics.md

This file was deleted.

8 changes: 0 additions & 8 deletions .sampo/changesets/direct-ast-inference.md

This file was deleted.

5 changes: 0 additions & 5 deletions .sampo/changesets/parser-accumulators.md

This file was deleted.

6 changes: 0 additions & 6 deletions .sampo/changesets/parser-nesting.md

This file was deleted.

6 changes: 0 additions & 6 deletions .sampo/changesets/parser-text-input.md

This file was deleted.

5 changes: 0 additions & 5 deletions .sampo/changesets/remove-interface-cache.md

This file was deleted.

10 changes: 0 additions & 10 deletions .sampo/changesets/source-coordinates.md

This file was deleted.

24 changes: 12 additions & 12 deletions Cargo.lock

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

6 changes: 6 additions & 0 deletions crates/nash-ast/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# nash-ast

## 0.7.1 — 2026-09-10

### Patch changes

- Updated dependencies: nash-region@0.3.0, nash-source@0.7.0

## 0.7.0 — 2026-09-10

### Minor changes
Expand Down
6 changes: 3 additions & 3 deletions crates/nash-ast/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nash-ast"
version = "0.7.0"
version = "0.7.1"
edition.workspace = true
description = "Canonical AST for the nash programming language"
homepage.workspace = true
Expand All @@ -9,5 +9,5 @@ license.workspace = true

[dependencies]
bumpalo.workspace = true
nash-region = { path = "../nash-region", version = "0.2.0" }
nash-source = { path = "../nash-source", version = "0.6.0" }
nash-region = { path = "../nash-region", version = "0.3.0" }
nash-source = { path = "../nash-source", version = "0.7.0" }
12 changes: 12 additions & 0 deletions crates/nash-can/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# nash-can

## 0.7.0 — 2026-09-10

### Minor changes

- [d06f2c5](https://github.com/orbistry/nash/commit/d06f2c5b69164d527d1e0bc4eefe6dcc7117867c) Borrow module data and local binding maps during canonicalization instead of cloning the full environment at each scope. Preserve shadowing, diagnostics, and error recovery. — Thanks @MicroProofs!

### Patch changes

- [e22bfb5](https://github.com/orbistry/nash/commit/e22bfb5783668dc1256eba8a2294e28d679a4816) Use ordered map ranges for trait candidate lookup, evidence construction, entailment, and missing-implementation suggestions. Preserve candidate order without a second index. — Thanks @MicroProofs!
- [8bb97f6](https://github.com/orbistry/nash/commit/8bb97f680047cc8818b890af407247cdd585000e) Use source-sized coordinates and diagnostic widths throughout parsing and reporting. Check LSP coordinate conversion instead of truncating. Reject oversized Unicode escapes without integer overflow, and make arbitrary lookahead offsets safe. — Thanks @MicroProofs!
- Updated dependencies: nash-ast@0.7.1, nash-parse@0.6.0, nash-region@0.3.0, nash-source@0.7.0

## 0.6.1 — 2026-09-10

### Patch changes
Expand Down
10 changes: 5 additions & 5 deletions crates/nash-can/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nash-can"
version = "0.6.1"
version = "0.7.0"
edition.workspace = true
description = "Canonicalize a nash source tree, resolving symbols, re-ordering definitions, and preparing a module for type inference."
homepage.workspace = true
Expand All @@ -9,11 +9,11 @@ license.workspace = true

[dependencies]
bumpalo.workspace = true
nash-ast = { path = "../nash-ast", version = "0.7.0" }
nash-region = { path = "../nash-region", version = "0.2.0" }
nash-source = { path = "../nash-source", version = "0.6.0" }
nash-ast = { path = "../nash-ast", version = "0.7.1" }
nash-region = { path = "../nash-region", version = "0.3.0" }
nash-source = { path = "../nash-source", version = "0.7.0" }

[dev-dependencies]
indoc.workspace = true
insta.workspace = true
nash-parse = { path = "../nash-parse", version = "0.5.1" }
nash-parse = { path = "../nash-parse", version = "0.6.0" }
12 changes: 12 additions & 0 deletions crates/nash-cli/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# nash-cli

## 0.4.0 — 2026-09-10

### Minor changes

- [e3e72a7](https://github.com/orbistry/nash/commit/e3e72a7432f96f2de01777edd6c5a935e88d48fb) Use concise diagnostics with full expected/actual type comparisons, expectation-origin labels, and stable codes independent of display titles. Retain parser opening positions for closing-delimiter reports. Support arbitrary secondary labels and related reports across source files.

Extend diagnostic JSON with code, severity, labels, suggestions, and related reports. JSON messages now contain styled prose without embedded source drawings; consumers should render the structured labels. LSP diagnostic codes now use stable identifiers instead of titles and include secondary and related source locations. — Thanks @MicroProofs!

### Patch changes

- Updated dependencies: nash-driver@0.6.0, nash-language-server@0.4.0, nash-report@0.3.0

## 0.3.0 — 2026-09-10

### Minor changes
Expand Down
8 changes: 4 additions & 4 deletions crates/nash-cli/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nash-cli"
version = "0.3.0"
version = "0.4.0"
edition.workspace = true
description = "The Nash programming language"
homepage.workspace = true
Expand All @@ -23,9 +23,9 @@ futures.workspace = true
miette.workspace = true
serde_json.workspace = true
nash-config = { path = "../nash-config", version = "0.3.0" }
nash-report = { path = "../nash-report", version = "0.2.0" }
nash-driver = { path = "../nash-driver", version = "0.5.0" }
nash-language-server = { path = "../nash-language-server", version = "0.3.0" }
nash-report = { path = "../nash-report", version = "0.3.0" }
nash-driver = { path = "../nash-driver", version = "0.6.0" }
nash-language-server = { path = "../nash-language-server", version = "0.4.0" }
octocrab.workspace = true
tar.workspace = true
tokio = { workspace = true, features = ["rt-multi-thread", "macros", "io-std"] }
Expand Down
13 changes: 13 additions & 0 deletions crates/nash-constrain/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# nash-constrain

## 0.5.0 — 2026-09-10

### Minor changes

- [e3e72a7](https://github.com/orbistry/nash/commit/e3e72a7432f96f2de01777edd6c5a935e88d48fb) Use concise diagnostics with full expected/actual type comparisons, expectation-origin labels, and stable codes independent of display titles. Retain parser opening positions for closing-delimiter reports. Support arbitrary secondary labels and related reports across source files.

Extend diagnostic JSON with code, severity, labels, suggestions, and related reports. JSON messages now contain styled prose without embedded source drawings; consumers should render the structured labels. LSP diagnostic codes now use stable identifiers instead of titles and include secondary and related source locations. — Thanks @MicroProofs!
- [0ed0c75](https://github.com/orbistry/nash/commit/0ed0c75a0ac421a193a420c116cd2284ba922a25) Infer directly from the canonical AST into the existing union-find and predicate engine. Remove the allocated constraint tree and intermediate inference Type, preserving schemes, evidence, rank ownership, recursive-group sequencing, and complete diagnostics. Pass canonical modules directly to the solver. — Thanks @MicroProofs!

### Patch changes

- Updated dependencies: nash-ast@0.7.1, nash-region@0.3.0

## 0.4.1 — 2026-09-10

### Patch changes
Expand Down
6 changes: 3 additions & 3 deletions crates/nash-constrain/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nash-constrain"
version = "0.4.1"
version = "0.5.0"
edition.workspace = true
description = """
Shared union-find types, canonical type instantiation, and diagnostics \
Expand All @@ -12,5 +12,5 @@ license.workspace = true

[dependencies]
bumpalo.workspace = true
nash-ast = { path = "../nash-ast", version = "0.7.0" }
nash-region = { path = "../nash-region", version = "0.2.0" }
nash-ast = { path = "../nash-ast", version = "0.7.1" }
nash-region = { path = "../nash-region", version = "0.3.0" }
12 changes: 12 additions & 0 deletions crates/nash-driver/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
# nash-driver

## 0.6.0 — 2026-09-10

### Minor changes

- [7dab841](https://github.com/orbistry/nash/commit/7dab8416345ca7bd57292d82c4d358c9073457b2) Remove unused disk interface-cache APIs, serialization, and cache metadata. Preserve in-memory exports, kind contracts, and fingerprints returned by compilation. — Thanks @MicroProofs!

### Patch changes

- [3bd387a](https://github.com/orbistry/nash/commit/3bd387aabd3755da2f734db212859647c128d3f5) Require UTF-8 text at the parser boundary instead of arbitrary bytes. Remove unchecked string conversions and pass source text directly from the driver. — Thanks @MicroProofs!
- [0ed0c75](https://github.com/orbistry/nash/commit/0ed0c75a0ac421a193a420c116cd2284ba922a25) Infer directly from the canonical AST into the existing union-find and predicate engine. Remove the allocated constraint tree and intermediate inference Type, preserving schemes, evidence, rank ownership, recursive-group sequencing, and complete diagnostics. Pass canonical modules directly to the solver. — Thanks @MicroProofs!
- Updated dependencies: nash-ast@0.7.1, nash-can@0.7.0, nash-constrain@0.5.0, nash-nitpick@0.2.1, nash-parse@0.6.0, nash-region@0.3.0, nash-report@0.3.0, nash-solve@0.5.0, nash-source@0.7.0

## 0.5.0 — 2026-09-10

### Minor changes
Expand Down
20 changes: 10 additions & 10 deletions crates/nash-driver/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "nash-driver"
version = "0.5.0"
version = "0.6.0"
edition.workspace = true
description = "Build system and driver for Nash projects"
homepage.workspace = true
Expand All @@ -17,15 +17,15 @@ tokio = { workspace = true, features = ["sync", "fs"] }
url.workspace = true

nash-config = { path = "../nash-config", version = "0.3.0" }
nash-nitpick = { path = "../nash-nitpick", version = "0.2.0" }
nash-ast = { path = "../nash-ast", version = "0.7.0" }
nash-can = { path = "../nash-can", version = "0.6.1" }
nash-constrain = { path = "../nash-constrain", version = "0.4.1" }
nash-parse = { path = "../nash-parse", version = "0.5.1" }
nash-report = { path = "../nash-report", version = "0.2.0" }
nash-region = { path = "../nash-region", version = "0.2.0" }
nash-solve = { path = "../nash-solve", version = "0.4.1" }
nash-source = { path = "../nash-source", version = "0.6.0" }
nash-nitpick = { path = "../nash-nitpick", version = "0.2.1" }
nash-ast = { path = "../nash-ast", version = "0.7.1" }
nash-can = { path = "../nash-can", version = "0.7.0" }
nash-constrain = { path = "../nash-constrain", version = "0.5.0" }
nash-parse = { path = "../nash-parse", version = "0.6.0" }
nash-report = { path = "../nash-report", version = "0.3.0" }
nash-region = { path = "../nash-region", version = "0.3.0" }
nash-solve = { path = "../nash-solve", version = "0.5.0" }
nash-source = { path = "../nash-source", version = "0.7.0" }

[dev-dependencies]
indoc.workspace = true
Expand Down
13 changes: 13 additions & 0 deletions crates/nash-language-server/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# nash-language-server

## 0.4.0 — 2026-09-10

### Minor changes

- [e3e72a7](https://github.com/orbistry/nash/commit/e3e72a7432f96f2de01777edd6c5a935e88d48fb) Use concise diagnostics with full expected/actual type comparisons, expectation-origin labels, and stable codes independent of display titles. Retain parser opening positions for closing-delimiter reports. Support arbitrary secondary labels and related reports across source files.

Extend diagnostic JSON with code, severity, labels, suggestions, and related reports. JSON messages now contain styled prose without embedded source drawings; consumers should render the structured labels. LSP diagnostic codes now use stable identifiers instead of titles and include secondary and related source locations. — Thanks @MicroProofs!

### Patch changes

- [8bb97f6](https://github.com/orbistry/nash/commit/8bb97f680047cc8818b890af407247cdd585000e) Use source-sized coordinates and diagnostic widths throughout parsing and reporting. Check LSP coordinate conversion instead of truncating. Reject oversized Unicode escapes without integer overflow, and make arbitrary lookahead offsets safe. — Thanks @MicroProofs!
- Updated dependencies: nash-driver@0.6.0, nash-region@0.3.0, nash-report@0.3.0

## 0.3.0 — 2026-09-10

### Minor changes
Expand Down
Loading
Loading