Repository navigation
New Features
@require method for automatic dependency management
- New
@requireclass method automatically inserts widget dependencies into the ES module - Dependencies are passed through the class hierarchy, enabling proper inheritance
- When requiring another widget with an
es_module, it's automatically added as an import
Lapis subcommand integration
- Migrated to the standardized Lapis action format
- Now supports
lapis eswidgetas a native subcommand (requires Lapis ≥ v1.14.0) - Standalone
lapis-eswidgetbinary remains available
New bundle methods
- Added
--bundle-methodoption with three choices:esbuild(default) - Bundle using esbuildmodule- Generate ES module imports without bundlingconcat- Simple file concatenation
Debug command enhancements
- Now shows ES module dependencies
- Added
-r/--recursiveflag to display the full dependency tree
Improvements
Tup output
- New
--tup-compile-out-groupand--tup-bundle-out-groupoptions - Generated tupfiles now include version and command arguments in header
- Removed intermediate joined file - modules are piped directly into esbuild
Bug Fixes
- Fixed import line matching to not capture dynamic imports (
import()) - Fixed relative paths for module bundle method
Other Changes
- Rockspec source URL no longer requires SSH (
git+httpsinstead ofgit+ssh) - Renamed
--metafileto--esbuild-metafilefor clarity