Skip to content

Releases: MagnusOpera/FScript

0.48.1

20 Feb 12:53

Choose a tag to compare

  • Made unsigned macOS release-asset cleanup best-effort so transient GitHub API failures no longer fail the release workflow.

Full Changelog: 0.48.0...0.48.1

0.48.0

20 Feb 12:39

Choose a tag to compare

  • Switched VS Code extension changelog to a symlink of root CHANGELOG.md so Marketplace/Open VSX release notes use a single shared source.

Full Changelog: 0.47.0...0.48.0

0.47.0

20 Feb 12:26

Choose a tag to compare

  • Publishing to tap requires only sign artifacts.

Full Changelog: 0.46.0...0.47.0

0.46.0

20 Feb 12:22

Choose a tag to compare

  • Fixed lexer indentation handling for compact list layouts with multiple multiline record items so Terrabuild-style operation lists parse without inconsistent-indentation errors.
  • Enforced compact delimiter layout for non-empty {...} and [...] forms so opening/closing braces or brackets cannot appear on their own lines.

Full Changelog: 0.45.0...0.46.0

0.45.0

20 Feb 07:29

Choose a tag to compare

  • Fixed parser/LSP false "Block cannot end with a let binding" errors for block-scoped let values that contain multiline expression continuations (for example list literals with multiline record items).

Full Changelog: 0.44.0...0.45.0

0.44.0

20 Feb 06:43

Choose a tag to compare

  • Added samples/quicksort.fss with a recursive quicksort example over integer lists.
  • Added let-function return type annotations (let f ... : Type = ...) with parser/type-inference support and updated annotation specifications.

Full Changelog: 0.43.0...0.44.0

0.43.0

18 Feb 22:37

Choose a tag to compare

  • Switched LSP local go-to-definition to lexical AST binding resolution so local symbol usages (including record-field values and edge-of-token clicks) resolve to their exact nearest binder.
  • Added fscript.server.logLevel=debug support to surface detailed definition/references diagnostics and refined definition-follow-up references suppression so declaration clicks still show references while usage clicks navigate reliably.
  • Fixed local match-pattern declaration clicks (for example Some batch) to stop jumping to first usage and preserve references-window behavior.
  • Updated debug logging output to emit LSP window/logMessage entries when fscript.server.logLevel=debug, so logs are visible in editor output.
  • Fixed LSP definition on member-access field names (for example batch.ProjectPaths) to resolve via qualifier type inference (including match-pattern-bound locals).
  • Updated top-level function declaration clicks to preserve references-window behavior by keeping declaration entries in immediate follow-up reference results.
  • Fixed LSP reference indexing to include nameof <symbol> occurrences so top-level declaration clicks surface nameof usages in the references window.
  • Added an independent VS Code/LSP toggle for hover hints so it can be enabled or disabled without disabling the language server.

Full Changelog: 0.42.0...0.43.0

0.42.0

18 Feb 19:48

Choose a tag to compare

  • Added LSP go-to-definition support for local and pattern-bound variable bindings so usages navigate to the nearest in-scope declaration (including function parameters and tuple let destructuring names).

Full Changelog: 0.41.0...0.42.0

0.41.0

16 Feb 22:48

Choose a tag to compare

  • Added Int/Float/Bool conversion helpers in stdlib-style builtins (*.tryParse and *.toString) for safe scalar parsing and string formatting.
  • Added tuple let destructuring (let (a, b) = ...) for top-level, block, and let-expression non-rec bindings.

Full Changelog: 0.40.0...0.41.0

0.40.0

16 Feb 21:16

Choose a tag to compare

  • Fixed VS Code/LSP analysis to inject a default Env binding so scripts using Env no longer show unbound-variable diagnostics in the editor.
  • Fixed VS Code/LSP type navigation so Env and Environment resolve to the stdlib Environment type definition.
  • Added CLI script argument forwarding with -- and injected Env metadata (ScriptName, Arguments) for file, stdin, and REPL execution modes, with Environment now defined in stdlib for LSP/type visibility.

Full Changelog: 0.39.0...0.40.0