Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
x/crypto/ssh: package does not compile with Go 1.3 or earlier #13137
Comments
|
Note that build.golang.org only tests subrepos against the past two releases (Go 1.4 and Go 1.5). Unless we change that policy, you're fighting an uphill battle trying to get tip working with Go 1.3. /cc @adg |
|
Thanks. I appreciate that canonical have bought this on themselves. On Wed, 4 Nov 2015, 08:27 Brad Fitzpatrick notifications@github.com wrote:
|
|
It's better to move this conversation to a mailing list since it cannot be considered as a Go issue. |
rakyll
closed this
Nov 3, 2015
|
Respectfully, I disagree with this assessment. On Wed, 4 Nov 2015, 09:42 Burcu Dogan notifications@github.com wrote:
|
rakyll
reopened this
Nov 3, 2015
|
Either way. Or use both. I don't feel strongly about github issue vs mailing list here. Up to ssh authors. This bug tracker is more than just the Go stdlib, though. The policy issue of support lifetime for sub repos might make a good mailing list topic |
|
Moving some of the code into a separate file sounds fine to me. I'm hesitant to make any commitments about backwards compatibility in general, but this seems like a minor change that would be useful to someone. |
ianlancetaylor
added this to the Unreleased milestone
Nov 5, 2015
agl
assigned
agl and
davecheney
and unassigned
agl
Nov 14, 2015
|
Assigning this to Dave so that he can craft something that works in a Go 1.3 environment. |
davecheney commentedNov 3, 2015
https://go-review.googlesource.com/#/c/10953/ added support for converting from the crypto.Signer interface, added in Go 1.4 to an ssh.Signer.
This means the crypto package does not compile under Go 1.3 and earlier. This is a problem for Canonical as (for various long, but immutable reasons) we are stuck on Go 1.2 for several of the operating system versions we support.
@agl one solution to this is to isolate the change to keys.go into a file which is only built with Go 1.4 or later. This would hide this feature from Go versions which do not support crypto.Signer.
An alternative would be to define an interface in the ssh package that is compatible with crypto.Signer, and use that as the formal parameter to those new methods in keys.go
I think the former is a cleaner option. What do you think ?