Skip to content

New event handling strategy

Latest
Compare
Choose a tag to compare
@theophilusx theophilusx released this 07 Aug 02:09
· 4 commits to master since this release

This release introduces a new event handling strategy.

  • Global event listeners no longer raise errors. Only log events and invalidate connection object.
  • Constructor allows passing in custom global event listeners whi8chn can do whatever is appropriate for the client
  • All temporary local event listeners wil now call the associated promise rejedct method. Previously reject was only called for error events, but this caused problems for some badly behaving sftp servers which ended connections without signalling any error condition. This would cause promises to be stuck in an unfulfilled state.

While the above changes do not change the existing API, the change in global listener behaviour may result in changes for client code behaviour, so this update is marked as a whole new version. However, most clients should not experience any change an in fact, things should be more stable with less liklihood of uncaught errors killing top level processes. It is expected that few clients will need to supply custom global event listeners as the defaults should work fror the vast majority of clients 'out of the box'. Chances are very high you will be able to update to this vwersion from 10.0.3 with no impact or nee3d for code change.