welaika / photocopier

FTP & SSH file copier
MIT License
17 stars 15 forks source link

Crashes on Mac os with Ruby 3.1.2 #24

Open chrilleferna opened 7 months ago

chrilleferna commented 7 months ago

I'm using Wordmove to sync Wordpress applications between my Mac dev environment and servers, and I recently created an issue because Wordmove crashes, and the crash relates to Photocopier.

The most recent version of Photocopier relies on net-ssh 6.1 which appears to be incompatible with my environment: Ventura 13.6.4 and Ruby 3.2.1. It is quite possible that this could be fixed by using net-ssh 7.x instead.

Error log:

/Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/openssl.rb:152:in `public_key=': pkeys are immutable on OpenSSL 3.0 (OpenSSL::PKey::PKeyError)
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/openssl.rb:152:in `read_keyblob'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/buffer.rb:325:in `read_keyblob'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/buffer.rb:248:in `read_key'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:148:in `block (2 levels) in keys_for'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:132:in `each_line'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:132:in `block in keys_for'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:131:in `open'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:131:in `keys_for'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:61:in `block in search_in'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:61:in `each'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:61:in `flat_map'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:61:in `search_in'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/known_hosts.rb:55:in `search_for'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/session.rb:98:in `host_keys'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/algorithms.rb:277:in `prepare_preferred_algorithms!'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/algorithms.rb:153:in `initialize'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/session.rb:88:in `new'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh/transport/session.rb:88:in `initialize'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh.rb:251:in `new'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/net-ssh-6.1.0/lib/net/ssh.rb:251:in `start'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/photocopier-1.4.1/lib/photocopier/ssh.rb:71:in `session'
    from /Users/christer/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/gems/photocopier-1.4.1/lib/photocopier/ssh.rb:18:in `get'