pijul_org / thrussh

#42 Older `0.19.x` and `0.20.x` releases will soon stop building on Rust 1.40

Opened by lqd, on November 29, 2019
Open
lqd commented on November 29, 2019

Hello,\r + \r + as part of testing the upcoming Rust 1.40 release, the compiler and release teams noticed that the 0.19.x and 0.20.x versions of thrussh would stop building, likely because of the ongoing changes and bug-fixes to the borrow-checker these past 2 years (as part of the Non-Lexical Lifetimes effort).\r+ \r + The more recent releases, for example the 0.21.5 I've tried, build successfully on 1.40, so the problem in the older releases was since fixed. I assume there was a "future compatibility warning" when the NLL migrate-mode was enabled on the 2015 edition.\r + \r + However, some crates in the ecosystem still depending on these older releases did fail to build in the crater runs for testing 1.40, and have no 0.19.x/0.20.x semver-compatible version to use so that they themselves still continue building on 1.40.\r + \r + Specifically, here's an example of the error in the 0.19.5 release, and that crates depending on it, will encounter when 1.40 is released. The error is the same for the 0.20.x versions.\r + \r + I'm opening this issue to see if it would be feasible to publish semver-compatible versions of these older versions, so that all crates still depending on 0.19.x and 0.20.x would have this error fixed just by running cargo update, and themselves still continue to build on the upcoming 1.40 ?\r + \r + Here's a diff to make these older releases build on 1.40. cargo check will succeed but I can't easily test them: even the 0.21.5 tests don't pass in my environment. I expect the fix to be correct as it's likely the one you've applied to make the warning disappear. \r + \r + I assume one would need to be familiar with pijul to send a "PR", but I'm also unfamiliar with pijul and the nest, hence opening this issue.\r + \r + Thanks in advance for any assistance you could provide here.

bjorn3 commented on November 29, 2019

> I expect the fix to be correct as it's likely the one you've applied to make the warning disappear. \r + \r + That is indeed the fix applied to master: https://nest.pijul.com/pijul_org/thrussh:master/8b607fc4620ac2c69a03#ZxLW9NiJNUP\r + \r + Unforunately this fix probably happened before the last reboot, so history is lost.\r + \r + > I assume one would need to be familiar with pijul to send a "PR", but I'm also unfamiliar with pijul and the nest, hence opening this issue.\r + \r + Haven't actually used the nest before, but I believe you are supposed to just add a patch to this discussion using either the "add patches" button, or by pushing to the right location.\r+ \r + However because of the reboot, the branch for the 0.19 and 0.20 releases isn't available anymore.

bjorn3 commented on November 29, 2019

Quoting you from https://rust-lang.zulipchat.com/#narrow/stream/122657-t-compiler.2Fwg-nll/topic/regressions.20in.20.2366517/near/182177454:\r + \r + > I've opened a thread there as one would a github issue, but just looking at the recent ones, this forum seems to have very low activity, and I think little to none of the recent activity did involve the crate authors.\r+ \r + I opened https://nest.pijul.com/pijul_org/nest/discussions/73 in June 2018 and I don't have a response yet, so it may take a while before you get a response.

pmeunier commented on November 29, 2019

Hi! Yes, dogfooding Pijul hasn't always been the easiest thing in the world, but was quite necessary to get started. I didn't think anyone else depended on Thrussh (I very rarely receive requests about it, and crates.io doesn't show any dependent crates than Pijul async-ssh, which is a tutorial), so I haven't been very active on it.\r+ \r + Also, pushing to this discussion should normally be as easy as pijul push lqd@nest.pijul.com:pijul_org/thrussh --to-branch :42. Way easier than a PR IMHO.\r + \r + I guess my only possibility here is to download the source code for Thrussh 0.20 and 0.19 from crates.io, fix the issues, and republish them without making a patch.

lqd commented on November 29, 2019

oh wow, I was at work this afternoon and didn't notice these answers, sorry.\r + \r + thanks so much @pmeunier for the releases :)\r + \r + @bjorn3: yeah I pinged Pierre-Etienne on twitter just in case, as I know they're more active there.\r + \r + Just to satisfy my curiosity, is this "reboot" some kind of pijul breaking change ? (rather than an actual server reboot)