Need better handling of multiple rust versions
Categories
(Webtools :: Searchfox, defect)
Tracking
(Not tracked)
People
(Reporter: kats, Unassigned)
References
Details
Yesterday's indexing run emitted warnings of the type:
WARN 2019-06-01T15:11:14Z: rls_analysis::raw: deserialisation error: ExpectedError("Array", "\"/builds/worker/workspace/build/src/third_party/rust/adler32\"")
WARN 2019-06-01T15:11:14Z: rls_analysis::raw: Data file version mismatch; expected Some(String("0.18.1")) but got Some(Short("0.19.0"))
WARN 2019-06-01T15:11:14Z: rls_analysis::raw: deserialisation error: ExpectedError("Array", "\"/builds/worker/workspace/build/src/third_party/rust/cfg-if\"")
WARN 2019-06-01T15:11:14Z: rls_analysis::raw: Data file version mismatch; expected Some(String("0.18.1")) but got Some(Short("0.19.0"))
This happens because the version of rls-data used in mozsearch/mozsearch doesn't match the version of rls-data used in the compiler used to compile mozilla-central. I think we bumped the rustc version on m-c which led to this.
This is easy to fix for m-c by bumping the rls-data used in mozsearch. But then we'll get these warnings for m-beta and m-release. The correct solution is to run the rust analyzer from mozsearch on the as part of the --enable-mozsearch-plugin
build on taskcluster so that we don't get rustc analysis files but instead get searchfox analysis files.
Reporter | ||
Comment 1•5 years ago
|
||
Some relevant prior discussion on this topic: https://github.com/rust-dev-tools/rls-analysis/issues/130
Reporter | ||
Comment 2•5 years ago
|
||
I think in the short term it's better to bump the rls-data used in mozsearch so that at least m-c gets all the rust analysis data instead of missing some of it. m-b and m-r can get the warnings for now until we figure out to push the rust analyzer over to m-c. And if we do nothing then the m-b and m-r warnings will go away as m-c moves up to those branches and they start generating the new version of the analysis files.
Reporter | ||
Comment 3•5 years ago
|
||
Ugh I guess I jumped the gun here. Looks like we are compiling on macOS with rust 1.36 beta, and on other platforms with rust 1.35 stable. The 1.35 save-analysis files are v0.18.2, and the 1.36b save-analysis files are v0.19.0. So no matter what we do on our end we're only going to be able to parse some. Prior to mozsearch/mozsearch#219 merging we were successfully parsing Linux, Windows, and Android, and failing to parse macOS. Now it's the reverse.
I'll back out the PR since I think successfully parsing 3 platforms on m-c plus all of m-b and m-r is better than just parsing 1 platform on m-c and nothing else. But it makes me want to fix this for reals.
Reporter | ||
Comment 4•5 years ago
|
||
PR with the revert: https://github.com/mozsearch/mozsearch/pull/220
Reporter | ||
Comment 5•5 years ago
|
||
PR with relanding: https://github.com/mozsearch/mozsearch/pull/243
Description
•