guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ANN] Guile-SSH 0.8.0 released


From: Ludovic Courtès
Subject: Re: [ANN] Guile-SSH 0.8.0 released
Date: Tue, 01 Sep 2015 14:08:17 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Hi!

Artyom Poptsov <address@hidden> skribis:

> * Changes in version 0.8.0 (2015-08-04)
> ** Implement port forwarding
> ** Add distributed forms
> ** Require libssh 0.6.4 or 0.6.5
> ** New module: (ssh tunnel)
>    The module provides hi-level procedures for SSH tunneling.
> ** New module: (ssh dist)
>    The module provides distributed forms of 'map' and 'eval', as well as
>    remote REPL (RREPL) implementation.
> ** New module: (ssh dist job)
>    Low-level API for distributed jobs.
> ** New module: (ssh dist node)

Maybe this went unnoticed, but these are really awesome features!

A couple of comments on ‘with-ssh’.  I think the manual should
explicitly remind people that the REPL server must already be running on
the remote machine.  I wonder if it would make sense to offer an
alternate option where the calling machine invokes ‘guile’ on the remote
side and talks to it on stdin; this could simplify some use cases.
WDYT?

I tried something along the lines of the example that’s in the manual:

  (let ((session (make-session #:user "ludo" #:host "xxx")))
    (connect! session)
    (userauth-agent! session)
    (with-ssh (make-node session)
              (use-modules (ice-9 q))
              (list 1 2 3)))

This returns the 4 values, including '(1 2 3) as expected.

However, this:

  (let ((session (make-session #:user "ludo" #:host "xxx")))
    (connect! session)
    (userauth-agent! session)
    (with-ssh (make-node session)
              (use-modules (ice-9 ftw))
              (scandir "/")))

returns only two values, the language and the module.

Am I missing something?

Thanks,
Ludo’.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]