| Crates.io | rez-lsp-server |
| lib.rs | rez-lsp-server |
| version | 0.1.1 |
| created_at | 2025-06-22 13:26:56.923924+00 |
| updated_at | 2025-06-22 17:50:13.325362+00 |
| description | A Language Server Protocol implementation for Rez package manager with intelligent code completion, validation, and navigation |
| homepage | https://github.com/loonghao/rez-lsp-server |
| repository | https://github.com/loonghao/rez-lsp-server |
| max_upload_size | |
| id | 1721635 |
| size | 502,047 |
中文文档 | English
⚠️ Development Status: This project is in active development and is considered alpha software. APIs, configuration formats, and functionality may change without notice. Use in production environments is not recommended at this time.
A Language Server Protocol (LSP) implementation for Rez package manager, providing intelligent code completion, dependency resolution, and syntax validation for package.py files across all major IDEs.
For a complete development environment setup:
# Clone the repository
git clone https://github.com/loonghao/rez-lsp-server.git
cd rez-lsp-server
# Windows
.\scripts\dev-install.ps1
# Linux/macOS
./scripts/dev-install.sh
This will:
# Build the project
cargo build --release
# The binary will be available at target/release/rez-lsp-server
We provide a unified build system that can build both the LSP server and VSCode extension:
# Windows
.\scripts\build-all.ps1 -Help # Show all options
.\scripts\build-all.ps1 -Release -Extension # Build everything
.\scripts\build-all.ps1 -Install # Install VSCode extension
.\scripts\build-all.ps1 -Test # Run all tests
# Linux/macOS
./scripts/build-all.sh --help # Show all options
./scripts/build-all.sh --release --extension # Build everything
./scripts/build-all.sh --install # Install VSCode extension
./scripts/build-all.sh --test # Run all tests
# Using Make (cross-platform)
make help # Show all targets
make build-release extension # Build everything
make install # Install VSCode extension
make test # Run all tests
make dev-setup # Complete dev setup
For testing the latest development version:
Build the LSP Server:
cargo build --release
# The binary will be at target/release/rez-lsp-server
Install VSCode Extension Dependencies:
cd vscode-extension
npm install
npm run compile
Configure VSCode Settings:
Add to your VSCode settings.json:
{
"rezLsp.serverPath": "/path/to/rez-lsp-server/target/release/rez-lsp-server",
"rezLsp.trace.server": "verbose",
"rezLsp.enableDiagnostics": true,
"rezLsp.showStatusBarItem": true,
"rezLsp.checkOnSave": true,
"rezLsp.packagePaths": []
}
Test the Extension:
vscode-extension folder in VSCodeF5 to launch a new Extension Development Host windowpackage.py filesrequires listEnvironment Setup:
Set the REZ_PACKAGES_PATH environment variable:
# Windows
set REZ_PACKAGES_PATH=C:\path\to\your\rez\packages
# Linux/macOS
export REZ_PACKAGES_PATH=/path/to/your/rez/packages
Verify Installation:
package.py filerequires field-- Add to your Neovim configuration
require'lspconfig'.rez_lsp.setup{
cmd = { "/path/to/rez-lsp-server" },
filetypes = { "python" },
root_dir = function(fname)
return require'lspconfig.util'.find_git_ancestor(fname) or vim.fn.getcwd()
end,
}
The LSP server is built with a modular architecture:
cargo build
cargo test
cargo run
The server communicates via stdin/stdout using the LSP protocol.
Server Not Starting:
rezLsp.serverPath setting points to the correct executableRez LSP: Restart Server command to restart the serverNo Code Completion:
REZ_PACKAGES_PATH environment variable is set"rezLsp.trace.server": "verbose"Performance Issues:
Environment Variables:
# Verify Rez environment
echo $REZ_PACKAGES_PATH # Linux/macOS
echo %REZ_PACKAGES_PATH% # Windows
Package Discovery:
package_name/version/package.pyLSP Server Logs:
export REZ_LSP_DEBUG=trueRez LSP: Open Logs command to view logsWe welcome contributions! Please see our Contributing Guidelines for details.
cargo fmt and cargo clippyThis project is licensed under the Apache License 2.0 - see the LICENSE file for details.