X Tutup
Skip to content

Commit e08e943

Browse files
authored
Update CHANGELOG.md (#469)
The release notes for 0.6.0 is only available via the GitHub release page; add this to the changelog Resolves: #468 Signed-off-by: Michel Lind <salimma@fedoraproject.org>
1 parent 06191f0 commit e08e943

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

CHANGELOG.md

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,58 @@
1+
# MoonScript v0.6.0 (2026-01-10)
2+
3+
## New Features
4+
5+
### Command Line Improvements
6+
7+
- **Switched from alt_getopt to argparse** - Both `moon` and `moonc` now use argparse for argument parsing, providing better help messages via `--help` and more robust option handling
8+
- **Added `-e/--execute` flag to `moon`** - Execute MoonScript code directly from the command line:
9+
```
10+
moon -e "print 'Hello World'"
11+
```
12+
- **New `--transform` option for `moonc`** - Allows custom AST transformations before compilation by specifying a module that receives and returns the syntax tree
13+
- **Improved `-` (stdin) handling** - Now properly enforces that `-` must be the only argument
14+
15+
### moonc Option Renames
16+
- `-w` is now also available as `--watch`
17+
- `-l` is now also available as `--lint`
18+
- `-t` is now also available as `--output-to`
19+
20+
### New Tools
21+
22+
- **moon-tags** - New script for generating ctags-compatible tag files for MoonScript, with support for:
23+
- Class definitions
24+
- Class methods
25+
- Top-level function definitions (exported via `{:func}` pattern)
26+
- Lapis route detection (`--lapis` flag)
27+
- Optional line numbers (`--include-line` flag)
28+
- Optionally skip header (`--no-header` flag)
29+
30+
### Utility Improvements
31+
32+
- **`moon.p()` now prints multiple arguments** - Pass multiple values and each will be dumped
33+
- **`util.dump` shows class names** - When dumping objects, the class name is displayed (e.g., `<MyClass>{...}`)
34+
35+
### Compiler Enhancements
36+
37+
- **Lua keyword property access on self** - Properties with Lua keyword names (like `@then` or `@@then`) now compile correctly using bracket notation instead of invalid `self.then`
38+
39+
## Bug Fixes
40+
41+
- **Fixed ambiguous Lua generation after `import`** - Semicolons are now correctly inserted when the next line starts with `(`, preventing parsing ambiguity
42+
- **Fixed update operators with complex chain indexes** - Expressions like `a[func()].x += 1` now correctly lift the index expression to avoid double evaluation
43+
- **Exit with proper error code** - `moon` now exits with code 1 when the executed script fails
44+
- **Fixed `moonc -`** - Reading from stdin now works correctly
45+
- **Removed accidental debug print** - Removed stray `print file, time` in watcher code
46+
- **`dump.tree` returns string** - Now returns the string instead of printing directly
47+
- **Removed noisy "Built" message** - Single file compilation no longer prints "Built" to stderr
48+
49+
## Internal Changes
50+
51+
- Migrated CI from Travis to GitHub Actions
52+
- Added comprehensive compiler and transform specs
53+
- Improved binary building workflow for Windows and Linux
54+
- Better error messages for invalid destructure assignments
55+
- Updated `splat.moon` to use argparse, added `--strip-prefix` option
156

257

358
# MoonScript v0.5.0 (2016-9-25)

0 commit comments

Comments
 (0)
X Tutup