github Blakintosh/gscode v2.2.0
2.2.0

3 hours ago

The biggest release since 2.0: about 400 commits across the language server, the extension and the tests. Nearly all of it is the work of @iAmThatMichael. Huge thanks to Michael for months of work on speed, reliability, navigation and the formatter, and for the engineering handbook that now explains how it all fits together.

Highlights

  • Scale. Requests no longer slow down as a workspace grows: they cost the same at 50,000 files as at 1,000. A typical Black Ops III workspace indexes in well under a second, and a warm start at 50,000 files takes about 4 seconds instead of 18. Completion, references, rename and lints all stay fast however big the workspace gets.
  • Reliability. Diagnostics no longer go stale, reappear on closed files, or race the startup index. The cache now survives files and headers created or deleted between sessions. In full indexing mode, closed files keep their cross-file problems.
  • Navigation. Go to Implementations and Type Definition, navigation on fields and class members, call hierarchy for methods, macro-aware signature help and hover, and auto-import completion.
  • Formatting. New fixCasing, indentCaseLabels, indentCaseBlocks, indentDevBlocks and alignMaxPadding settings. Output now matches the stock scripts more closely, and edits keep the caret where it was.
  • Editor. Everything GSCode can do now sits in a GSCode right-click menu. Select Game can be opened from the Command Palette. Organize Imports now sorts as well as removing unused imports. The extension also runs in Restricted Mode.

Upgrading

  • The workspace cache rebuilds once on first start.
  • Format Document re-indents existing files once.
  • Inlay hints now start off. Turn on the ones you want.
  • gscode.completion.fieldScope has been removed.
  • Completing function now inserts the bare keyword, and private and autoexec are offered after it. The funcauto and funcpriv snippets are gone.

This release also includes the fixes that were going to be 2.0.3: ternary colon spacing, a comment after an if or loop header no longer breaking indentation, and the indentCaseBlocks setting.

What's Changed

Every change is listed in CHANGELOG.md.

Full Changelog: v2.0.2...v2.2.0

Don't miss a new gscode release

NewReleases is sending notifications on new releases.