Lukas Wirth
e54759083a
Restructure proc-macro loading erros, differentiate hard error property on kind
2025-07-03 09:28:53 +02:00
Lukas Wirth
13494f4cac
ItemTree
's ItemVisibilities
has no identity, so deduplicate
2025-06-12 09:14:43 +02:00
Lukas Wirth
cbff4ae151
Bump salsa
2025-05-23 12:58:00 +02:00
Chayim Refael Friedman
56fb415ba7
Don't allow duplicate crates in the all_crates list
...
For some reason we had them in some projects, I'm not sure why. But this caused cache priming to appear stuck - because it uses a set of crate IDs for the actual work, but for the number of crates to index it just uses `db.all_crates().len()`.
2025-05-14 21:38:40 +03:00
Lukas Wirth
996d6ed1a3
Split out salsa_macros
...
Does not do much yet due to tracing pulling syn but oh well
2025-04-29 19:43:36 +02:00
Chayim Refael Friedman
1fe060719a
shrink_to_fit()
in more places
...
This saves 18mb on `analysis-stats .`, without regressing speed.
2025-04-25 10:55:12 +03:00
Chayim Refael Friedman
2bba385dda
Adjust for new Salsa not implementing Debug
by default
2025-04-22 15:19:35 +03:00
Chayim Refael Friedman
c58ddafe90
Make HirFileId
, EditionedFileId
and macro files Salsa struct
...
And make more queries non-interned.
Also flip the default for queries, now the default is to not intern and to intern a query you need to say `invoke_interned`.
2025-04-19 22:10:52 +03:00
Lukas Wirth
faf1b49a9a
fix: Fix, clarify and require a value for proc_macro_cwd
of CrateData
2025-03-29 08:08:48 +01:00
Lukas Wirth
454e4be40d
refactor: Use MEDIUM durability for crate-graph changes, high for library source files
...
The idea here is that the crate graph may change over time, but library source file contents *never* will (or really never should). Disconnecting the two means that queries that depend on library sources will not need to re-validatewhen the crate graph changes (unless they depend on the crate graph in some capacity).
2025-03-26 06:46:49 +01:00
Lukas Wirth
b5eedad8e3
refactor: Remove unnecessary Arc
2025-03-16 10:27:48 +01:00
Lukas Wirth
7edfeb9674
refactor: Remove CrateGraphBuilder::iter_mut
2025-03-16 10:24:15 +01:00
BenjaminBrienen
7535bb4661
cargo fmt
2025-03-15 21:32:01 +01:00
Florian Diebold
c1102ac703
Avoid recursively debug printing crates
2025-03-14 19:02:06 +01:00
Chayim Refael Friedman
c94e9efbef
Salsify the crate graph
...
I.e. make it not one giant input but multiple, for incrementality and decreased memory usage for Salsa 3 reasons.
2025-03-12 21:02:30 +02:00
Mehul Arora
3a31741627
Use correct working directory for non-workspace proc-macro execution
2025-02-17 10:36:32 -05:00
Lukas Wirth
ab5e821d97
Expose symbol of CrateName
2025-02-04 14:38:58 +01:00
lucasholten
cdc972499e
Automatically sort crate graph
2025-01-02 15:50:51 +01:00
lucasholten
947dfdce0c
Add back optimizations
2024-12-31 15:48:58 +01:00
lucasholten
6043412342
Add back crate graph deduplication
2024-12-31 15:47:29 +01:00
Lukas Wirth
7085328185
Remove patch sysroot cfg-if hack
2024-12-09 11:42:51 +01:00
Lukas Wirth
f7ca085690
Remove ImportSource::ExternCrate as the fixed point loop can't affect it
2024-10-05 15:02:47 +02:00
Lukas Wirth
8905f86d8a
Remove crate graph deduplication logic
2024-09-11 11:38:42 +02:00
Lukas Wirth
2e2f798a74
minor: Downgrade cyclic deps error to warning
2024-09-01 10:02:41 +02:00
Lukas Wirth
fa48bc216c
Revert "feat: Implement module_path
macro"
2024-08-27 08:19:09 +02:00
Lukas Wirth
d44a3ab30c
internal: Implement module_path
macro
2024-08-21 13:50:05 +02:00
Lukas Wirth
d2fe906a62
Remove unnecessary CfgFlag definition in project-model
2024-08-07 14:27:59 +02:00
Lukas Wirth
7beac14cba
Internal: Cleanup proc-macro error handling
2024-07-26 14:38:19 +02:00
Lukas Wirth
5264f86242
Encode edition within FileId in the hir layer
2024-07-18 08:49:10 +02:00
Lukas Wirth
df5f1777b8
More symbol usage
2024-07-16 12:05:16 +02:00
Wilfred Hughes
27182bb96b
chore: Prefer tracing span shorthand macros
2024-06-06 16:52:25 -07:00
Lukas Wirth
a268eaf053
fix: Correctly handle no_core
/no_std
for preludes
2024-05-02 10:50:28 +02:00
Lukas Wirth
cdb8c3a327
Fix tests being non-deterministic
2024-04-19 13:22:00 +02:00
Lukas Wirth
ee10f9f5cd
Cleanup cfg and env handling in project-model
2024-04-19 10:41:08 +02:00
Ali Bektas
67d8d2d4a0
Make ConfigData Ser and TOML De
...
This commit makes rust-analyzer::config module TOML ser and de.
Co-Authored-By: Cormac Relf <web@cormacrelf.net>
2024-04-15 14:14:23 +02:00
Lukas Wirth
f3567bb604
Arc CrateData::cfg_options
2024-04-06 13:55:10 +02:00
Lukas Wirth
13890697eb
Simplify
2024-04-06 13:12:07 +02:00
Lukas Wirth
8e324e98a1
Rename ProcMacroKind::FuncLike to Bang
2024-03-22 11:20:56 +01:00
Lukas Wirth
cd8eb0fe6d
internal: Remove span trait
2024-03-21 20:08:30 +01:00
Lukas Wirth
255a8aef92
Move Edition into span crate
2024-03-21 10:21:44 +01:00
Lukas Wirth
91554e0ae7
fix: Fix modules in blocks not resolving in ide layer
2024-02-26 14:54:47 +01:00
Lukas Wirth
ead369117a
CrateOrigin::Local means local to the project workspace, not cargo workspace
2024-02-16 16:28:17 +01:00
Lukas Wirth
0ccb3b8731
Move dedup-dev-deps tests into rust-analyzer crate
2024-02-16 15:47:40 +01:00
Lukas Wirth
b1404d387a
fix: Split toolchain and datalayout out of CrateData
2024-02-16 14:48:25 +01:00
tamasfe
6d45afd8d8
feat: ignored and disabled macro expansion
2024-02-12 12:50:40 +01:00
Tetsuharu Ohzeki
a9a315fd73
base-db: Fix warnings about clippy str_to_string
rule
2024-02-10 01:00:40 +09:00
David Barsky
e1ea7c8844
internal: switch to tracing
from log
...
This commit also adds `tracing` to NotificationDispatcher/RequestDispatcher,
bumps `rust-analyzer-salsa` to 0.17.0-pre.6, `always-assert` to 0.2, and
removes the homegrown `hprof` implementation in favor of a vendored
tracing-span-tree.
2024-01-30 12:27:31 -05:00
Johann Hemmann
71d4dba960
redundant_pattern_matching
2024-01-19 17:31:01 +01:00
Johann Hemmann
3041164301
Temporarily allow all lints which occur
...
They will be removed one by one
2024-01-19 12:52:12 +01:00
Johann Hemmann
fad4fa163c
cargo clippy --fix
2024-01-18 13:59:49 +01:00