mirror of
https://github.com/luau-lang/luau.git
synced 2025-08-26 11:27:08 +01:00
# What's changed? Another somewhat quiet week! Don't let the large PR fool you, this is mostly ... ## New Solver * The code for type functions has been re-organized: instead of _everything_ living in `TypeFunction.h` and `TypeFunction.cpp`, we now have separate files for the type function inference machinery (`TypeFunction.h`), definitions of built-in type functions (`BuiltinTypeFunctions.h`), and the implementation of user defined type functions (`UserDefinedTypeFunction.h`). * Refinements against `*no-refine*`, a sentinel type indicating that no refinements should occur, are now _always_ resolved, even if the target of the refinement would be otherwise pending, such as another type function. ## Autocomplete * Fixed autocomplete to prefer table property completion to string singleton completion. In the below example, the types associated with each member of `foo` will be displayed in autocomplete popups. ``` local foo = { ["Item/Foo"] = 42, ["Item/Bar"] = "it's true", ["Item/Baz"] = true, } foo["|"] -- cursor at `|` ``` ## Native Codegen * Fixed native compilation lowering of the new global lookup instruction, which caused code generation to fail with an error or to evaluate incorrect results. Issue affected 678-681 releases when all flags were enabled. --- Co-authored-by: Andy Friesen <afriesen@roblox.com> Co-authored-by: Ariel Weiss <aaronweiss@roblox.com> Co-authored-by: Hunter Goldstein <hgoldstein@roblox.com> Co-authored-by: Sora Kanosue <skanosue@roblox.com> Co-authored-by: Talha Pathan <tpathan@roblox.com> Co-authored-by: Vighnesh Vijay <vvijay@roblox.com> Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com> |
||
---|---|---|
.. | ||
apicalls.luau | ||
assert.luau | ||
attrib.luau | ||
basic.luau | ||
bitwise.luau | ||
buffers.luau | ||
calls.luau | ||
clear.luau | ||
closure.luau | ||
constructs.luau | ||
coroutine.luau | ||
coverage.luau | ||
cyield.luau | ||
datetime.luau | ||
debug.luau | ||
debugger.luau | ||
errors.luau | ||
events.luau | ||
exceptions.luau | ||
gc.luau | ||
ifelseexpr.luau | ||
interrupt.luau | ||
iter.luau | ||
literals.luau | ||
locals.luau | ||
math.luau | ||
move.luau | ||
native.luau | ||
native_types.luau | ||
native_userdata.luau | ||
ndebug_upvalues.luau | ||
pcall.luau | ||
pm.luau | ||
safeenv.luau | ||
sort.luau | ||
strconv.luau | ||
stringinterp.luau | ||
strings.luau | ||
tables.luau | ||
tmerror.luau | ||
tpack.luau | ||
types.luau | ||
userdata.luau | ||
utf8.luau | ||
vararg.luau | ||
vector.luau | ||
vector_library.luau |