]>
git.lizzy.rs Git - rust.git/log
bors[bot] [Wed, 22 Dec 2021 19:34:12 +0000 (19:34 +0000)]
Merge #11103
11103: internal: Improve `github-release` action r=lnicola a=lnicola
Upgrade ``@actions/github`` to get `listReleaseAssets` and retry individual uploads in addition to the whole thing.
Also disables `ci`, `metrics` and `rustdoc` on forks to save some CPU time.
CC #11056
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Wed, 22 Dec 2021 18:57:26 +0000 (20:57 +0200)]
Gate workflows to only run on upstream
Laurențiu Nicola [Wed, 22 Dec 2021 17:56:54 +0000 (19:56 +0200)]
Improve github-release action
bors[bot] [Wed, 22 Dec 2021 12:31:00 +0000 (12:31 +0000)]
Merge #11102
11102: minor: Update known issues in the bug report template r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Wed, 22 Dec 2021 12:30:19 +0000 (14:30 +0200)]
Update known issues in the bug report template
bors[bot] [Wed, 22 Dec 2021 08:29:03 +0000 (08:29 +0000)]
Merge #11096
11096: Code: Use the same `displayName` for pre-release versions r=lnicola a=lnicola
Otherwise the Marketplace shows `(nightly)` for the stable version.
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Wed, 22 Dec 2021 08:24:49 +0000 (10:24 +0200)]
Use the same displayName for pre-release versions
bors[bot] [Wed, 22 Dec 2021 07:21:49 +0000 (07:21 +0000)]
Merge #11095
11095: internal: Disable unstable APIs for nightly releases r=lnicola a=lnicola
bors r+
The Marketplace doesn't allow us to publish extensions using these, even as pre-release versions.
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Wed, 22 Dec 2021 07:20:46 +0000 (09:20 +0200)]
Disable unstable APIs for nightly releases
bors[bot] [Wed, 22 Dec 2021 05:44:54 +0000 (05:44 +0000)]
Merge #11094
11094: Actually nightly releases to Matketplace r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Wed, 22 Dec 2021 05:44:04 +0000 (07:44 +0200)]
Actually nightly releases to Matketplace
bors[bot] [Wed, 22 Dec 2021 01:48:31 +0000 (01:48 +0000)]
Merge #11093
11093: fix: Do not complete `Drop::drop`, complete `std::mem::drop` instead r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/5005
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Wed, 22 Dec 2021 01:36:31 +0000 (02:36 +0100)]
Make hover test not relient on minicore structure
Lukas Wirth [Wed, 22 Dec 2021 01:25:38 +0000 (02:25 +0100)]
fix: Do not complete `Drop::drop`, complete `std::mem::drop` instead
bors[bot] [Tue, 21 Dec 2021 23:20:16 +0000 (23:20 +0000)]
Merge #11092
11092: internal: Directly use self param in completions instead of searching r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 21 Dec 2021 23:18:39 +0000 (00:18 +0100)]
internal: Directly use self param in completions instead of searching
bors[bot] [Tue, 21 Dec 2021 17:37:56 +0000 (17:37 +0000)]
Merge #11071 #11090
11071: feat: Build and publish pre-release Code extension versions r=matklad a=lnicola
Closes #11026
11090: internal: Deduplicate lower ctx hygiene field r=Veykril a=Veykril
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
bors[bot] [Tue, 21 Dec 2021 17:29:26 +0000 (17:29 +0000)]
Merge #11089
11089: internal: Render more completions from hir instead of ast r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 21 Dec 2021 17:25:50 +0000 (18:25 +0100)]
Simplify
Lukas Wirth [Tue, 21 Dec 2021 16:14:57 +0000 (17:14 +0100)]
Deduplicate lower ctx hygiene field
Lukas Wirth [Tue, 21 Dec 2021 15:57:16 +0000 (16:57 +0100)]
Replace a few String instances with SmolStr in completions
Lukas Wirth [Tue, 21 Dec 2021 15:36:04 +0000 (16:36 +0100)]
Fully render type alias completions from hir
Lukas Wirth [Tue, 21 Dec 2021 15:34:55 +0000 (16:34 +0100)]
Fully render const item completions from hir
bors[bot] [Tue, 21 Dec 2021 15:22:51 +0000 (15:22 +0000)]
Merge #11086
11086: internal: Simplify completion rendering r=Veykril a=Veykril
Removes all the helper render structs in favor of simple functions, making things a lot easier to oversee(imho)
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 21 Dec 2021 14:48:12 +0000 (15:48 +0100)]
fmt +stable
Lukas Wirth [Tue, 21 Dec 2021 14:37:43 +0000 (15:37 +0100)]
Simplify type alias rendering, remove constructor structs
Lukas Wirth [Tue, 21 Dec 2021 14:20:15 +0000 (15:20 +0100)]
Simplify macro rendering, remove constructor structs
Lukas Wirth [Tue, 21 Dec 2021 14:04:19 +0000 (15:04 +0100)]
Simplify const rendering, remove constructor structs
Lukas Wirth [Tue, 21 Dec 2021 14:01:52 +0000 (15:01 +0100)]
Simplify enum variant rendering, remove constructor structs
Lukas Wirth [Tue, 21 Dec 2021 13:51:06 +0000 (14:51 +0100)]
Simplify function rendering, remove constructor structs
Lukas Wirth [Tue, 21 Dec 2021 13:07:48 +0000 (14:07 +0100)]
Simplify
bors[bot] [Tue, 21 Dec 2021 13:04:43 +0000 (13:04 +0000)]
Merge #11083
11083: fix: Fix inline local assist not working in let stmt initializer r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 21 Dec 2021 13:03:59 +0000 (14:03 +0100)]
fix: Fix inline local assist not working in let stmt initializer
bors[bot] [Tue, 21 Dec 2021 12:39:32 +0000 (12:39 +0000)]
Merge #11082
11082: internal: Do less work in `hir::Semantics` r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 21 Dec 2021 12:38:58 +0000 (13:38 +0100)]
internal: Do less work in `hir::Semantics`
bors[bot] [Tue, 21 Dec 2021 08:00:59 +0000 (08:00 +0000)]
Merge #11078
11078: minor: Fix typo in reformat number assist label r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Tue, 21 Dec 2021 07:45:20 +0000 (09:45 +0200)]
Fix typo in reformat number assist label
Laurențiu Nicola [Mon, 20 Dec 2021 17:36:07 +0000 (19:36 +0200)]
Bump vscode in package.json
Laurențiu Nicola [Mon, 20 Dec 2021 17:28:00 +0000 (19:28 +0200)]
Build and publish pre-release Code extension versions
bors[bot] [Mon, 20 Dec 2021 18:38:47 +0000 (18:38 +0000)]
Merge #11074
11074: Bump default CHALK_SOLVER_MAX_SIZE to 150 r=lnicola a=lnicola
Fixes #11072
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Mon, 20 Dec 2021 18:35:45 +0000 (20:35 +0200)]
Bump default CHALK_SOLVER_MAX_SIZE to 150
bors[bot] [Mon, 20 Dec 2021 18:20:08 +0000 (18:20 +0000)]
Merge #11073
11073: fix: Fix windows not finding the pdb file r=lnicola a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/10371
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Mon, 20 Dec 2021 18:11:21 +0000 (19:11 +0100)]
fix: Fix windows not finding the pdb file
bors[bot] [Mon, 20 Dec 2021 16:50:35 +0000 (16:50 +0000)]
Merge #11069
11069: fix: Partially fix `ide_db::search` for crate roots r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/10007
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Mon, 20 Dec 2021 16:48:47 +0000 (17:48 +0100)]
fix: Partially fix `ide_db::search` for crate roots
bors[bot] [Mon, 20 Dec 2021 14:43:39 +0000 (14:43 +0000)]
Merge #11067
11067: internal: Store function param names in ItemTree r=Veykril a=Veykril
This prevents us reparsing source files for completions, sometimes slowing them down massively if the source file is not cached at the expense of a slightly bigger memory usage.
related info https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/Completion.20performance
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Mon, 20 Dec 2021 14:33:57 +0000 (15:33 +0100)]
Update test output
Lukas Wirth [Mon, 20 Dec 2021 14:24:37 +0000 (15:24 +0100)]
internal: Store function param names in ItemTree
bors[bot] [Mon, 20 Dec 2021 13:45:35 +0000 (13:45 +0000)]
Merge #11028
11028: Bump MSRV (1.57) r=Veykril a=iDawer
This bumps MSRV on all crates to 1.57 except `la-arena`
#10986 requires >=1.57
Co-authored-by: iDawer <ilnur.iskhakov.oss@outlook.com>
Lukas Wirth [Mon, 20 Dec 2021 13:38:22 +0000 (14:38 +0100)]
Simplify
iDawer [Mon, 20 Dec 2021 13:10:37 +0000 (18:10 +0500)]
Don't bump la-arena
bors[bot] [Mon, 20 Dec 2021 12:49:48 +0000 (12:49 +0000)]
Merge #11065
11065: internal: Don't kick off inference in `Semantics::descend_into_macros_impl` r=Veykril a=Veykril
We do not need inference info here so there is no point in calculating it
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Mon, 20 Dec 2021 12:47:06 +0000 (13:47 +0100)]
Simplify NameClass::classify
Lukas Wirth [Mon, 20 Dec 2021 12:19:48 +0000 (13:19 +0100)]
internal: Don't kick off inference in Semantics::descend_into_macros_impl
bors[bot] [Mon, 20 Dec 2021 12:05:23 +0000 (12:05 +0000)]
Merge #10484
10484: internal: Update match checking algorithm r=lnicola a=iDawer
Sync match checking algorithm with rust-lang/rust
f31622a50 2021-11-12 (https://github.com/rust-lang/rust/pull/90813)
This update brings huge simplification to the match checking and introduces an easy to use machinery for pattern destructuring and also:
1. Add a function to do post-inference normalization `hir_ty::infer::normalize(...)`.
2. Store binding modes in `InferenceResult`.
Todo:
- [x] Rebase & test (https://github.com/rust-analyzer/rust-analyzer/pull/10484#issuecomment-
996669665 )
Co-authored-by: Dawer <7803845+iDawer@users.noreply.github.com>
Co-authored-by: iDawer <ilnur.iskhakov.oss@outlook.com>
bors[bot] [Mon, 20 Dec 2021 09:14:38 +0000 (09:14 +0000)]
Merge #11062
11062: fix: Don't say "a reference to" for `Copy` types in the generate getter assist r=Veykril a=patrick-gu
This changes the generate getter assist to not say "a reference to" in the documentation stub if the type is `Copy`, as the getter does not return a reference.
To determine whether the type is `Copy`, I have added an `is_copy` method to `ReferenceConversion`.
Co-authored-by: patrick-gu <55641350+patrick-gu@users.noreply.github.com>
patrick-gu [Mon, 20 Dec 2021 01:27:24 +0000 (17:27 -0800)]
Don't say "a reference to" for Copy types
This changes the generate getter assist to not say "a reference to" in the documentation stub if the type is Copy, as the getter does not return a reference.
iDawer [Sun, 12 Dec 2021 09:24:10 +0000 (14:24 +0500)]
Respect binding mode of a binding pattern for exhaustiveness check
iDawer [Sat, 27 Nov 2021 13:13:47 +0000 (18:13 +0500)]
internal: Normalize field type after substituting
iDawer [Sun, 21 Nov 2021 13:15:21 +0000 (18:15 +0500)]
internal: sync match checking with rust-lang/rust
f31622a50 2021-11-12
Dawer [Thu, 7 Oct 2021 18:33:41 +0000 (23:33 +0500)]
internal: Sync match checking algorithm with rustc
Original version: rust-lang/rust
68b76a483 2021-10-01
bors[bot] [Sun, 19 Dec 2021 17:02:40 +0000 (17:02 +0000)]
Merge #11060
11060: minor: Bump deps r=lnicola a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Sun, 19 Dec 2021 17:00:42 +0000 (19:00 +0200)]
Bump object
Laurențiu Nicola [Sun, 19 Dec 2021 16:58:39 +0000 (18:58 +0200)]
Bump chalk
Laurențiu Nicola [Sun, 19 Dec 2021 16:44:18 +0000 (18:44 +0200)]
Bump deps
bors[bot] [Sun, 19 Dec 2021 00:17:01 +0000 (00:17 +0000)]
Merge #11054
11054: fix #11049 by removing double trimming r=Veykril a=Heinenen
The `unwrap_trivial_block()` removes the braces around trivial blocks (as the name suggests). This violates the precondition of `update_expr_string()` which removes the first and the last non-whitespace character and thus expects braces to still exist around all blocks.
Co-authored-by: ucrhh <ucrrh@sutdent.kit.edu>
ucrhh [Sat, 18 Dec 2021 22:19:53 +0000 (23:19 +0100)]
fix unwrap_block by removing double trimming
bors[bot] [Sat, 18 Dec 2021 21:16:19 +0000 (21:16 +0000)]
Merge #11053
11053: feat: Publish platform-specific Code VSIXes r=me a=lnicola
Closes #10483
CC #10371
Some notes:
- we still build a plain VSIX, just in case
- we build the extension on every platform to make the release workflow arguably cleaner
- the Windows VSIX includes the PDB (but let's leave #10371 open until we change the Windows stand-alone release to a ZIP file)
- `npm` doesn't run if started from `xtask`, possibly something related to path mapping; I moved the `npm` calls outside, but..
- the `Patch` thingy doesn't work any more, so you'll end up with a dirty `package.json` of you run `cargo xtask --client-patch-version`; I don't think we should block on this
- there's an untested Alpine build; for better or worse, we special-case `musl` distros as `alpine`
- I tested this as much as I could, but not the publishing and nightly updates
- you can find some sample artifacts under https://github.com/lnicola/rust-analyzer/releases
- we can now run the server from the install location (is Code planning to switch to compressed extensions?), except on NixOS
- Code lets you install a VSIX for the wrong platform (with the results one would expect)
- I don't know what happens if we try to publish a VSIX without a target
This is a relatively risky, but we'll probably have to take our chances with it.
r? `@rust-analyzer/review`
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Fri, 17 Dec 2021 18:59:02 +0000 (20:59 +0200)]
Publish platform-specific Code VSIXes
bors[bot] [Sat, 18 Dec 2021 20:21:29 +0000 (20:21 +0000)]
Merge #11042
11042: minor: clarify RA_LOG env var troubleshooting r=lnicola a=Veykril
cc https://github.com/rust-analyzer/rust-analyzer/pull/10261
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Sat, 18 Dec 2021 20:02:03 +0000 (21:02 +0100)]
Fix typo
bors[bot] [Sat, 18 Dec 2021 18:32:20 +0000 (18:32 +0000)]
Merge #11047
11047: internal: Prepare Code extension for bundling r=lnicola a=lnicola
CC #10483
This is slightly ugly, but we'll be able to clean it up after ripping the download parts (unless we decide to temporarily drop support for the nightlies).
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
bors[bot] [Sat, 18 Dec 2021 17:59:29 +0000 (17:59 +0000)]
Merge #11035
11035: Include clippy lint groups in autocomplete r=Veykril a=k-nasa
## Why
close: https://github.com/rust-analyzer/rust-analyzer/issues/11027
## Proof
I confirmed that complement candidates are coming out.
https://user-images.githubusercontent.com/
23740172 /
146465758 -
bc7d5cdd -e2fb-48d6-abf7-
804ba859c9b1 .mov
Co-authored-by: k-nasa <htilcs1115@gmail.com>
bors[bot] [Sat, 18 Dec 2021 17:03:28 +0000 (17:03 +0000)]
Merge #11050
11050: feat: treat fn keyword inside function pointer type as primitive r=Veykril a=rainy-me
close #11036
Co-authored-by: rainy-me <github@yue.coffee>
rainy-me [Sat, 18 Dec 2021 16:51:51 +0000 (01:51 +0900)]
feat: treat fn keyword inside function pointer type as primitive
Laurențiu Nicola [Sat, 18 Dec 2021 15:38:01 +0000 (17:38 +0200)]
Prepare Code extension for bundling
bors[bot] [Sat, 18 Dec 2021 14:37:58 +0000 (14:37 +0000)]
Merge #11046
11046: internal: move all the lexing to the parser crate r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Aleksey Kladov [Sat, 18 Dec 2021 14:34:55 +0000 (17:34 +0300)]
Update crates/parser/src/lexed_str.rs
Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>
Aleksey Kladov [Sat, 18 Dec 2021 14:20:38 +0000 (17:20 +0300)]
internal: move all the lexing to the parser crate
k-nasa [Sat, 18 Dec 2021 14:19:29 +0000 (23:19 +0900)]
refactor: chain iter
Aleksey Kladov [Sat, 18 Dec 2021 12:36:21 +0000 (15:36 +0300)]
converting lexed str to tokens
Aleksey Kladov [Sat, 18 Dec 2021 12:31:50 +0000 (15:31 +0300)]
soa all the things
Aleksey Kladov [Sun, 12 Dec 2021 18:35:22 +0000 (21:35 +0300)]
move tests
Aleksey Kladov [Sun, 12 Dec 2021 18:32:58 +0000 (21:32 +0300)]
move lexing to the parser crate
Aleksey Kladov [Sun, 12 Dec 2021 17:41:04 +0000 (20:41 +0300)]
minor: dead code
bors[bot] [Fri, 17 Dec 2021 17:46:42 +0000 (17:46 +0000)]
Merge #11043
11043: fix: fix incorrect mismatched argument count diagnostic with `std::arch` functions r=jonas-schievink a=jonas-schievink
Adds basic support for `#[rustc_legacy_const_generics]`.
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/10009
Full support would involve actually checking call arguments against the right expected types.
bors r+
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com>
Jonas Schievink [Fri, 17 Dec 2021 17:39:51 +0000 (18:39 +0100)]
Initial support for `#[rustc_legacy_const_generics]`
Lukas Wirth [Fri, 17 Dec 2021 17:07:01 +0000 (18:07 +0100)]
minor: clarify RA_LOG env var troubleshooting
bors[bot] [Fri, 17 Dec 2021 15:52:53 +0000 (15:52 +0000)]
Merge #11041
11041: minor: Fix some clippy lints r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
Laurențiu Nicola [Fri, 17 Dec 2021 15:46:20 +0000 (17:46 +0200)]
Fix some clippy lints
bors[bot] [Fri, 17 Dec 2021 15:44:48 +0000 (15:44 +0000)]
Merge #10527
10527: internal: Remove a few snippet completions, replace them with user snippets definitions in VSCode r=Veykril a=Veykril
Closes https://github.com/rust-analyzer/rust-analyzer/issues/9636
cc https://github.com/rust-analyzer/rust-analyzer/issues/7033#issuecomment-
939959905
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Tue, 12 Oct 2021 11:12:52 +0000 (13:12 +0200)]
Update tests
Laurențiu Nicola [Fri, 17 Dec 2021 15:35:10 +0000 (17:35 +0200)]
Remove needless clones
Laurențiu Nicola [Fri, 17 Dec 2021 15:26:35 +0000 (17:26 +0200)]
Spelling nits
Lukas Wirth [Tue, 12 Oct 2021 10:14:24 +0000 (12:14 +0200)]
Add a few default snippets for VSCode
bors[bot] [Fri, 17 Dec 2021 14:23:45 +0000 (14:23 +0000)]
Merge #11040
11040: fix: Don't duplicate attribute completions r=Veykril a=Veykril
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/11012
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
Lukas Wirth [Fri, 17 Dec 2021 14:22:53 +0000 (15:22 +0100)]
fix: Don't duplicate attribute completions
k-nasa [Thu, 16 Dec 2021 23:46:17 +0000 (08:46 +0900)]
manual run sourcegen_lint_completions
k-nasa [Thu, 16 Dec 2021 23:34:08 +0000 (08:34 +0900)]
Add clippy lint group to attribute auto compleme
k-nasa [Thu, 16 Dec 2021 23:33:46 +0000 (08:33 +0900)]
List struct to clonable