Skip to content

Chuks v0.0.3 — LSP, HTTP Enhancements & Community Foundations

Chuks v0.0.3 brings a major leap in developer experience with a rich Language Server, expands the HTTP API, squashes edge-case bugs, and lays the groundwork for community collaboration.

LSP Server — Rich Hover & Completion Docs

Section titled “LSP Server — Rich Hover & Completion Docs”

The built-in Language Server now provides detailed hover documentation and completion item documentation for all built-in types, functions, keywords, and methods — no extension updates required.

  • 25+ built-in typesint, float, string, bool, any, void, null, map, Error, HttpServer, Request, Response, Task, Context, Channel, dataType, and all numeric types (int8uint64, byte, rune, float32, float64)
  • 20+ built-in functionsprintln, print, length, append, delete, copy, clear, typeof, and more
  • 35+ keywordsvar, const, function, class, interface, enum, if, else, for, while, return, try, catch, finally, throw, async, await, spawn, import, export, new, extends, implements, abstract, final, override, access modifiers, switch/case/default, break, continue, constructor
  • Method/property docs for string (14 methods), array (13), map (7), HttpServer (9), Request (8), Response (9), Task (8), Context (6) — with parameters, return types, examples, and categories

All completion items (string, array, map, Task, Context, HttpServer, Request, Response methods) now include inline documentation sourced from the hover doc system.

New response and request capabilities:

  • Response: redirect(), type(), cookie(), clearCookie() methods
  • Request: ip, originalUrl, protocol, hostname, secure, cookie() properties/methods
  • parseBody(DataType): Typed HTTP request body parsing into dataType instances
app.post("/login", (req, res) => {
var creds = req.parseBody<LoginRequest>()
res.cookie("session", token, { httpOnly: true })
res.json({ user: creds.email })
})
  • req.params / req.query now typed as map[string]string — indexing infers string automatically, no explicit annotation needed
  • Index expression type inference — indexing a map[K]V returns V, indexing an array returns the element type
  • finally block with return, throw-in-finally, and array reference semantics fixed
  • AOT scoping for variables declared inside if/else branches within loops
  • 5 AOT transpiler limitations resolved
  • 20 real-world edge cases added to the test suite
  • All 116 golden tests pass in both VM and AOT modes

The VS Code extension has been slimmed to LSP-only — all intelligence (hover, completion, definition, symbols, signature help, code actions) is served by the built-in LSP server. The extension only registers the LSP client, debug adapter, and ASI linting.

The GitHub repository now includes structured issue templates:

  • Bug Reports — Reproducible steps, expected vs actual behavior, platform info
  • Feature Requests — Describe the problem, propose a solution
  • General Feedback — Share your experience with the language

The project README now includes feature highlights with code examples, performance benchmarks, platform support matrix, and installation instructions for all platforms.