All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project attempts to adhere to Semantic Versioning.
- Internal: Moved task queueing functionality to
djls-server
crate, renamed fromWorker
toQueue
, and simplified API.
- Added
html-django
as an alternative Language ID for Django templates - Added support for Django 5.2.
- Bumped Rust toolchain from 1.83 to 1.86
- Bumped PyO3 to 0.24.
- Internal: Renamed template parsing crate to
djls-templates
- Internal: Swapped from
tower-lsp
totower-lsp-server
for primary LSP framework.
- Dropped support for Django 5.0.
- Support for system-wide installation using
uv tool
orpipx
with automatic Python environment detection and virtualenv discovery
- Server no longer requires installation in project virtualenv, including robust Python dependency resolution using
PATH
andsite-packages
detection
- Basic Neovim plugin
- Created basic crate structure:
djls
: Main CLI interfacedjls-project
: Django project introspectiondjls-server
: LSP server implementationdjls-template-ast
: Template parsingdjls-worker
: Async task management
- Initial Language Server Protocol support:
- Document synchronization (open, change, close)
- Basic diagnostics for template syntax
- Initial completion provider
- Basic Django template parsing foundation and support
- Project introspection capabilities
- Django templatetag completion for apps in a project's
INSTALLED_APPS
- Josh Thomas [email protected] (maintainer)