Releases: ableinc/lineup
v1.1.0
Here's a condensed release description for GitHub:
What's new in 1.1.0
TypeScript support
Lineup now scans .ts / .tsx projects for V8 JIT memory layout inefficiencies. V8 stores number properties as unboxed 8-byte doubles and everything else as 4-byte tagged pointers — interleaving them wastes memory the same way Go struct padding does. Lineup analyzes class, interface, and object type alias declarations and suggests an optimal property order.
Language selector
Pick Go or TypeScript before each scan. The architecture selector is hidden for TypeScript scans (V8 always uses 64-bit pointer compression). A default language preference is available in Settings.
Declaration kind badges
Results cards and the detail panel now show a class, interface, or type badge for TypeScript results. The toolbar label adapts to "declarations" for TypeScript scans.
Under the hood
- Pure-Rust TypeScript parser via
oxc_parser0.128 — no C build step languagecolumn added to scan history; backward-compatible with existing databases- node_modules, dist,
build/,.next/,.nuxt/,coverage/,.cache/auto-skipped in TypeScript mode
v1.0.0
Lineup
Lineup is a desktop app that scans Go repositories and finds struct types that waste memory due to field padding. It shows you exactly which structs can be improved, how many bytes can be saved, and what the optimized field order looks like — without touching your source files.
What does it do?
Go aligns struct fields in memory according to their type's alignment requirements. When fields are ordered carelessly, the compiler inserts hidden padding bytes between them to satisfy alignment rules. Lineup detects this, computes the optimal field order, and tells you how much memory each struct is wasting.
No changes are made to your code. Lineup only reads and reports.
Windows Users: Please advise
SmartScreento trust this executable. macOS and Linux bundles are signed.