Skip to content

[Types] Inline LuaCATS busted+luassert type annotations - #8405

Open
keithharvey wants to merge 1 commit into
fmtfrom
mig-busted-types
Open

[Types] Inline LuaCATS busted+luassert type annotations#8405
keithharvey wants to merge 1 commit into
fmtfrom
mig-busted-types

Conversation

@keithharvey

@keithharvey keithharvey commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator

Warning

Don't merge this PR by itself — it's one slice of a stacked review.
Merging an intermediate PR breaks the stack. The whole cleanup lands by
merging only the tip, fmt-llm, which pulls in every branch below it.

Part of BAR type-error cleanup. Rebuilds idempotently from master via just bar::migrate::stylua-cleanup-generate.

What it does: Hand-curated (not a codemod): vendors LuaCATS/busted and LuaCATS/luassert type annotations under types/busted/ and types/luassert/.

# busted-types - vendor LuaCATS busted + luassert type annotations under
# types/busted and types/luassert with per-directory provenance.md. Carried-
# commit leaf — no codemod; curated branch holds the hand-authored commit.

Waits on lumen-oss/lux#953 to replace with a Lux dev-dep declaration.

Branch Topology

All branches in the BAR type-error cleanup stack — see Bulk Migrations for the migration log and how to run just bar::migrate::stylua-cleanup. Regenerated deterministically by just bar::migrate::stylua-cleanup-generate. Generated 2026-08-04 22:18:37 UTC.

Leaves — each isolates one transform's diff vs fmt:

Branch Command Diff vs parent Units
fmt stylua 1429 files, +308036 −194387 ✅ pass
mig-bracket bar-lua-codemod bracket-to-dot 352 files, +8330 −8330 ✅ pass
mig-rename-aliases bar-lua-codemod rename-aliases 178 files, +377 −377 ✅ pass
mig-detach-bar-modules bar-lua-codemod detach-bar-modules 183 files, +1941 −1831 ✅ pass
mig-integration-tests <hand curated> 27 files, +174 −173 ✅ pass
👉 mig-busted-types — you are here <hand curated> 18 files, +1539 −92 ✅ pass

Rollups — composite branches stacking the leaves and (for fmt-llm) the env + LLM layers:

Branch Diff vs master Diff vs parent Units
mig 1449 files, +312829 −197631 529 files, +12217 −10668 ✅ pass
fmt-llm-source 1453 files, +313191 −197778 57 files, +394 −179 ✅ pass
fmt-llm 1454 files, +313241 −197799 32 files, +66 −37 ✅ pass

@github-actions

github-actions Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Integration Test Results

15 tests  ±0   7 ✅ ±0   4s ⏱️ ±0s
 1 suites ±0   8 💤 ±0 
 1 files   ±0   0 ❌ ±0 

Results for commit 63936d5. ± Comparison against base commit 07a42c4.

♻️ This comment has been updated with latest results.

Comment thread luaui/configs/DistortionGL4Config.lua Outdated
@keithharvey
keithharvey force-pushed the mig-busted-types branch 2 times, most recently from 647817f to b945ce4 Compare July 29, 2026 19:07
@keithharvey
keithharvey force-pushed the fmt branch 2 times, most recently from 9b6bb4c to 087892a Compare July 29, 2026 19:56
Vendored LuaCATS annotations for busted/luassert to provide
IntelliSense for the unit-test surface. Lives on its own leaf so the
discussion around 'vendoring LuaCATS types' can happen in isolation —
prior pushback on the same direction in an earlier unit-testing PR
makes this the right place to litigate it rather than burying it in a
broader env commit.

Why vendored instead of declared as a Lux dep: Lux does not yet
support pulling LuaCATS annotations from library deps, and quick
attempts to wire this up in Lux failed. Upstream tracking issue:
lumen-oss/lux#953 — once that lands, these
directories should be deleted in favor of declaring busted as a
normal Lux dev-dep.

Sources (pinned SHAs):
  - types/busted/   https://github.com/LuaCATS/busted
                    @ 5ed85d0e016a5eb5eca097aa52905eedf1b180f1
  - types/luassert/ https://github.com/LuaCATS/luassert
                    @ d3528bb679302cbfdedefabb37064515ab95f7b9

See types/busted/provenance.md and types/luassert/provenance.md for
per-directory upstream refs + license status.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants