Skip to content

v2022.11.0

Compare
Choose a tag to compare
@andyleejordan andyleejordan released this 16 Nov 20:15
· 628 commits to release since this release

v2022.11.0

Wednesday, November 16, 2022

The November release represents a renewed focus on the client, that is, the TypeScript
extension for Visual Studio Code. We've paid back a significant amount of technical debt
by enabling both the TypeScript compiler's and ESLint linter's strict checks, helping us
ensure we are writing correct code. We've increased the client's logging, made the
walkthrough's installation instructions cross-platform, added a warning popup when custom
configured additional PowerShell executables aren't found, and fixed a couple debugger
configuration edge cases.

A regression for the OnIdle handler was fixed in the server, complete with regression
tests covering the registration and triggering of idle events registered both in a profile
and during a session. A workaround was implemented for a completion bug in PowerShell that
was causing the LSP session to disconnect when used with third-party clients. When
executing scripts, the path is now escaped with single quotes instead of double quotes,
addressing the edge case where a path contains a dollar sign, and is now inline with
PowerShell's semantics.

The build is now correctly published in release mode which should be more performant and
won't allow the user to accidentally enable the "wait for debugger" scenario (which can
appear as a hang, though it is a correctly working feature that is now hidden behind more
developer settings). Additionally, checks were added to both the server and client build
pipelines to assert that the bits are in release mode before packaging, as it was
unfortunately the act of running the tests that erroneously and silently overwrote release
bits with debug bits.

Finally, a long-standing bug that often prevented the server from starting with Windows
PowerShell was resolved. Known to users as the DryIoc error (which was a misleading
stacktrace that commonly popped up), we tracked down a broken dependency of OmniSharp that
when present and loaded into the GAC caused a type resolution error. While it took a year
for us to find the root cause, the fix was a single line dependency update for OmniSharp,
and then some work to incorporate the OmniSharp update into the server.

vscode-powershell

PowerShellEditorServices v3.6.1