All notable changes to the "vscode-mc-shader" extension will be documented in this file.
The format is based on Keep a Changelog
- Support for mod world folders, outside the standard world{-1,0,1}.
- Support for compute shader files ending in _a to _z.
- Crash when running with eglot as LSP client.
- Extension icon client not displaying (encoding issue).
- NVIDIA diagnostics line offset off-by-one due to confusion with erroneous (non-proper) GLSL files resulting in both -1 and -2 offsets appearing to be valid when only the former is.
- Non-toplevel files being treated as toplevel files when they have .fsh/.vsh/etc and not imported into a valid toplevel file.
- Fix issue in the depth-first-search iterator when a file is imported twice into another file with a different include in between.
- Fixed bad release tag format
- Fixed extension silently failing on activation
- MacOS M1 binary releases
- AMD OpenGL driver diagnostics output support. AMD linting is a-go 🚀
- Tree-sitter based go-to-definition/find-references/document symbols. Currently disabled until stabilized
- Another
#include
merging bug when a file is imported twice into another file at different lines
- Filesystem watcher reads custom defined file associations
- Fixed
#include
merging for when file is merged twice that would normally be#ifdef
guarded. Please see commit message of 551380a for detailed explanation
#include
merging when project consists of files with both CRLF and LF files- Out-of-tree shader files are not linted or added to the dependency graph
- Client no longer attempts to bootstrap server when
MCSHADER_DEBUG=true
- Language server download for windows
- VSCode extension activation predicate to only when
shaders
folder exists at top level
- Additional client-side logging
- Windows support in client not adding
.exe
to language server path - Binary release CI
- Replaced in-process Typescript language server with Rust based language server
- Due to the above,
#include
directive handling is vastly improved
- Command to view read-only document representing a top-level file with all includes merged
- Command to generate a DOT graph file of the entire project
- Command to restart language server
glslangValidatorPath
andshaderpacksPath
config settings
- Fixed for latest VSCode version
- Filters from 0.8.4
- Filtering out
global const initializers must be constant
. "Something something non-standard shader extensions that GPU developers implicitly enable" - Dethraid
- Filtering out gpu_shader4 in code
- Support for #include directives
- Basic linting with highlighting with error propogation to all known parents of an include.
- Support for .fsh, .vsh, .glsl and .gsh files.
- Incomplete completion items