Skip to content

Releases: NiceFeatures/pawnforge-vscode

Release list

v1.5.9

Choose a tag to compare

@github-actions github-actions released this 23 Sep 21:32

PawnForge v1.5.9 Release Notes

💡 Special thanks to @iXP0Mt for reporting Issue #1 and providing valuable feedback!


✨ What's New

🚀 Workspace References Across Headers (Shift+F12)

  • "Go To References" across .inc files without opening .sma: The Language Server now recursively scans and discovers all .inc and .sma workspace files (findWorkspaceFiles), resolving symbol references across headers even when opening an .inc file in isolation.
  • Instant string pre-filtering: Achieves sub-millisecond lookup latency (~0.39 ms across 100 files).
  • Reactive workspace cache: Workspace file list is kept in memory and automatically invalidated on file changes.

🎯 Interactive Navigation on Symbol Definitions

  • Ctrl+Click on definitions: doDefinition now returns a valid location on definition lines. Paired with editor.gotoLocation.alternativeDefinitionCommand: "editor.action.goToReferences", clicking a definition with Ctrl held opens all references in the workspace.
  • Smart definition exclusion: When invoking "Go to References" directly on the definition line, the definition itself is excluded from the results list to avoid redundancy, showing only actual call sites. When invoked from a call site, the definition is preserved.

🔒 Local Variable Scope Isolation

  • References for local variables are now strictly bounded to their enclosing function (scopeStartLine..scopeEndLine), preventing collision with same-named variables in other functions or files.
  • Invoking references on the variable's declaration line excludes the declaration itself.

Full Changelog: v1.5.8...v1.5.9

v1.5.8

Choose a tag to compare

@github-actions github-actions released this 13 Sep 15:35

Full Changelog: v1.5.7...v1.5.8

Full Changelog: v1.5.7...v1.5.8