- Added performance information in the logs.
- Fixed a major performance issue.
- Fixed tree-sitter bugs.
- Fixed
sourcemod.inc
not being included automatically.
- Removed deprecated diagnostics in
.inc
files.
- Added support for arguments overflow in preprocessor macros.
- Added #undef support in preprocessor.
- Added semantic resolution for macros.
- Added a debug request to get the preprocessed text for a document.
- Fixed disable syntax linter not being respected.
- Added support for stringizing in preprocessor.
- Fixed "receiving on an empty or disconnected channel" bug when stopping the server.
- Fixed a crash when loading files that were not yet saved to disk (see #31).
- Fixed resolving references for too many files (this can improve parsing times by 300%).
- Improved method resolution to use the AST instead of primitive text parsing.
- Removed dangerous unwraps.
- Fixed out of range error when doing semantic analysis.
- Removed dangerous unwraps.
- Fixed reading files if they are not sourcepawn files.
- Fixed huge performance dropoffs when iterating through
.git
folders. - Fixed incorrect error handling.
- Added more debugging traces.
- Fixed Sentry hostname data leak.
- Fixed early returns in parser when encountering an error.
- Fixed Sentry instantiation.
- Fixed BOM support.
- Fixed disabled code diagnostics being skipped by the preprocessor.
- Added optional crash reports telemetry.
- Fixed support for
#tryinclude
. - Fixed incorrect macro offsetting.
- Fixed unknown tokens failing the preprocessor.
- Fixed incorrect arguments indexing in macro expansion.
- Fixed infinite recursion when resolving includes.
- Removed anyhow errors from logs.
- Allow non define identifiers in macro expansions.
- Fixed trailing macro comment expansion issue.
- Fixed empty preprocessed text on preprocessing failure.
- Fixed default completions in includes completions.
- Fixed early aggressive propagation in providers.
- Fixed some potential unwraps.
- Added full preprocessor support. The extension will now preprocess the files, by expanding macros and evaluating if conditions.
- Added basic logging and tracing.
- Fixed descriptions not appearing on hover.
- Added better error reporting to the client.
- Fixed a crash when parsing spcomp's output.
- Fixed the server dying too easily.
- Fixed a crash when the mainPath setting was empty.
- Added a setting to disable the syntax linter.
- Added support for mainPaths relative to the workspace's root.
- Updated the parser to take into account new syntax elements.
- Added support for AMXXPawn.
- Added call hierarchy provider.
- Added support for linter arguments.
- Added deprecated lint.
- Added invalid syntax lint.
- Added inline comments support for variables, enum members and defines.
- Added default completions (
sizeof
,voids
, etc).
- Added rename provider.
- Fixed incorrect heuristic when inferring the mainPath (Thanks Suza!).
- Fixed spcomp linting on macOS and Linux.
- Fixed incorrect completion triggers.
- Fixed unresolved variables in methods.
- Fixed missing completions in methods.
- Added spcomp status report.
- Added automatic mainpath detection when missing.
- Fixed diagnostics not disappearing.
- Added a linter provider.
- Added constructor completion when using the
new
keyword. - Added a document completion provider (type
/*
above a function/method declaration).
- Fixed constructors appearing in method completions.
- Fixed constructors being identified as methodmaps references.
- Added support for adding/deleting/editing documents outside of the editor (see #13).
- Added support for refreshing semantic analysis outside of the edited file (see #12).
- Added status notifications.
- Added support for folder rename in includeDirectories.
- Added
typedef
andtypeset
support. - Added callback completions.
- Added file rename/deletion support in includeDirectories.
- Added notifications when a setting is invalid.
- Fixed changes in IncludeDirectories not being detected.
- Fixed some references not being resolved on the initial parse.
- Added Document Symbol provider.
- Added Reference provider.
- Fixed invalid file reads when the file contains invalid UTF-8 characters.
- Fixed panic when opening a file without opening its parent folder first.
- Added SignatureHelp provider.
- Fixed a potential panic when reading an invalid file.
- Added Hover, GoToDefinition, and Semantic Highlighting.
- Added support for function completions.