v0.25.0
v0.25.0
What's Changed
Added
-
Windows LSP server discovery (#582, #585): LSP servers are now discoverable on
Windows.findInPathbypasses POSIX-onlySAFE_PATH_DIRSfiltering on win32
and auto-appends.cmdextension when the bare command is not found (npm global
installs create.cmdshims).trustedUserCandidatesincludes Windows paths
(%APPDATA%/npm, Scoop, Cargo, Mason, VS Code). -
PATHEXT-aware executable detection (#585):
isExecutableon win32 now
respects thePATHEXTenvironment variable (.COM;.EXE;.BAT;.CMD;.VBS;.JS
default) instead of hardcoding only.exe,.cmd,.bat. -
Platform-appropriate cache directory (#584): Cache now uses
%LOCALAPPDATA%/pi-shazam/cacheon Windows,~/Library/Caches/pi-shazamon
macOS, and$XDG_CACHE_HOME/pi-shazamon Linux (renamed fromrepomap). -
Windows CI coverage (#583, #592):
windows-latestrunner added to CI matrix
(typecheck, tests, build) and publish workflow. All 662 tests pass on Windows.
package.jsonosfield now includes"win32". -
MCP documentation for Windows (#586):
mcp/README.mdnow includes Windows
MCP client configuration examples (Claude Desktop on cmd, PowerShell, Git Bash).
Bug Fixes
-
MCP HOME fallback on Windows (#586):
PI_SHAZAM_HOME_ONLYcheck now falls
back toUSERPROFILEbefore the hardcoded "/home", fixing the home-directory
gate on Windows whereHOMEis not set by default. -
Cross-platform path normalization in MCP (#586):
buildEnvelopenow
normalizes backslash project paths to forward slashes for consistent JSON
output across platforms. -
Cross-platform test compatibility (#592): 8 test files fixed for Windows —
path comparisons, URI construction, file separator handling, short-name paths,
and log message assertions now work correctly on all platforms.
Upgrade
pi install npm:pi-shazam@latestOr for MCP clients:
{ "mcpServers": { "pi-shazam": { "command": "npx", "args": ["-y", "-p", "pi-shazam@latest", "pi-shazam-mcp"] } } }Full Changelog: v0.24.4...v0.25.0