Releases: antaalt/shader-sense
Releases · antaalt/shader-sense
shader-language-server v1.3.0
Fixed
- Fixed an issue that caused test to hang on panic
Added
- New test for semantic tokens.
- New experimental feature for macro expansion to add to symbols the symbols defined inside a macro. Still a work in progress.
- Possiblity to pass a preamble file for Glsl shaders.
shader-language-server v1.2.2
Fixed
- Fixed semantic token which was searching for the function name instead of the parameter name inside function body.
shader-language-server v1.2.1
Fixed
- Correctly use tree sitter wgsl grammar for WGSL (not used yet).
- Fix some link in doc.
- Fix for a crash with an unreachable tag that can be reached in some case.
- Fix path remapping which canonicalize path, making them useless on Windows.
Changed
- Improved triple information at startup for debug purpose.
shader-language-server v1.2.0
Added
- Added documentations for crates on docs.rs with test doc.
- Added support for cancel request.
- Added the possibility to override the server configuration with custom JSON for engine specific configuration.
- Added the possibility to set server cwd in command line.
- Added setting for defining macro per shader stage.
Fixed
- Fixed some invalid macro description on hover
- Fixed som template failing to access members.
- Reduced memory footprint of symbol requirement.
Changed
- Lru cache is now created with small size and resized if needed to reduce memory footprint.
- Added a dedicated error enum for language server to not have server logic into shader sense.
- Server now add workspace folders for includes. This should help finding file in workspace with relative path.
- BREAKING: shader stage should now be passed in camelCase.
- Improved the way we look for DXC DLL to avoid picking mismatching DLL between dxcompiler and dxil.
shader-language-server v1.1.0
Added
- Hlsl raytracing functions added to database
- Hlsl enum support (syntax highlighting + hover + completion)
- Glsl mesh shader extension added to database. Feel free to contribute to this database by adding other extensions !
- LRU cache for semantic tokens regex which are created on the fly and were impacting performances.
Changed
- Upgraded tree-sitter dependencies to use tree-sitter-language which allow using different languages easily such as slang. Wgsl does not support it yet, so waiting for this PR to upgrade.
Fixed
- Validation was not retriggered when changing settings.
- Stripped template from variable type to help finding in symbol list.
shader-language-server v1.0.0
This new version features a lot of changes that should drastically improve performances on huge shader codebase, memory usage and behaviour of variant & updates. There was also some redesign with the architecture to handle this and make the API more friendly to use.
Fixed
- Fixed an issue where regions were not displayed when diagnostics were disabled.
- Fixed an issue with file using variant context missing some symbols behind include guards.
- Fixed and improved the way symbols caching are handled.
- Fixed a warning when hovering a field return by a method.
- Fixed an issue whith HLSL database where its missing some parameters in Texture objects.
- Fixed an issue with include handler pushing include from inactive region on stack, which could end up including file from a wrong folder.
- Fixed intrinsics depending on requirements that were ignored.
- Fixed some missing diagnostics clear when files are closed.
- Fixed some dependency files not being cleared from memory when main file was closed.
- Fixed an issue with updating a variant dependency that would cause it to clear inactive regions.
- Fixed diagnostic not being cleared when passing from error state to non error state.
- Fixed an issue where a variant file not opened prevent using the feature.
Changed
- There can be only one variant at a time to avoid file randomly picking a variant.
- ValidationParams & SymbolParams have been merged into a single struct ShaderParams.
- Update messages are now handled asynchronously, which avoid messages from getting queued when caching take a lot of time. This can increase server speed drastically in huge codebase.
- Reporting cache update through progress report notification.
- Validator is now behind a solid struct instead of a trait.
- Main functions are now sharing common entry point for uniformity.
- Reduced memory usage of the server.
- Changed API entry point.
- Clean code, moved files & renaming
Added
- Added Dxc builtins macros to symbols.
- Added advanced symbols filterings for intrinsics. Extensions should be now easy to add for GLSL in an upcoming release.
- Added test for each shader stage.
- Added check for which shader stage is supported in Validator
- Added command line argument for shader-language-server to pass configuration on startup.
shader-language-server v0.8.2
Fixed
- Fixed a crash when DXC fail to instantiate. Fallback to glslang for validation instead.
- Fixed an issue with dxil dll loading on Linux as dxcompiler.so seems to load it from path while we create it from absolute path.
shader-language-server v0.8.1
Fixed
- Fixed an issue with invalid position computed using UTF8 characters
- Fixed a crash when triggering completion on position at start of line due to invalid line computation from byte offset.
- Updated shader-sense-cli Cargo.toml for a crates.io release.
shader-language-server v0.8.0
Added
- Struct completion features has been hugely improved. You will now benefit of structure field completion in HLSL & GLSL.
- HLSL database now include methods for Texture & Buffer Objects to be used along struct completion.
- Added formatting for HLSL & GLSL code through clang format (for full & partial formatting). Support for a .clang-format configuration file.
- Added an option for DXC SPIRV support to remove warning related to SPIRV (shader-validator.hlsl.spirv).
- Every field of the config is now optional for third party client and server will not crash if its missing some.
- Improvement on caching and dependencies handling aswell as performances.
- Add a CLI tool for validating shaders.
Fixed
- Fix an issue where DXC warning were not displayed if no error was found.
- Fix an issue where DXC was picking globally accessible DXC instead of bundled one.
- Fix an issue with region missing some defines.
- Fix an issue with dirty files being wrongly tracked.
- Fix an issue with HLSL array variable in struct not being captured.
shader-language-server v0.7.0
This release bring some huge perf improvement and new features such as:
- Function parameters will get highlighted through semantic tokens
- Error from dependencies should be easier to track down.
Some bug fixes aswell such as:
- Pragma once files failing to load dependencies
- Inlay hint being displayed for every dependencies in main file