Thread (3 messages) 3 messages, 3 authors, 2016-06-15

Re: Move JGit off JSch?

From: Robin Rosenberg <hidden>
Date: 2016-06-15 22:46:59

torsdag 25 juni 2009 20:14:28 skrev "Shawn O. Pearce" [off-list ref]:
I'm fed up with JSch.

The remote.<name>.timeout stuff I added recently to JGit causes
JSch to throw NPE on timeout[1] and the original author seems to
think that's a reasonable thing to do[2].

MINA SSHD[3] contains a different client implementation, licensed
under the Apache License 2.0.  Its currently missing public key
support[4] but the library is actually a pretty solid library,
and the author seems to have a decent clue.
Clues are useful :)
I'm really starting to consider adding the public key support the
client side of MINA SSHD, and then rewriting TransportGitSsh to use
it instead of JSch.  The downside is, that really increases our
dependency chain, and SSH key management under Eclipse becomes a
unique EGit problem as we can't piggy-back onto the existing JSch
key management already done by the workbench.
I haven't really looked into JSch internals, but rewriting complex code
without trying hard to fix the problem might not be worth it. New
code /will/ have problems and having a different mechanism for key
management is in some very obscure corner on the reverse side of
my wish list. 
But, I just spent the last ~3 hours digging around JSch trying to
I'm not quite as efficient as you, but I've spent more than three
hours on fixing much simpler things.
fix this NPE bug... and realized the code is very thread unsafe,
uses at least 2 threads per connection (your thread, and a thread
it spawns for you) so you have no choice but to use threads, and
the author seems to think random NPEs are OK (see [2] and all of
the NPE bugs on sourceforge).
Can't we bug him a little more, but then again patches are probably
more convincing than bug reports. Perhaps you could explain the 
issues in more detail before we start rewriting the key management
into SSHD. 

Should we raise a bug report in eclipse about replacing
JSch, in order to get some feedback from Eclipse people?

-- robin
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help