Ok, thank you for your reply. I will give it a try then soon on one of my pet projects! Thanks!

On 05/18/2015 09:25 PM, Marc Limotte wrote:
Hi Max.

I'm not actively doing any work on it. Mainly because there are no requests for changes. It's pretty straight-forward. I haven't tested it with later versions of Clojure, but I'm not aware of any breaking changes, so I would expect it to work.

There are some alternatives, e.g. https://github.com/Raynes/conch

marc


On Mon, May 18, 2015 at 2:55 PM, Max Gonzih <gon...@gmail.com <mailto:gon...@gmail.com>> wrote:

    Hello,

    I just found about this nice improvement over default java.shell
    provided by clojure stdlib.
    What is current status of this project? Is it still useful or
    maybe there are alternatives?
    Does it support latest clojure versions (1.6 or even maybe 1.7-beta)?

    Thanks!

    On Tuesday, June 25, 2013 at 5:57:58 PM UTC+2, mlimotte wrote:

        I'm announcing java.shell2
        <https://github.com/mlimotte/java.shell2>. It is backward
        compatible with clojure.java.shell.  This is a Clojure library
        to facilitate launching of sub-processes and piping
        (streaming) data.

        Features
        - A declarative syntax for defining new processes to specify
        input, output, encoding, and other behavior
        - Handling for common use-cases (i.e. pass stdout/err of the
        process to the same destination as the parent, merge stderr of
        the process to stdout, output directly to a File, etc)
        - The pipe macro handles all the complexity of managing
        multipe streams and threads for streaming data through
        multiple processes and clojure functions.
        - Backward compatible with existing code that uses
        clojure.java.shell (i.e. a drop-in replacement)

        Shell has additional predicates like :pass, which will connect
        STDOUT or STDERR of the process to the STDOUT/ERR of the
        parent JVM.

            (sh "wc" "-l" :in input :err :pass :out (io/file "/tmp/foo"))

        So the above form reads input (which can be a file, stream,
        string, etc), forwards the output to a file and redirects
        STDERR to STDERR of the JVM.

        And here's an example of a pipe:

            (pipe
              (sh "cat" :in input)
              my-filter-fn    ;A clojure function -- data is streamed
              (sh "wc" "-l"))


        This library was developed at The Climate Corporation
        <http://climate.com/>, so a big thank you to them for allowing
        me to open source this code under an EPL license. Climate Corp
        has one of the largest Clojure development teams.  We are an
        established startup with offices in San Francisco and Seattle;
        and are currently hiring full-time Clojure developers, data
        scientists, product managers and more
        <http://climate.com/careers>.

        See the README for more details and many examples in the unit
        tests.

        I know there are other shell libraries for Clojure.  My main
        motivation is that I wanted something closer to the
        clojure.java.shell api.

        Marc Limotte


-- You received this message because you are subscribed to the Google
    Groups "Clojure" group.
    To post to this group, send email to clojure@googlegroups.com
    <mailto:clojure@googlegroups.com>
    Note that posts from new members are moderated - please be patient
    with your first post.
    To unsubscribe from this group, send email to
    clojure+unsubscr...@googlegroups.com
    <mailto:clojure%2bunsubscr...@googlegroups.com>
    For more options, visit this group at
    http://groups.google.com/group/clojure?hl=en
    ---
    You received this message because you are subscribed to the Google
    Groups "Clojure" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to clojure+unsubscr...@googlegroups.com
    <mailto:clojure+unsubscr...@googlegroups.com>.
    For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to a topic in the Google Groups "Clojure" group. To unsubscribe from this topic, visit https://groups.google.com/d/topic/clojure/hS4T84fctqk/unsubscribe. To unsubscribe from this group and all its topics, send an email to clojure+unsubscr...@googlegroups.com <mailto:clojure+unsubscr...@googlegroups.com>.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- You received this message because you are subscribed to the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to