v0.2.0 - Type Aliases & Multi-File Imports
🎉 LUMOS v0.2.0 - Type Aliases & Multi-File Imports
Section titled “🎉 LUMOS v0.2.0 - Type Aliases & Multi-File Imports”Major release bringing schema organization and DRY principles to LUMOS!
✨ New Features
Section titled “✨ New Features”Type Aliases
Section titled “Type Aliases”- Rust-style syntax:
type UserId = PublicKey; - Recursive resolution with circular reference detection
- Generate
pub type(Rust) andexport type(TypeScript) - Support for all types: primitives, Solana types, collections
Multi-File Imports
Section titled “Multi-File Imports”- JavaScript-style syntax:
import { Type1, Type2 } from "./file.lumos"; - Automatic import discovery and resolution
- Multi-line import support
- Circular import detection
- Cross-file type validation
FileResolver Architecture
Section titled “FileResolver Architecture”- 340-line multi-file schema manager
- Automatic dependency discovery
- Import caching
- Three-pass validation (collect → resolve → validate)
📦 Installation
Section titled “📦 Installation”# Install or upgrade CLIcargo install lumos-cli@0.2.0
# Or update existing installationcargo install --force lumos-cli📚 Examples
Section titled “📚 Examples”Type Aliases:
type UserId = PublicKey;type Lamports = u64;type UserList = [PublicKey];
struct Account { owner: UserId, balance: Lamports,}Multi-File Imports:
type UserId = PublicKey;enum AccountStatus { Active, Frozen, Closed }
// accounts.lumosimport { UserId, AccountStatus } from "./types.lumos";
struct UserAccount { user: UserId, status: AccountStatus,}🧪 Testing
Section titled “🧪 Testing”- ✅ All 202 tests passing (100% success)
- ✅ E2E compilation verified
- ✅ 4 new file_resolver tests
📖 Documentation
Section titled “📖 Documentation”- Comprehensive examples in
examples/type_aliases.lumos(200+ lines) - Multi-file examples in
examples/imports/(7 files) - Complete usage guide and troubleshooting
🔗 Links
Section titled “🔗 Links”- Changelog: CHANGELOG.md
- crates.io: lumos-core, lumos-cli, lumos-lsp
- Documentation: https://lumos-lang.org
🚀 What’s Next
Section titled “🚀 What’s Next”Phase 5.3 continues with:
- Nested module support (#53)
- Generic struct/enum definitions (#54)
Phase 5.3 Progress: 60% complete (3/5 issues)
Alhamdulillah! Thank you to everyone supporting LUMOS development. 🎉
Links: