3
0
Fork 0
forked from mirrors/nixpkgs

Merge pull request #152501 from oxalica/bump/rust-analyzer

rust-analyzer: 2021-12-13 -> 2021-12-27
This commit is contained in:
Bobby Rong 2021-12-29 10:24:46 +08:00 committed by GitHub
commit a5e9c2ff40
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 26 deletions

View file

@ -11,23 +11,20 @@
rustPlatform.buildRustPackage rec {
pname = "rust-analyzer-unwrapped";
version = "2021-12-13";
cargoSha256 = "sha256-VF4pwSl3Wei7KxyQFOPj7hVX/NG2zImRLv4iN+ijAs8=";
version = "2021-12-27";
cargoSha256 = "sha256-yok7kLcvKvDwrdgJR0540QLJi5/zXi0NyZxhtoQ8Xno=";
src = fetchFromGitHub {
owner = "rust-analyzer";
repo = "rust-analyzer";
rev = version;
sha256 = "sha256-xt7iDfIoaBhStgqsgttyOFF4NYPQ8jeVwDoYUwrvtrA=";
sha256 = "sha256-/195+NsV6Mku2roi8zVy4dw8QGL6rQcnPcQ29Os8oqs=";
};
patches = [
# Code format and git history check require more dependencies but don't really matter for packaging.
# So just ignore them.
./ignore-git-and-rustfmt-tests.patch
# Remove when we have rustc >= 1.57.0.
./no-1-57-map-while.patch
];
buildAndTestSubdir = "crates/rust-analyzer";

View file

@ -1,20 +0,0 @@
--- a/crates/ide_db/src/helpers.rs
+++ b/crates/ide_db/src/helpers.rs
@@ -309,7 +309,7 @@ pub fn lint_eq_or_in_group(lint: &str, lint_is: &str) -> bool {
pub fn parse_tt_as_comma_sep_paths(input: ast::TokenTree) -> Option<Vec<ast::Path>> {
let r_paren = input.r_paren_token();
let tokens =
- input.syntax().children_with_tokens().skip(1).map_while(|it| match it.into_token() {
+ input.syntax().children_with_tokens().skip(1).map(|it| match it.into_token() {
// seeing a keyword means the attribute is unclosed so stop parsing here
Some(tok) if tok.kind().is_keyword() => None,
// don't include the right token tree parenthesis if it exists
@@ -317,7 +317,7 @@ pub fn parse_tt_as_comma_sep_paths(input: ast::TokenTree) -> Option<Vec<ast::Pat
// only nodes that we can find are other TokenTrees, those are unexpected in this parse though
None => None,
Some(tok) => Some(tok),
- });
+ }).take_while(|tok| tok.is_some()).map(|tok| tok.unwrap());
let input_expressions = tokens.into_iter().group_by(|tok| tok.kind() == T![,]);
let paths = input_expressions
.into_iter()