- fix
rename_variables
rule to rename module names in types (#233) - fix string encoding containing unicode characters taking more than 1 byte (#232)
- fix
append_text_comment
to not add an extra space to comments (#231) - add rule to remove floor divisions (
remove_floor_division
) (#230) - fix
remove_assertions
rule to make theassert
calls return their arguments (#229) - add rule to remove continue statements (
remove_continue
) (#227) - fix negative zero sign erasure (#222)
- add
remove_if_expression
rule (#221)
- migrate parser to the latest version. Reduce stack overflow issues, add support for compound assignments using floor division and leading symbols in union and intersection types (#219)
- fix
remove_unused_variable
rule (#192) - add
except
parameter to skip comments when using theremove_comments
rule (#194) - fix generators that creates spaces when writing field expressions, function statements and field-types (#193)
- add
convert
command to convert data files (json
,json5
,yaml
andtoml
) into Lua modules (#178) - remove previously generated files between process runs in watch mode (#177)
- fix
remove_compound_assignment
rule to avoid copying variable tokens (#176) - add get link button to try-it page (#175)
- add rule to remove unused variables (
remove_unused_variable
). Fix issue withrename_variables
whereself
variables and some cases of variable shadowing were not correctly renamed (#172)
- fix
append_text_comment
rule to support multiline comments (#167)
- fix relative parent paths when working with sourcemaps (#164)
- add rule to remove assertions (
remove_assertions
) (#163) - add rule to remove Roblox profiling function calls (
remove_debug_profiling
) (#162) - add rule to remove interpolated strings (
remove_interpolated_string
) (#156) - add support for floor division (
//
) operator in binary expressions (#155) - add support for Luau interpolated strings (#94)
- add rule to append text comments (#141)
- fix undeclared modules variable when bundling (#151)
- fix bundling to handle modules with early return calls. This change also makes the bundled code preserve the module require ordering (#147)
- fix bundling to avoid token reference removal errors (#146)
- fix
remove_types
rule to handle type cast of expressions that could return multiple values (#142)
- fix type packs, function variadic types and variadic type packs (#137)
- fix generic types on function types (#136)
- fix table types to allow string literal property types (#135)
- fix lost comment or spacing tokens in empty ASTs (#132)
- add rule to remove Luau types (#130)
- add support for Luau types (#129)
- add watch argument (
--watch
or-w
) to process command to automatically re-run darklua on file changes (#123)
- fix crashes when bundling code and fix
remove_spaces
andremove_comments
rule for missing cases (if expressions and numeric for) (#119)
- make rojo sourcemap paths relative to its file location (#117)
- convert configuration to snake case (this renames the
retain-lines
generator toretain_lines
) (#114) - fix dense and readable string generator to escape extended ascii using backslashes (#111)
- fix number parsing to support underscore after decimal point (like
0._123
) (#110) - add rule to convert require modes (from paths to Roblox instances) (#107)
- fix number parsing to support underscores before
x
in hexadecimal number and beforeb
in binary numbers (#103) - add bundling with path require mode (#97)
- upgrade full-moon parser to 0.18.1 (#100)
- enable stacker feature on full-moon to avoid stack overflows on large input (#109)
- improve
convert_index_to_field
to refactor table entries (#88) - fix
remove_nil_declaration
(#84) - upgrade CLI library (mostly changes the help messages format) (#83)
- add rule to remove compount assignments (#78)
- enhance
remove_unused_if_branch
to process if expressions (#77) - remove possible panic in AST parsing (#74)
- fix large AST parsing issue (#73)
- refactor ParserError into an opaque struct (instead of an enum) (#71)
- refactor darklua frontend (#69):
- the
--config-path
argument of theminify
command was removed - the configuration file does not accept the
column_span
field anymore (use thegenerator
field instead) - darklua can now also read
.luau
files
- the
- update configuration file (!60)
- add rule to remove statements after a do blocks returns early (!59)
- fix readable formatter to put a space after
return
keywords (!58) - fix the
remove_nil_declaration
to also pop commas correctly (!57) - fix bug where filtering statements of a block would panic when there were missing semicolons (!56)
- add rule to remove unnecessary
nil
values in local assignments (!54) - enhance the
compute_expression
rule to remove left side of binaryand
oror
expressions when they always return the right side and they don't have side effects (!53) - add support for if expressions (!51)
- add function to get all valid rule names (!46)
- add
include_functions
property torename_variables
to prevent function name renaming and removegroup_local_assignment
andconvert_local_function_to_assign
from default rules (!44) - add
env
property toinject_global_value
to inject an environment variable value (!43) - fix command line tracing logs for planned work (!42)
- fix extra space generated with retain-lines generator on field expressions (!41)
- enhance the
compute_expression
rule by processing<
,<=
,>
and>=
operators (!40) - enhance the
compute_expression
rule by processing parentheses expressions (!39) - add rule to convert index expression to field expression (!36)
- add logging to time processing steps (!35)
- add rule to remove spaces (!34)
- add rule to remove comments (!33)
- fix block mutations to handle semicolon tokens (!32)
- enhance the
compute_expression
rule by improving the evaluation of binary and unary expressions (!31)
- enhance the
inject_global_value
rule to work also from the global table (_G
) (!30)
- add new generator that retains line numbers (!28)
- add token information to Block (!27)
- add computation of binary expression using concat operator (!25)
- fix bugs with string generation (!26)
- add token information to AST (!24)
- add readable code generator (!13)
- add rule to compute expressions (!12)
- add rule to inject a value into a global variable (!10)
- add rule to remove function call parentheses (!11)
- add rule to convert local functions to local assignments (!4)
- add rule to group local assignment statements (!8)
- add rule to remove unused if branches (!7)
- fix code generation bugs (!9)
- add rule to remove unused while statements (!6)
- add rule to remove method definitions (!5)
- add rule to rename variables (!2)
- add process command and rule to remove empty do statement (!1)
- minify command