Skip to content

Commit 43e07be

Browse files
committed
Changelog #74
1 parent c31f2c2 commit 43e07be

File tree

4 files changed

+98
-31
lines changed

4 files changed

+98
-31
lines changed

generated_assists.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -457,7 +457,7 @@ fn main() {
457457

458458
[discrete]
459459
=== `fill_match_arms`
460-
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/fill_match_arms.rs#L14[fill_match_arms.rs]
460+
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/fill_match_arms.rs#L15[fill_match_arms.rs]
461461

462462
Adds missing clauses to a `match` expression.
463463

@@ -1058,7 +1058,7 @@ fn main() {
10581058

10591059
[discrete]
10601060
=== `inline_local_variable`
1061-
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/inline_local_variable.rs#L13[inline_local_variable.rs]
1061+
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/inline_local_variable.rs#L15[inline_local_variable.rs]
10621062

10631063
Inlines local variable.
10641064

@@ -1080,7 +1080,7 @@ fn main() {
10801080

10811081
[discrete]
10821082
=== `introduce_named_lifetime`
1083-
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/introduce_named_lifetime.rs#L12[introduce_named_lifetime.rs]
1083+
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/introduce_named_lifetime.rs#L13[introduce_named_lifetime.rs]
10841084

10851085
Change an anonymous lifetime to a named lifetime.
10861086

@@ -1529,7 +1529,7 @@ impl Foo for Bar {
15291529

15301530
[discrete]
15311531
=== `replace_derive_with_manual_impl`
1532-
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/replace_derive_with_manual_impl.rs#L20[replace_derive_with_manual_impl.rs]
1532+
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide_assists/src/handlers/replace_derive_with_manual_impl.rs#L19[replace_derive_with_manual_impl.rs]
15331533

15341534
Converts a `derive` impl into a manual one.
15351535

generated_features.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ image::https://user-images.githubusercontent.com/48062697/113020673-b85be580-917
6868

6969

7070
=== Expand Macro Recursively
71-
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide/src/expand_macro.rs#L19[expand_macro.rs]
71+
**Source:** https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/ide/src/expand_macro.rs#L17[expand_macro.rs]
7272

7373
Shows the full macro expansion of the macro at current cursor.
7474

manual.adoc

Lines changed: 48 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -429,70 +429,92 @@ However, if you use some other build system, you'll have to describe the structu
429429
[source,TypeScript]
430430
----
431431
interface JsonProject {
432-
/// Path to the directory with *source code* of sysroot crates.
432+
/// Path to the directory with *source code* of
433+
/// sysroot crates.
434+
///
435+
/// It should point to the directory where std,
436+
/// core, and friends can be found:
433437
///
434-
/// It should point to the directory where std, core, and friends can be found:
435438
/// https://github.com/rust-lang/rust/tree/master/library.
436439
///
437-
/// If provided, rust-analyzer automatically adds dependencies on sysroot
438-
/// crates. Conversely, if you omit this path, you can specify sysroot
439-
/// dependencies yourself and, for example, have several different "sysroots" in
440-
/// one graph of crates.
440+
/// If provided, rust-analyzer automatically adds
441+
/// dependencies on sysroot crates. Conversely,
442+
/// if you omit this path, you can specify sysroot
443+
/// dependencies yourself and, for example, have
444+
/// several different "sysroots" in one graph of
445+
/// crates.
441446
sysroot_src?: string;
442-
/// The set of crates comprising the current project.
443-
/// Must include all transitive dependencies as well as sysroot crate (libstd, libcore and such).
447+
/// The set of crates comprising the current
448+
/// project. Must include all transitive
449+
/// dependencies as well as sysroot crate (libstd,
450+
/// libcore and such).
444451
crates: Crate[];
445452
}
446453
447454
interface Crate {
448-
/// Optional crate name used for display purposes, without affecting semantics.
449-
/// See the `deps` key for semantically-significant crate names.
455+
/// Optional crate name used for display purposes,
456+
/// without affecting semantics. See the `deps`
457+
/// key for semantically-significant crate names.
450458
display_name?: string;
451459
/// Path to the root module of the crate.
452460
root_module: string;
453461
/// Edition of the crate.
454462
edition: "2015" | "2018" | "2021";
455463
/// Dependencies
456464
deps: Dep[];
457-
/// Should this crate be treated as a member of current "workspace".
465+
/// Should this crate be treated as a member of
466+
/// current "workspace".
458467
///
459-
/// By default, inferred from the `root_module` (members are the crates which reside
460-
/// inside the directory opened in the editor).
468+
/// By default, inferred from the `root_module`
469+
/// (members are the crates which reside inside
470+
/// the directory opened in the editor).
461471
///
462-
/// Set this to `false` for things like standard library and 3rd party crates to
463-
/// enable performance optimizations (rust-analyzer assumes that non-member crates
464-
/// don't change).
472+
/// Set this to `false` for things like standard
473+
/// library and 3rd party crates to enable
474+
/// performance optimizations (rust-analyzer
475+
/// assumes that non-member crates don't change).
465476
is_workspace_member?: boolean;
466-
/// Optionally specify the (super)set of `.rs` files comprising this crate.
477+
/// Optionally specify the (super)set of `.rs`
478+
/// files comprising this crate.
467479
///
468-
/// By default, rust-analyzer assumes that only files under `root_module.parent` can belong to a crate.
469-
/// `include_dirs` are included recursively, unless a subdirectory is in `exclude_dirs`.
480+
/// By default, rust-analyzer assumes that only
481+
/// files under `root_module.parent` can belong
482+
/// to a crate. `include_dirs` are included
483+
/// recursively, unless a subdirectory is in
484+
/// `exclude_dirs`.
470485
///
471486
/// Different crates can share the same `source`.
472487
///
473-
/// If two crates share an `.rs` file in common, they *must* have the same `source`.
474-
/// rust-analyzer assumes that files from one source can't refer to files in another source.
488+
/// If two crates share an `.rs` file in common,
489+
/// they *must* have the same `source`.
490+
/// rust-analyzer assumes that files from one
491+
/// source can't refer to files in another source.
475492
source?: {
476493
include_dirs: string[],
477494
exclude_dirs: string[],
478495
},
479-
/// The set of cfgs activated for a given crate, like `["unix", "feature=\"foo\"", "feature=\"bar\""]`.
496+
/// The set of cfgs activated for a given crate, like
497+
/// `["unix", "feature=\"foo\"", "feature=\"bar\""]`.
480498
cfg: string[];
481499
/// Target triple for this Crate.
482500
///
483-
/// Used when running `rustc --print cfg` to get target-specific cfgs.
501+
/// Used when running `rustc --print cfg`
502+
/// to get target-specific cfgs.
484503
target?: string;
485-
/// Environment variables, used for the `env!` macro
504+
/// Environment variables, used for
505+
/// the `env!` macro
486506
env: : { [key: string]: string; },
487507
488-
/// For proc-macro crates, path to compiles proc-macro (.so file).
508+
/// For proc-macro crates, path to compiled
509+
/// proc-macro (.so file).
489510
proc_macro_dylib_path?: string;
490511
}
491512
492513
interface Dep {
493514
/// Index of a crate in the `crates` array.
494515
crate: number,
495-
/// Name as should appear in the (implicit) `extern crate name` declaration.
516+
/// Name as should appear in the (implicit)
517+
/// `extern crate name` declaration.
496518
name: string,
497519
}
498520
----
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
= Changelog #74
2+
:sectanchors:
3+
:page-layout: post
4+
5+
Commit: commit:d906b7ad889209bd09a6cc3af752fea06e4d953d[] +
6+
Release: release:2021-04-20[]
7+
8+
== Sponsors
9+
10+
**Become a sponsor:** On https://opencollective.com/rust-analyzer/[OpenCollective] or
11+
https://github.com/sponsors/rust-analyzer[GitHub Sponsors].
12+
13+
== Announcement
14+
15+
This is an out-of-band release that fixes a recent regression which caused project loading hangs.
16+
It should also include the recent "Implement `Deref` assist" which didn't make the cut for the last release.
17+
18+
== New Features
19+
20+
* pr:8462[] expand macros in type positions.
21+
22+
== Fixes
23+
24+
* pr:8600[] fix project loading hang.
25+
* pr:8524[] fix "Extract function" assist with partial block selection.
26+
* pr:8565[] "Fill match arms" assist: add remaining arms for enum tuples.
27+
* pr:8574[] check for rust doc code attributes like rustdoc does.
28+
* pr:8540[] prevent renaming items that are not part of the workspace (LSP extension).
29+
* pr:8578[] fix inner attributes false positives in docs.
30+
* pr:8582[] (first contribution) fix typo in `comparison` semantic token type.
31+
* pr:8601[] trigger "Inline variable" assist on variable uses.
32+
* pr:8467[] actually add "Implement `Deref`" assist (it was included in last changelog by mistake).
33+
* pr:8577[] support crates/module roots in `external_docs`.
34+
* pr:8587[] fix some `find_path` bugs around inner items (fixes auto-imports with macro calls).
35+
* pr:8602[] fix panic in "Replace derive with manual implementation".
36+
37+
== Internal Improvements
38+
39+
* pr:8502[] document review requesting etiquette.
40+
* pr:8527[] rewrite "Introduce named lifetime" assist to use mutable syntax trees.
41+
* pr:8584[] fix slightly broken test.
42+
* pr:8588[] add guidelines for release notes PR descriptions.
43+
* pr:8579[] fix "Server status" capability name in docs.
44+
* pr:8580[] remove confusion around `serverStatusNotification`.
45+
* pr:8586[] replace `SyntaxRewriter` usage with `ted` in `eager::eager_macro_recur`.

0 commit comments

Comments
 (0)