Laurențiu Nicola
afd02461bc
Update sysroot crates
2020-07-30 17:17:59 +03:00
Laurențiu Nicola
a538e0fbe8
Add workaround for changing sysroot paths
2020-07-30 15:04:41 +03:00
kjeremy
e51d1ddf5b
cargo_metadata 0.11.1 and cargo update
2020-07-29 17:06:56 -04:00
Aleksey Kladov
7c0743293e
Require quotes around key-value cfg flags in rust-project.json
...
This matches rustc command-line flags, as well as the build.rs format.
2020-07-23 19:03:17 +02:00
bors[bot]
8df105b8b2
Merge #5505
...
5505: Cleanup CFG API r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2020-07-23 14:55:22 +00:00
Aleksey Kladov
38e38d9b29
Cleanup CFG API
2020-07-23 16:53:12 +02:00
Aleksey Kladov
b68ef1231d
More Rustic API for Env
2020-07-21 17:17:21 +02:00
Aleksey Kladov
b48336bf94
Replace OUT_DIR in project.json with general env
...
OUT_DIR doesn't make sense here, as this is a cargo-specific concept
2020-07-21 15:12:12 +02:00
Aleksey Kladov
fe87aec7b6
Replace roots with include/exclude directories
2020-07-21 14:57:20 +02:00
Aleksey Kladov
39a2bc5e3c
Expose package roots more directly
2020-07-21 12:52:51 +02:00
Aleksey Kladov
bc4d047267
Add is_workspace_member for rust-project.json
...
It is currently unused, but, in the future, it will be used to:
* drive certain UX (symbols search by default will look only in the
members)
* improve performance (rust-analyzer will assume that non-members
change rarely)
If not specified, is_workspace member is inferred from the path
2020-07-20 17:57:10 +02:00
Yuki Okushi
6f423466d1
Add a license field to all the crates
2020-07-14 10:57:26 +09:00
Aleksey Kladov
676d2e040d
Sort cargo metadata
...
See https://github.com/rust-lang/cargo/issues/8477
We need this to prevent spurious workspace reloads
2020-07-10 22:30:24 +02:00
Aleksey Kladov
d0a8f6a3eb
Automatically reload project info on Cargo.toml changes
2020-07-10 15:35:15 +02:00
Aleksey Kladov
69b79e3a73
Replace ad hocery with science
2020-07-07 23:28:48 +02:00
Aleksey Kladov
4be73c2b7f
AbsPath
2020-07-05 11:15:35 +02:00
Paul Daniel Faria
5b96d4103e
Fallback to target in cfg if not specified in project json config
2020-07-04 13:50:27 -04:00
Paul Daniel Faria
db99f2dd7e
Add optional target to crates in json project, lookup default cfgs per target when generating cfg list
2020-07-04 13:49:44 -04:00
Aleksey Kladov
6c7578bd7a
Move cargo metadata off the main loop
2020-07-02 17:39:51 +02:00
Aleksey Kladov
6a694ad047
Minor
2020-07-02 16:06:00 +02:00
Aleksey Kladov
a03cfa4926
Automatically reload project on config change
2020-07-01 16:42:14 +02:00
Aleksey Kladov
80386ca5be
Use Strings for display names
2020-07-01 10:03:07 +02:00
Aleksey Kladov
307c6fec61
Use CrateName for semantic names
2020-07-01 09:53:53 +02:00
Aleksey Kladov
cec92407f4
Don't crash on empty out_dirs with older cargos
...
closes #5125
2020-06-30 22:12:27 +02:00
Aleksey Kladov
e6c61d5072
Cleanup project.json deserialization
2020-06-24 16:16:52 +02:00
Aleksey Kladov
a07cad16ab
Rename json_project -> project_json
2020-06-24 16:03:24 +02:00
Aleksey Kladov
154cb8243b
Be more explicit about absolute paths at various places
2020-06-24 14:39:34 +02:00
Aleksey Kladov
dad1333b48
New VFS
2020-06-23 17:51:06 +02:00
Thiébaud Weksteen
44f28f65af
Accept relative paths in rust-project.json
...
If a relative path is found as part of Crate.root_module or Root.path,
interpret it as relative to the location of the rust-project.json file.
2020-06-15 13:11:53 +02:00
Aleksey Kladov
27ebe5d33e
Reduce OUT_DIR special casing
2020-06-10 12:08:35 +02:00
bors[bot]
c9fc7251ca
Merge #4824
...
4824: Correct "debug_assertion" to "debug_assertions" to match the cfg that the rust debug assert macros use. r=matklad a=woody77
This is for #4823 .
Co-authored-by: Aaron Wood <aaronwood@google.com>
2020-06-10 05:24:18 +00:00
Aaron Wood
f4ed2da966
Correct "debug_assertion" to "debug_assertions" to match the cfg
...
option that the rust debug assert macros use.
2020-06-09 19:58:39 -07:00
Aaron Wood
055b9b64bc
Finish transition to cfgs from the separate atoms and features.
2020-06-08 16:19:39 -07:00
Paul Daniel Faria
dbceaf522b
Use Option<&str> for target instead of Option<&String>
2020-06-08 12:10:23 -04:00
Paul Daniel Faria
9c35f135b9
Remove default_cfg_options, pass target instead so it can be used for building cargo workspaces
2020-06-08 10:23:29 -04:00
Paul Daniel Faria
3937b225e7
Change management of test cfg to better support json projects
2020-06-07 10:29:03 -04:00
Aleksey Kladov
fa019c8f56
Document rust-project.json
2020-06-03 15:17:26 +02:00
Aleksey Kladov
03a76191a1
Rename ProjectRoot -> ProjectManifest
2020-06-03 12:05:50 +02:00
Aleksey Kladov
0a88de809f
Move project discovery
2020-06-03 12:04:27 +02:00
Aleksey Kladov
ca80544f4b
Put important things on top
2020-06-03 10:33:01 +02:00
Aleksey Kladov
ac4782ef11
Merge pull request #4382 from woody77/json_cfgs
...
Begin transition to new fields for JsonProject crate cfgs
2020-06-03 10:28:15 +02:00
Laurențiu Nicola
7a66d99897
Disable rust-analyzer.{cargo,checkOnSave}.allFeatures by default
2020-06-02 19:14:34 +03:00
Pavan Kumar Sunkara
9f0a7eb97b
Make some stuff public so that they can be reused by other tools
2020-05-14 11:14:46 +02:00
bors[bot]
a3dbd272e0
Merge #4406 #4410 #4411 #4417
...
4406: Update cargo-metadata r=matklad a=edwin0cheng
This PR update `cargo-metadata` to 0.10.0 and it also relax the` serde-derive` deps to 1.0 for tests in `proc-macro-srv`.
cc @robojumper
r= @matklad , I think you would have something to say related to https://github.com/serde-rs/json/issues/647#issue-593788429 ?
4410: Improve wording in comment r=matklad a=edwin0cheng
4411: do not remove then block when you unwrap else block #4361 r=matklad a=bnjjj
close #4361
4417: Omit default types in HirDisplay SourceCode mode r=matklad a=TimoFreiberg
Closes #4390
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
Co-authored-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com>
Co-authored-by: Timo Freiberg <timo.freiberg@gmail.com>
2020-05-10 17:37:07 +00:00
Edwin Cheng
2400d70442
Update cargo-metadata
2020-05-10 06:22:26 +08:00
Aaron Wood
beb79ed104
Begin transition to new fields for JsonProject crate cfgs
...
This starts the transition to a new method of documenting the cfgs that are
enabled for a given crate in the json file. This is changing from a list
of atoms and a dict of key:value pairs, to a list of strings that is
equivalent to that returned by `rustc --print cfg ..`, and parsed in the
same manner by rust-analyzer.
This is the first of two changes, which adds the new field that contains
the list of strings. Next change will complete the transition and remove
the previous fields.
2020-05-08 16:59:52 -07:00
veetaha
e83a2912b8
Simpify project discovery
2020-05-09 02:51:59 +03:00
Aleksey Kladov
f739e0119c
Add stderr to error message
2020-05-08 18:53:53 +02:00
Aleksey Kladov
ecff5dc141
Cleanup
2020-05-08 14:55:28 +02:00
Aleksey Kladov
6713be0b13
Rename ra_env -> ra_toolchain
2020-05-08 12:25:36 +02:00