Выпустил
релиз Guile-SSH 0.5.0.
Вот краткий список наиболее заметных изменений:
- Каналы (channels) Guile-SSH теперь представлены в виде обычных
портов GNU Guile, что позволяет работать с ними, используя
стандартные процедуры ввода-вывода, такие как display
и read-line. Данное изменение позволило убрать несколько
специфичных процедур для работы с каналами, что
сделало API проще и понятнее.
- Добавлена документация в
формате Texinfo.
При сборке докуменация конвертируется в формат справочной
системы Info, и при установке сохраняется в
стандартный каталог ${prefix}/share/info.
- Добавлена поддержка аутентификации по открытым ключам с
использованием SSH-агента.
Для использования нового способа аутентификации предлагается
использовать новую процедуру userauth-autopubkey!
- session-set! и server-set! теперь принимают
значение опции log-verbosity в виде символа, вместо
числа.
- Удалены дубликаты некоторых опций Guile-SSH сессий и
сервера: port-str (опция дублировала port, только
принимала значение в виде строки), log-verbosity-str
(дублировала log-verbosity, только принимала значение в
виде строки). Удалена опция add-identity (полностью
дублировала identity).
- Добавлены новые процедуры: channel-set-stream!,
channel-get-stream, session?, server?,
message?, userauth-autopubkey!
- Обновлены примеры программ, написанных с использованием
Guile-SSH (sssh и ssshd), добавлены новые примеры (эхо-клиент и
эхо-сервер).
- Добавлены автоматические тесты.
Исходый код нового релиза можно получить под лицензией GNU GPLv3+ на
GitHub:
https://github.com/artyom-poptsov/libguile-ssh/releases/tag/v0.5.0
Напомню, что Guile-SSH предоставляет доступ к протоколу SSH для
программ, написанных на языке Scheme (диалекте Lisp).
- Артём