Skip to content

v0.18.0

Compare
Choose a tag to compare
@github-actions github-actions released this 14 Jun 15:24

[0.18.0] - 2023-06-14

Added

  • Multiline ignores (-- stylua: ignore start / -- stylua: ignore end) will now work within table fields:
require("foo").bar {
	-- stylua: ignore start
	baz      =0, -- < not formatted
	foo   =   2, -- < not formatted
	-- stylua: ignore end
	bar        =     1234 -- < formatted
}
  • Added option "Input" to call_parentheses setting, where call parentheses are retained based on their presence in the original input code.
    Note: this setting removes all automation in determining call parentheses, and consistency is not enforced.

Changed

  • Improved heuristics around Luau type excess parentheses removal, so unnecessary parentheses around types are removed in more locations

Fixed

  • Function calls are now formatted onto multiple lines if the opening brace { of a multiline table forces one of the lines over width
  • Fixed missing option --sort-requires to enable sort requires on the command line
$ stylua --sort-requires test.lua
  • Fixed parentheses removed around Luau optional type (B?) causing syntax errors when present in an intersection A & (B?)
  • Fixed comments lost when parentheses removed around Luau types
  • Fixed race condition where if a file is passed more than once as an argument to format, then it could potentially be wiped completely (for example, if an ancestor directory is passed and recursively searched, as well as the file itself)