Skip to content

Releases: Kampfkarren/selene

[0.27.1] - 2024-04-28

28 Apr 20:11
Compare
Choose a tag to compare

Fixed

  • Fixed Instance.new's second parameter being incorrectly marked as required.

[0.27.0] - 2024-04-28

28 Apr 18:59
Compare
Choose a tag to compare

Added

  • Added CFrame.lookAlong to the Roblox standard library
  • Added deprecated config field to standard library function parameters

Changed

  • Updated the warning message for the mixed_table lint to include why mixed tables should be avoided
  • Properly deprecated Instance.new's second argument in the Roblox standard library

[0.26.1] - 2023-11-11

11 Nov 23:53
Compare
Choose a tag to compare

Fixed

[0.26.0] - 2023-11-11

11 Nov 23:23
Compare
Choose a tag to compare

Added

  • Added table.move and math.tointeger to Lua 5.3 standard library
  • Added bit32.* functions to Lua 5.2 standard library
  • Added table.pack, rawlen and package.config to Lua 5.2 standard library
  • Added new empty_loop lint, which will check for empty loop blocks.
  • Added new roblox_suspicious_udim2_new lint, which will warn when you pass in too few number of arguments to UDim2.new.
  • roblox_incorrect_roact_usage now lints for illegal Name property
  • Added ignore_pattern config to global_usage, which will ignore any global variables with names that match the pattern
  • roblox_incorrect_roact_usage now checks for incorrect Roact17's createElement usage on variables named React. For Roact17 only, key, children, and ref are valid properties to Roblox instances.
  • Excludes are now respected for single files.
  • Added no-exclude cli flag to disable excludes.
  • When given in standard library format, additional information now shows up in incorrect_standard_library_use missing required parameter errors.
  • Added new mixed_table lint, which will warn against mixed tables.
  • Added bit32.byteswap to Luau standard library
  • Added buffer library to Luau standard library
  • Added SharedTable to Roblox standard library

Changed

  • Updated internal parser, which includes floor division (//), more correct parsing of string interpolation with double braces, and better parsing of \z escapes.

Fixed

  • string.pack and string.unpack now have proper function signatures in the Lua 5.3 standard library.
  • Moved math.log second argument addition from Lua 5.3 std lib to 5.2 std lib
  • undefined_variable now correctly errors when defining multiple methods in undefined tables
  • Corrected os.exit definition in Lua 5.2 standard library
  • Fixed manual_table_clone incorrectly warning when loop and table are defined at different depths

New Contributors

Full Changelog: 0.25.0...0.26.0

[0.25.0] - 2023-03-12

13 Mar 00:23
Compare
Choose a tag to compare

Added

  • Added CFrame.fromEulerAngles to the Roblox standard library.
  • Added validate-config command, which will report any errors in your configuration.
  • Added capabilities command, which will report the feature set of the selene installation. This is useful for consumers like the VS Code extension.

Changed

  • Unknown keys in configuration files are accepted less often now.
  • Updated internal parser, supporting Chinese characters better.

Fixed

  • "Legacy" Roblox enums (such as Enum.RaycastFilterType.Whitelist/Blacklist) are now automatically created and marked as deprecated in generated standard libraries.
  • Fixed a bug where manual_table_clone would incorrectly lint code in loops. (#479)

[0.24.0] - 2023-01-10

10 Jan 09:04
Compare
Choose a tag to compare

Added

  • Added new manual_table_clone lint, which will catch manual re-implementations of table.clone in Luau.
  • Added filename field to diagnostic message labels in JSON output, indicating for which file the message was generated (#453)

Changed

  • Improved the error message for using a standard library that can be detected as outdated.
  • Updated internal parser, giving support for string interpolation for Luau and fixing some parsing bugs.

Fixed

  • Fixed "library" being typo'd as "libary" in the error when finding a usage.

[0.23.1] - 2022-12-06

07 Dec 05:05
Compare
Choose a tag to compare

Fixed

  • Fixed event warnings not being possible to filter out with roblox_incorrect_roact_usage.

[0.23.0] - 2022-12-06

07 Dec 03:11
Compare
Choose a tag to compare

Added

  • Added --display-style=json2, which gives the same outputs as --display-style=json, but with an extra type field so that it can support more than diagnostics. Extensions should move over to --display-style=json2 as more becomes available for it, but take care to check for type. Currently the only possible value is "Diagnostic".
  • Added rawlen to the Luau standard library.
  • Added Font.fromEnum, Font.fromName, and Font.fromId to the Roblox standard library.
  • Added the missing table.foreachi function to Lua 5.1 standard library as deprecated.

Fixed

  • warn in the Roblox standard library now properly works with all data types instead of only strings.

[0.22.0] - 2022-10-15

15 Oct 22:02
0c631d5
Compare
Choose a tag to compare

Added

  • Added --allow-warnings option to have selene pass when only warnings occur.
  • Added the ability to allow specific patterns in the deprecated lint.
  • Added exclude option to selene.toml for excluding files from lints.
  • Adds support for .yaml extensions to be used for standard libraries alongside .yml.
  • Normalized "lint" terminology over "rule" throughout codebase. "rules" in selene.toml should now be "lints", but "rules" will still be supported for backwards compatibility.

Changed

  • Updated internal parser, giving substantial parsing speed increases.

New Contributors

  • @guidojw made their first contribution in #428
  • @kyojindev made their first contribution in #425
  • @sisco0 made their first contribution in #441
  • @sno2 made their first contribution in #444

[0.21.1] - 2022-09-19

20 Sep 00:01
Compare
Choose a tag to compare

Fixed

  • Fixed not being able to use projects without selene.toml.