master (unreleased)
- Return exit code
1
on exception (#58). - Pretty print evaluation results. This is turned on by default. It is posisble to
turn off pretty printing by binding
lumo.repl/*pprint-results*
tofalse
. - Add ability to kill infinite loops at the REPL with
Ctrl+C
. - Print the Node.js version in the repl (#104).
- Add programmatic access to Lumo's version through
lumo.core/*lumo-version*
(#127). - Interrupt printing at the REPL with
Ctrl+C
(#107) - Add missing Clojure repl special vars (*1, *2, *3, *e) (#101)
- Make the classpath dynamic, add a new namespace
lumo.classpath
to interact with the Lumo classpath (#31).
- Print namespaced maps at the REPL.
- Do not print empty line if input is empty or whitespace only (make behavior
consistent with
clojure.main
). - Invalidate cache when source file changes (#54).
- Upgrade ClojureScript to version 1.9.521.
- Upgrade Closure Compiler JS to version v20170409.
- Upgrade Node.js to version 7.9.0.
print
always outputs newline (#116).- Fix crash related to calculating indentation when entering multi-line forms at the REPL (#120).
- Fix
doc
for special forms (#124). - JavaScript completion only works in readline mode (#103).
- Comments in the REPL cause reader exception errors (#74).
- Fix error when calling
child_process.fork
(#53). - Fix a bug that would prevent TTY support on Windows. Lumo is now at feature-parity with every other supported platform.
- NPM installer defaults to Windows executable on failure (#129).
1.3.0 (2017-04-02)
- Autocomplete JavaScript Node globals (#85).
- Add
dir
REPL special (#87). - Add
-V / --version
CLI option to print the Lumo version.
- Upgrade Node.js to version 7.8.0.
- Do not print verbose information on REPL startup, even if
--verbose
. - Upgrade Google Closure Compiler to v20170218.
- Don't print
nil
result on--eval
(#108). - Remove readline history duplicates (
removeHistoryDuplicates
option introduced in nodejs/node#2982)
- Enable caching for files executed from the filesystem, provided their namespace matches their location (#73).
- Port CLJS-1948's fix from upstream.
- Show completions for the empty suffixes (#83).
1.2.0 (2017-02-20)
- Add the ability to compile ClojureScript projects.
- Upgrade Node.js to version 7.5.0.
- Fix a bug where
cljs.nodejs/require
wouldn't find modules in scripts run from nested directories.
1.1.0 (2017-01-28)
- Upgrade to ClojureScript 1.9.456 (#71).
- Regression where specifying a main script to be executed would print the banner as if entering the REPL.
- Fix the semantics of the transformation of the load path into a classpath path
when using the
load
REPL special (#49).
1.0.0 (2016-11-22)
- Highlight the matching brace when inserting a closing brace.
- TCP socket REPL (#24).
- REPL editing autocompletion.
- Add a
-m / --main
command line option that specifies a namespace in the classpath in which to call a-main
function with all args after it (#27). - Add a
-a / --elide-asserts
command option that defines whether asserts in evaluated code should be ignored (#37). doc
REPL special function (#26).
- Stop compiling Lumo with a static
--use-strict
V8 flag, allows to override it at runtime (#28). - Command line arg parsing has been rewritten so that CLI arguments are parsed in
the order they appear. Additionally, similarly to the Clojure REPL, arguments that
appear after a main option will be bound to the
lumo.core/*command-line-args*
var, a seq of strings. - Print a newline when pressing ctrl+C or evaluating empty form (#29).
1.0.0-alpha3 (2016-11-15)
- Switch to a semantic versioning scheme. The next release will be 1.0.0-alpha3.
- Fix a regression in non-TTY mode introduced by emitting keypress events.
- Fix a crash that would happen if Parinfer wouldn't succeed at calculating the indentation.
1.0-alpha2 (2016-11-13)
- Add
load
REPL special function. Same as Clojure'sload
. - Add support for Windows-formatted class paths (#18).
- Add support for indentation via Parinfer when multiline editing.
- Lack of OpenSSL support breaks some Node.js modules (#2).
- Allow foreign libraries to side-effect the global scope when required.
- Improve error message when a path is not passed to
-k
(#14). - Don't throw when loading empty files (#10).
load-file
and init scripts shouldn't change the current namespace.- Don't crash if JAR not found when looking for upstream foreign libs (#19).
- Initial version.