This is a pre-release. djust 0.2.0 has shipped since: read the djust 0.2.0 release notes.
Changed
BREAKING: Event Binding Syntax - Standardized all event bindings to use
dj-prefix instead of@prefix. This affects all event attributes:@click→dj-click,@input→dj-input,@change→dj-change,@submit→dj-submit,@blur→dj-blur,@focus→dj-focus,@keydown→dj-keydown,@keyup→dj-keyup,@loading.*→dj-loading.*. Benefits: namespaced attributes, no conflicts with Vue/Alpine, no CSS selector escaping required. (#68)BREAKING: Component Consolidation - Removed legacy
python/djust/component.py. Usedjust.Componentwhich now imports fromcomponents/base.py. (#89)BREAKING: Method Rename -
LiveComponent.get_context()→get_context_data()for Django consistency. (#89)BREAKING: Decorator Attributes Removed - Deprecated decorator attributes removed:
_is_event_handler,_event_name,_debounce_seconds,_debounce_ms,_throttle_seconds,_throttle_ms. Use_djust_decoratorsdict instead. (#89)BREAKING: Data Attributes Renamed - Standardized data attribute naming for consistency:
dj-liveview-root→dj-rootdata-live-view→dj-viewdata-live-lazy→dj-lazydata-dj→data-dj-id(#89)
BREAKING: WebSocket Message Types - Renamed message types for consistency:
connected→connectmounted→mounthotreload.message→hotreload(#89)
Added
LiveComponent Methods - Added missing methods to
LiveComponent:_set_parent_callback(),send_parent(),unmount(). (#89)Inline Template Support -
LiveComponentnow supports inlinetemplateattribute for template strings, in addition totemplate_namefor file-based templates. (#89)See
docs/website/guides/template-cheatsheet.md.Form Components Export -
ForeignKeySelectandManyToManySelectare now exported fromdjust.components. (#89)See
docs/website/guides/components.md.
Fixed
{% elif %}Tag Support: Template parser now correctly handles{% elif %}conditionals. Previously, elif branches fell through to the unknown tag handler and rendered all branches instead of just the matching one. (#80)Template Include Fallback - Component
render()methods now fall back to Django templates when Rust template engine fails (e.g., for{% include %}tags). (#89)