1.3.0 released!

70 views
Skip to first unread message

Julien Viet

unread,
Jun 13, 2014, 10:18:58 AM6/13/14
to crash...@googlegroups.com
Hi All,

I’m really happy to announce the 1.3.0 release after many months of development! the release is available for download and should be available through other channels soon. Check http://www.crashub.org .

The development of CRaSH does not follow a precise roadmap per se, the development of 1.3 started about a year ago with the idea to have a more powerful scripting capabilities. So the main idea of 1.3 is giving to CRaSH the capability of being polyglot and decoupling of CRasH from Groovy language. That being said I will try to sum up what is new and noteworthy in CRaSH 1.3:

1/ polyglot-able : CRaSH can now integrate more languages both for the Repl and the commands. In practice this is not yet much exploited due to a lack of time and contributions.

2/ Object pipeline, this was in CRaSH since 1.1 but not advertised much because of the lack of maturity, fully supported with CRaSH 1.3. Each command can focus on a single business task and they can be then combined to to create powerful constructs:

# the classic example
% thread ls | thread dump | mail send -s “the thread dump” ad...@foo.org

2/ Groovy Repl : one of the best feature of this release, allows you to write Groovy code mixed with commands, for example:

# executes 10 times the env command, sleep one second.
% (1..10).each { env(); Thread.sleep(1000); }

# command pipeline can be created and combined with Groovy closures making it very powerful
% ( thread.ls | { thread -> [id:thread.id,name:thread.name] } | mail.send { s=“the thread dump”; “ad...@foo.org" } )()

3/ Java commands : you can now write commands in java languages. Useful for runtimes that don’t want to embed or deal with Groovy.

4/ New web connector with crash.js built on top of websocket (powering the demo http://try.crashub.org)

5/ Mount point configuration : a very recent feature giving the ability to configure conf and command paths.

6/ Key events : a command can trivially receive keystroke events if it desire (this is how the new less command is implemented)

Beside that CRaSH ecosystem has also grown reaching more users:

- A few open source projects embed it: http://www.crashub.org/embedded.html
- Several package managers integrate it: http://www.crashub.org/managers.html)

cheers

Julien Viet
julienviet.com


Reply all
Reply to author
Forward
0 new messages