mirror of
https://github.com/luau-lang/luau.git
synced 2025-08-26 11:27:08 +01:00
# What's Changed? Short week, so a slightly shorter release! This one has been focused on improving polish in fragment autocomplete and the new solver. ## New Type Solver * Fix a bug where we didn't infer self types correctly under bidirectional type inference. * Improve the memory consumption of the new solver by reducing the number of expensive allocations performed by `Substitution`. * The New non strict Mode shouldn't issue errors when we call checked functions with `never` values. * Extend the number of cases in which the new non strict mode can report unknown symbols. * Fix a bug where `and` and `or` expressions didn't correctly forward information computed by their operands. This should allow more programs using these expressions to complete typechecking correctly. * Small performance improvements for `Generalization` ## Fragment Autocomplete * Fragment autocomplete provides richer autofill information when typing `self.|` * Fragment autocomplete now uses refinement information computed in the new solver to provide more accurate incremental completion. ## Code Generation * Fix a bug where Codegen could sometimes try to execute a non-executable page --- Co-authored-by: Ariel Weiss <aaronweiss@roblox.com> Co-authored-by: Hunter Goldstein <hgoldstein@roblox.com> Co-authored-by: Vighnesh Vijay <vvijay@roblox.com> Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com> --------- Co-authored-by: Hunter Goldstein <hgoldstein@roblox.com> Co-authored-by: Varun Saini <61795485+vrn-sn@users.noreply.github.com> Co-authored-by: Alexander Youngblood <ayoungblood@roblox.com> Co-authored-by: Menarul Alam <malam@roblox.com> Co-authored-by: Aviral Goel <agoel@roblox.com> Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com> Co-authored-by: Ariel Weiss <aaronweiss@roblox.com> Co-authored-by: Andy Friesen <afriesen@roblox.com> |
||
---|---|---|
.. | ||
Anyification.cpp | ||
ApplyTypeFunction.cpp | ||
AstJsonEncoder.cpp | ||
AstQuery.cpp | ||
Autocomplete.cpp | ||
AutocompleteCore.cpp | ||
AutocompleteCore.h | ||
BuiltinDefinitions.cpp | ||
Clone.cpp | ||
Constraint.cpp | ||
ConstraintGenerator.cpp | ||
ConstraintSolver.cpp | ||
DataFlowGraph.cpp | ||
DcrLogger.cpp | ||
Def.cpp | ||
EmbeddedBuiltinDefinitions.cpp | ||
EqSatSimplification.cpp | ||
Error.cpp | ||
ExpectedTypeVisitor.cpp | ||
FileResolver.cpp | ||
FragmentAutocomplete.cpp | ||
Frontend.cpp | ||
Generalization.cpp | ||
GlobalTypes.cpp | ||
InferPolarity.cpp | ||
Instantiation.cpp | ||
Instantiation2.cpp | ||
IostreamHelpers.cpp | ||
JsonEmitter.cpp | ||
Linter.cpp | ||
LValue.cpp | ||
Module.cpp | ||
NonStrictTypeChecker.cpp | ||
Normalize.cpp | ||
OverloadResolution.cpp | ||
Quantify.cpp | ||
Refinement.cpp | ||
RequireTracer.cpp | ||
Scope.cpp | ||
Simplify.cpp | ||
Substitution.cpp | ||
Subtyping.cpp | ||
Symbol.cpp | ||
TableLiteralInference.cpp | ||
ToDot.cpp | ||
TopoSortStatements.cpp | ||
ToString.cpp | ||
Transpiler.cpp | ||
TxnLog.cpp | ||
Type.cpp | ||
TypeArena.cpp | ||
TypeAttach.cpp | ||
TypeChecker2.cpp | ||
TypedAllocator.cpp | ||
TypeFunction.cpp | ||
TypeFunctionReductionGuesser.cpp | ||
TypeFunctionRuntime.cpp | ||
TypeFunctionRuntimeBuilder.cpp | ||
TypeIds.cpp | ||
TypeInfer.cpp | ||
TypeOrPack.cpp | ||
TypePack.cpp | ||
TypePath.cpp | ||
TypeUtils.cpp | ||
Unifiable.cpp | ||
Unifier.cpp | ||
Unifier2.cpp |