Skip to content

Releases: MagnusOpera/FScript

0.59.0

22 Feb 20:33

Choose a tag to compare

  • Removed the obsolete Stdlib shim module and switched embedded-source import errors to generic wording now that stdlib is fully native.

Full Changelog: 0.58.0...0.59.0

0.58.0

22 Feb 19:19

Choose a tag to compare

  • Added String.endsWith to the language/runtime built-ins with corresponding type inference support.
  • Optimized runtime invocation paths by reducing argument list churn and improving closure application in Eval.invokeValue.
  • Cached stdlib loading and reserved-name computation to avoid repeated parse/inference work.
  • Optimized ScriptHost exported symbol access by caching function/value sets and maps for faster invoke and getValue.
  • Moved stdlib List.*, Option.*, Map.*, Environment, and FsKind definitions to native language/runtime built-ins to remove stdlib source parsing/inference at load time.
  • Removed virtual stdlib source navigation plumbing from LSP (fscript/stdlibSource) and updated injected symbol/type resolution to rely on native built-in metadata.

Full Changelog: 0.57.0...0.58.0

0.57.0

21 Feb 23:32

Choose a tag to compare

  • Replaced Xml.deserialize with Xml.queryValues for explicit value extraction from XML strings.

Full Changelog: 0.56.0...0.57.0

0.56.0

21 Feb 21:59

Choose a tag to compare

  • Removed Xml.serialize from runtime externs; Xml.deserialize remains available.
  • Made String.replace, String.indexOf, String.substring, and String.split consistently pipeline-friendly by using data-last argument order.

Full Changelog: 0.55.0...0.56.0

0.55.0

21 Feb 21:34

Choose a tag to compare

  • Escaped pretty-printed string values (including map string keys) so interpolated strings with embedded quotes render unambiguously in CLI/REPL output.

Full Changelog: 0.54.2...0.55.0

0.54.2

21 Feb 16:23

Choose a tag to compare

  • Fixed release marketplace publish jobs to checkout the repository before running local publish scripts.

Full Changelog: 0.54.1...0.54.2

0.54.1

21 Feb 16:14

Choose a tag to compare

  • Fixed NuGet packaging to include the custom package readme as README.md so PackageReadmeFile validation succeeds during pack/publish.

Full Changelog: 0.54.0...0.54.1

0.53.0

21 Feb 15:29

Choose a tag to compare

  • Switched sandbox deny configuration to root-relative glob patterns (HostContext.DeniedPathGlobs), including support for .git and **/node_modules style blocking.

Full Changelog: 0.52.0...0.53.0

0.52.0

21 Feb 13:50

Choose a tag to compare

  • Added Json.serialize and Xml.serialize externs for option-based JSON/XML serialization in runtime hosts.
  • Renamed XML decode extern from Xml.values to Xml.deserialize.
  • Replaced Fs.isFile and Fs.isDirectory with Fs.kind returning stdlib union FsKind (File/Directory/Missing) for direct pattern matching.
  • Added host-configurable sandbox exclusions (HostContext.ExcludedPaths) so Fs.glob/Fs.enumerateFiles hide blocked entries and Fs.readText/Fs.writeText/Fs.createDirectory fail immediately on blocked paths.
  • Added built-in String.* helpers: replace, indexOf, toLower, toUpper, substring, concat, and split.

Full Changelog: 0.51.0...0.52.0

0.51.0

21 Feb 12:14

Choose a tag to compare

  • Added CLI extern configuration flags (--no-default-externs, repeatable --extern-assembly) with attribute-based provider discovery and conflict validation.

Full Changelog: 0.50.0...0.51.0