Releases: Kampfkarren/selene
Releases · Kampfkarren/selene
[0.28.0] - 2025-01-09
Added
- Added
Path2DControlPoint.new
,Content.fromUri
,Content.fromAssetId
, andContent.fromObject
to the Roblox standard library - Adds
lua_versions
to standard library definitions. Specifying this will only allow the syntax used by those languages. The default standard libraries now specify these, meaning that invalid syntax for that language will no longer be supported. - Added missing third parameter to
PathWaypoint.new
in the Roblox standard library - Added
vector
library to Luau standard library - Added
math.map
to the Luau standard library
Changed
- Upgrades to full-moon 1.0.0, which should provide faster parse speeds, support for multiple parsing errors at the same time, and support for some new Luau syntax.
[0.27.1] - 2024-04-28
Fixed
- Fixed
Instance.new
's second parameter being incorrectly marked as required.
[0.27.0] - 2024-04-28
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
Fixed
- Fixed
UDim2.new()
firing theroblox_suspicious_udim2_new
lint.
[0.26.0] - 2023-11-11
Added
- Added
table.move
andmath.tointeger
to Lua 5.3 standard library - Added
bit32.*
functions to Lua 5.2 standard library - Added
table.pack
,rawlen
andpackage.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 toUDim2.new
. roblox_incorrect_roact_usage
now lints for illegalName
property- Added
ignore_pattern
config toglobal_usage
, which will ignore any global variables with names that match the pattern roblox_incorrect_roact_usage
now checks for incorrect Roact17'screateElement
usage on variables namedReact
. For Roact17 only,key
,children
, andref
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
andstring.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
- @checkraisefold made their first contribution in #500
- @ccuser44 made their first contribution in #497
- @chriscerie made their first contribution in #510
- @HolterPhylo made their first contribution in #532
- @Zash made their first contribution in #540
- @MixeroTN made their first contribution in #551
- @williamboman made their first contribution in #554
- @f1rstlady made their first contribution in #549
- @rokoblox made their first contribution in #553
Full Changelog: 0.25.0...0.26.0
[0.25.0] - 2023-03-12
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
Added
- Added new
manual_table_clone
lint, which will catch manual re-implementations oftable.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
Fixed
- Fixed event warnings not being possible to filter out with
roblox_incorrect_roact_usage
.
[0.23.0] - 2022-12-06
Added
- Added
--display-style=json2
, which gives the same outputs as--display-style=json
, but with an extratype
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 fortype
. Currently the only possible value is "Diagnostic". - Added
rawlen
to the Luau standard library. - Added
Font.fromEnum
,Font.fromName
, andFont.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
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.