All Versions
Latest Version
Avg Release Cycle
201 days
Latest Release
1699 days ago

Changelog History

  • v0.3.0 Changes

    October 28, 2019

    πŸ‘ This version adds SSH subsystem support.

    Shout-out to @bartj3 πŸ™Œ

    πŸ†• New features:

    • βž• Add support for initializing subsystems using SSH.Channel.subsystem
      • Subsystems allow applications or functions to use SSH as a protocol. Examples of this are SFTP and NETCONF over SSH.
  • v0.2.0 Changes

    October 17, 2019

    • The and SSHKit.upload/3 functions are now fully context-aware [#121]
    • They will respect the user, env, path… values set in the context

    πŸ›  Fixes:

    • πŸ‘Œ Improve documentation about our release process
    • πŸ›  Fix an Elixir 1.8 deprecation warning (#147)
  • v0.1.0 Changes

    September 18, 2018

    • πŸ‘ Require Elixir 1.5+ and drop support for lower versions.
    • πŸ›  Fix Elixir 1.5 String deprecations.
    • ⚑️ Update installation instructions.
    • βœ… Introduce Mox for mocking in unit tests.
    • πŸ‘Œ Improve and add unit tests.

    Thanks for your contributions:

    • @Bugagazavr
    • @brienw
    • @holetse

    Potentially breaking changes:

    • βœ‚ Remove :dry_run option: Depending on how you're using SSHKit, "dry-run" could have a number of different meanings
      • you may want to actually connect to the remote without changing anything or you may not want to establish a connection at all
      • some steps in the flow you're dry-running may depend on things like directories created in a previous step which won't be there
      • all in all, a "dry-run" feature is likely better handled at an application level which may know the dependencies between commands
    • Set -H option for sudo in order to get the expected value for HOME
    • πŸ— Export context environment variables directly before the supplied command in
      • this could potentially result in different behavior for code that sets environment variables consumed by the other commands in the context
      • those cases should be rare though and the new behavior seems closer to what most would expect when using contexts

    πŸ†• New features:

    • Split the SCP file upload into a setup and an execution step:
      • add and SCP.Upload.exec/2
      • SCP.Upload.transfer/4 still works as before
    • βž• Added support for ptty allocation in SSH.Channel module [#129]

    πŸ›  Fixes:

    • πŸ›  Fix error handling in SSHKit.SSH.Channel.send/4 when sending stream data
    • Context properly handles the case where env is set to an empty map
    • πŸ›  Fix environment variables export in contexts with user, group, umask, path and env
  • v0.0.3 Changes

    July 13, 2017

    πŸ†• New features:

    • βž• Added support for uploading/downloading files via the SSHKIT main DSL [#32]
    • βž• Added support for options that are shared between hosts [#61]
    • πŸ‘Œ Improved documentation [#67]
    • βž• Added support for passing an anonymous function to SSH.connect [#72]
    • βž• Add support for passing a dry_run flag to SSHKit.SSH.connect [#79]

    πŸ›  Fixes:

    • Properly return {:error, "No host given."} when trying to connect to a host which is nil [#70]
    • πŸ‘Œ Improved unit and integration tests [#59] [#75] [#77]
  • v0.0.2 Changes

    June 23, 2017

    Potentially breaking changes:

    • πŸ“‡ Renamed response from remotely executed commands from 'normal' to 'stdout' [#34]
    • πŸ“‡ Renamed SSHKit.pwd to SSHKit.path [#33] Thanks @brienw for the idea

    πŸ†• New features:

    πŸ›  Fixes:

    • πŸ”§ Accept binaries (not only charlists) for configuration. Thanks @svoynow
    • πŸ›  Fixed a bug that prevented SSHKit.env from working [#35]
  • v0.0.1 Changes

    January 26, 2017


    πŸ‘ Basic support of / wrapping around erlang :ssh.