Commit graph

49 commits

Author SHA1 Message Date
Chayim Refael Friedman
be12c80d23 Add a function to convert a SyntaxKind to its text, where possible
This will also help for the make's quote macro.
2024-12-30 04:01:05 +02:00
Chayim Refael Friedman
ca0c8da517 Generate a method for static retrieval of the SyntaxKind of a node, where possible
This will help for the quote macro for `ast::make`.
2024-12-30 03:13:17 +02:00
Lukas Wirth
8606441fcc Enforce a current directory being set for spawned commands 2024-12-29 12:51:13 +01:00
Lukas Wirth
23e2f8aa86 internal: Split serde derive feature into serde_derive usage
Ideally we'd not have any dependency pull in the derive feature for faster build times, once that is the case this change would have an actual effect.
See https://github.com/matklad/macro-dep-test/blob/master/README.md for context.
2024-12-20 11:55:02 +01:00
Chayim Refael Friedman
2950325f37 Properly handle different defaults for severity of lints
Previously all lints were assumed to be `#[warn]`, and we had a hand-coded list of `#[allow]` exceptions. Now the severity is autogenerated from rustdoc output.

Also support lints that change status between editions, and the `warnings` lint group.
2024-12-11 20:48:41 +02:00
Laurențiu Nicola
7303227589 Bump rustc crates 2024-11-01 13:38:35 +02:00
Lukas Wirth
25b0846e96
Merge pull request #18074 from ChayimFriedman2/typeref-source-map
internal: Build source map for `hir_def::TypeRef`s
2024-10-28 11:01:12 +00:00
Laurențiu Nicola
7ec20428cb
Merge pull request #18412 from lnicola/windows-no-gz
internal: Stop producing .gz artifacts for Windows
2024-10-28 10:11:29 +00:00
Laurențiu Nicola
08b504ae8f Stop producing .gz artifacts for Windows 2024-10-25 15:14:52 +03:00
Chayim Refael Friedman
fd7648d920 Shrink Path to 16 bytes
Thanks to the observation (supported by counting) that the vast majority paths have neither generics no type anchors, and thanks to a new datastructure `ThinVecWithHeader` that is essentially `(T, Box<[U]>)` but with the size of a single pointer, we are able to reach this feat.

This (together with `ThinVecWithHeader`) makes the possibility to shrink `TypeRef`, because most types are paths.
2024-10-25 06:44:56 +03:00
Laurențiu Nicola
9832131fd5 Update changelog generation for merge queues 2024-10-24 20:40:57 +03:00
Lukas Wirth
76368b805d Fix new nightly lints 2024-10-22 11:48:41 +02:00
roife
8183f6b473 fix: classify safe as a contextual kw 2024-10-21 02:56:21 +08:00
David Barsky
d28811bcce chore: rename salsa to ra_salsa 2024-10-14 10:09:22 -04:00
Lukas Wirth
7222f2de38 Parse builtin#asm expressions 2024-09-04 14:09:03 +02:00
Lukas Wirth
6b15103152 Allow xtask::reformat to work without rustup 2024-08-30 16:17:45 +02:00
Lukas Wirth
e69d57f16f Revert "fix: do not assume rustup is installed in xtask codegen"
This reverts commit 7d9e4fcc07e5de94e37b73436147cdbbaa35dbdc.
2024-08-30 16:15:01 +02:00
Ivar Scholten
6e387a3fb1 fix: do not assume rustup is installed in xtask codegen
When formatting generated code the xtask crate attempts to run `rustup run stable rustfmt`,
which fails if `rustup` is not installed. This results in test failures when another source manages
the compiler toolchain, for example when using Nix (or any other distro-specific packaging solution):

* xtask::codegen::grammar::test
* xtask::codegen::assists_doc_tests::test

With this commit xtask will first attempt to run `rustup run stable rustfmt`, and if that fails just
plain `rustfmt`. It still validates a stable version is being used.

This allows `cargo test` to pass on systems that do not use `rustup`.
2024-08-27 14:25:13 +02:00
Lukas Wirth
a783e30c93 internal: Properly check the edition for edition dependent syntax kinds 2024-08-15 15:57:47 +02:00
Lukas Wirth
9431039e8a Allow new license combination 2024-08-12 12:51:47 +02:00
Lukas Wirth
92a07b8b9c minor: Fix metrics not running 2024-08-05 14:59:27 +02:00
Ralf Jung
70805f9a6b when josh-proxy screws up the roundtrip, say what the involved commits are 2024-08-01 12:28:02 +02:00
Lukas Wirth
896639683c Generate From impls for Any* nodes 2024-07-25 10:21:58 +02:00
Lukas Wirth
2e81e1fa23 Fix edition used for include macro parsing 2024-07-19 20:29:53 +02:00
bors
fd240c00e0 Auto merge of #17620 - Veykril:edition-aware-parser, r=Veykril
Edition aware parser

Fixes https://github.com/rust-lang/rust-analyzer/issues/16324 by allowing us to properly thread through the edition to the parser
2024-07-19 14:56:56 +00:00
Lukas Wirth
f4b2bf5c53 Add basic edition inline parser test support 2024-07-19 15:19:43 +02:00
Laurențiu Nicola
6fa6d2081a Make xtask install work again 2024-07-19 09:11:26 +03:00
Lukas Wirth
eae705e5ed Rewrite inline parser test infra to generated proper rust test cases 2024-07-18 10:03:19 +02:00
Lukas Wirth
f7516d95a7 string is not a keyword 2024-07-17 11:11:57 +02:00
Lukas Wirth
0bffb1345b Add always disabled gen parse support 2024-07-17 10:49:12 +02:00
Lukas Wirth
373e84fb28 Derive kinds information from ungrammar file 2024-07-17 10:04:45 +02:00
Lukas Wirth
ed2b355872 Add cargo xtask install proc-macro-server 2024-07-15 12:41:02 +02:00
Lukas Wirth
0ee4ff2496 Inline all the things 2024-07-07 11:18:40 +02:00
Lukas Wirth
87a62044fe HasGenericArgs syntax trait 2024-07-07 11:18:28 +02:00
Lukas Wirth
7a2c8c2b39 Run codegen commands as tests if their results are commited 2024-07-07 09:14:50 +02:00
Lukas Wirth
6f346c91be Re-implement tidy as an xtask action 2024-07-07 09:12:16 +02:00
Lukas Wirth
d00f4749b1 re-generate feature docs in release 2024-07-07 09:01:35 +02:00
Lukas Wirth
2d14f47eb7 Move feature-doc generation to xtask codegen 2024-07-07 09:00:18 +02:00
Lukas Wirth
e96601bbe0 Move parser test generation to xtask 2024-07-07 08:51:19 +02:00
Lukas Wirth
7deebd6792 Fix stop_watch on linux 2024-07-07 08:40:41 +02:00
Lukas Wirth
7dfc583b0e Update generated lint definitions 2024-07-07 08:35:18 +02:00
Lukas Wirth
5e60845f52 Fix up the syntax tree for macro 2.0 2024-07-03 10:41:19 +02:00
Lukas Wirth
eb72a9e2fd Simplify 2024-06-30 14:00:55 +02:00
Laurențiu Nicola
0744b36d53 Remove Changelog: XXX title from Github release notes 2024-06-22 14:55:23 +03:00
Lukas Wirth
b4891c3f56 fix: Fix generated markers not being patchable in package.json 2024-06-08 12:54:43 +02:00
ChosenName
d47848ec99
Update dist.rs 2024-06-04 21:44:07 -06:00
Hamir Mahal
e3d09394c2
style: simplify string interpolation 2024-05-30 16:18:49 -07:00
Ralf Jung
0274d34f75 add no-new-root check to josh pull 2024-04-27 09:02:07 +02:00
Laurențiu Nicola
8f2138102f Use josh for subtree syncs 2024-04-21 10:07:08 +03:00