Hello Fennelers! I've just pushed out a new 0.6.0 release. The biggest change here is that macros are loaded in a sandbox which emits a warning if they access anything outside a small list of allowed functions. This should set us on the path for safer code loading in the long run, though today it does not actually block access to these things. The idea is that macros should default to not needing to do any I/O or system-level things; they should just be about transforming code and nothing else. Right now if you try to do other things, you will get a warning, but in the future these operations will be blocked altogether. I don't foresee this causing many issues since macros shouldn't be making those kinds of calls anyway, but if you do get a warning for something that you feel like shouldn't be blocked, please bring it up so we can investigate. The other big change is the plugin system. This will allow you to extend the compiler by hooking into various lifecycle events. One example is a linter which can catch unused locals or confirm that functions you call from a module have the right number of arguments: https://git.sr.ht/~technomancy/fennel/tree/main/src/linter.fnl But the plugin API is pretty flexible and could be used for all kinds of things. Unfortunately this flexibility comes with a cost; it is also the most unstable part of Fennel since it exposes compiler internals. With Fennel we try to very hard maintain backwards-compatibility, but that compatibility does *not* apply to the plugin system at this time. We encourage you to experiment with plugins, but expect breakage. You can see some details here: https://fennel-lang.org/api#plugins For a full list of user-visible changes: * Change table reference notation in fennelview to use `@`. * Fix a bug where long arglists could get jumbled. * Add plugin system. * Sandbox compiler environment and emit a warning when it leaks. * Fix a bug where repls would fail when provided with an overridden env. * Expose `list?` and `sym?` in compiler API. * Fix a bug where method calls would early-evaluate their receiver. * Fix a bug where multi-arity comparisons would early-evaluate their arguments. * Add `--lua` CLI flag for specifying a custom Lua command/executable. (#324) Thanks to everyone who contributed to this release. You can download the latest version here: https://fennel-lang.org/downloads/fennel-0.6.0 https://fennel-lang.org/downloads/fennel-0.6.0.asc Or you can pull it in thru git or luarocks. Please note that the canonical repository is now https://git.sr.ht/~technomancy/fennel and the primary branch for development is "main" rather than the old "master" branch. cheers, Phil  - We continue to maintain a mirror on GitHub and accept pull request and bug reports at https://github.com/bakpakin/Fennel/ for users who prefer that.