Craig Disselkoen
303b444dbb
pull function out into new crate ra_env; use in ra_flycheck as well
2020-05-05 16:12:56 -07:00
Craig Disselkoen
5aa1bba107
more generic, find rustc as well
2020-05-05 16:12:56 -07:00
Craig Disselkoen
ffaef1b7ae
ra_project_model: look for Cargo in more places
...
See #3118
2020-05-05 16:12:56 -07:00
bors[bot]
8803e748a6
Merge #4166
...
4166: Defining a default target to support cross-compilation targets r=matklad a=FuriouZz
Related to #4163
Co-authored-by: Christophe MASSOLIN <christophe.massolin@gmail.com>
2020-05-05 17:25:52 +00:00
Christophe MASSOLIN
04e32fbffc
Remove code duplicates
2020-05-05 18:23:47 +02:00
Christophe MASSOLIN
14dde99627
Pass cargo.target to rustc
2020-05-05 18:15:13 +02:00
Christophe MASSOLIN
0ab4340cdb
Rename defaultTarget
to target
2020-05-05 18:01:54 +02:00
Laurențiu Nicola
1e20467c3a
Bump deps
2020-05-01 15:29:03 +03:00
Christophe MASSOLIN
e7523511ce
[config] remove RustcConfig
2020-04-28 00:17:23 +02:00
Christophe MASSOLIN
ed5af989f4
[config] rename cargo.defaultTarget
2020-04-28 00:15:54 +02:00
Christophe MASSOLIN
b7edffe244
Started rust-analyzer.cargo.defaultTarget implementation
2020-04-27 00:11:04 +02:00
bors[bot]
f654f49435
Merge #4125
...
4125: Avoid lossy OsString conversions r=matklad a=lnicola
This is a bit invasive, and perhaps for not much benefit since non-UTF-8 environment variables don't work anyway.
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2020-04-25 10:35:14 +00:00
Laurențiu Nicola
58dde891f8
Avoid lossy OsString conversions
2020-04-25 12:19:23 +03:00
Aleksey Kladov
aa669c5ba5
Don't print cargo version to stdout, breaking everything
2020-04-24 23:02:10 +02:00
Aleksey Kladov
6c400b3e33
More helpful error message if toolchain is not in PATH
2020-04-24 22:01:32 +02:00
Jeremy Kolb
d7f3d858ad
Some clippy fixes
2020-04-19 15:15:49 -04:00
Aleksey Kladov
422ae477ce
Unmix error handling when discovering workspaces
...
Hitting an io::Error is a legit problem. Finding more than one
Cargo.toml is not.
2020-04-16 22:35:50 +02:00
Aleksey Kladov
be2654b0ed
Decouple project loading from project discovery a bit
2020-04-16 22:02:10 +02:00
veetaha
6190caeeae
Migrate to privacy as per review commets
2020-04-02 21:09:03 +03:00
veetaha
bef899aa78
Less mutability
2020-04-02 21:07:05 +03:00
veetaha
a90401aeed
Migrate to iters some more
2020-04-02 21:07:05 +03:00
veetaha
987fb26a5b
Migrate to iterators
2020-04-02 21:07:05 +03:00
veetaha
b7d5172f69
Simpify workspace handling
2020-04-02 21:07:05 +03:00
o0Ignition0o
f643b4b5f5
Unique package by name and version.
...
This commit is a fixup of a bug I introduced by using a PackageId to refer to a crate when its name conflicts with a dependency.
It turns out the package id currently is `name version path` while cargo expects `name:version` as argument.
2020-04-02 09:00:44 +02:00
Aleksey Kladov
4936abdd49
Reduce scope of deserialization
2020-04-01 18:51:16 +02:00
Aleksey Kladov
1e012eb991
Move all config to config
2020-04-01 17:22:56 +02:00
Aleksey Kladov
8d27829781
Reduce deps
2020-03-31 19:29:11 +02:00
Aleksey Kladov
70730d7655
Rename cargo_watch -> flycheck
2020-03-31 17:29:40 +02:00
Edwin Cheng
1b8a26653f
Use matches in is_dylib
2020-03-31 22:20:18 +08:00
Edwin Cheng
503cbd3f4b
Implement ra_proc_macro client logic
2020-03-31 22:20:18 +08:00
o0Ignition0o
331d1db317
Add crate versions when running cargo -p commands.
...
Until now cargo commands with the -p flag would pass the package name only.
It doesn't play super well with the toml Renaming dependencies feature.
This commit specifies the package name and version when a cargo command is run with the -p flag,
to avoid ambiguities.
2020-03-31 14:43:39 +02:00
Edwin Cheng
d0b6ed4441
Add ProcMacroClient
2020-03-26 03:29:45 +08:00
veetaha
ce73c43848
ra_cargo_watch: return Result<> from run_cargo(), and don't read stderr for now
...
As stated by matklad, reading the stderr
should be done alngside with
stdout via select() (or I guess poll()),
there is no such implementation in stdlib,
since it is quite low level and platform-dependent and it
also requires quite a bit of unrelated code we don't use it for now.
As referenced by bjorn3, there is an implementation of the needed read2() function
in rustc compiletest. The better solution will be to extract this function
to a separate crate in future:
https://github.com/rust-analyzer/rust-analyzer/pull/3632#discussion_r395605298
2020-03-21 23:37:15 +02:00
Edwin Cheng
d62dd63256
Use target-name for crate-name
2020-03-22 01:09:38 +08:00
Aleksey Kladov
f840fcb2f5
Simplify Arena to use a generic index
2020-03-19 18:46:30 +01:00
Aleksey Kladov
fc230b943b
Simplify Sysroot
2020-03-19 17:59:31 +01:00
Aleksey Kladov
516fe293a8
More direct CargoWorkspace
2020-03-19 17:53:31 +01:00
Emil Lauridsen
2dd887de47
Use dyn-ref instead of impl to impact compile times the least
2020-03-17 14:56:53 +01:00
Emil Lauridsen
5af81b8456
Slight readablity improvement
2020-03-17 14:56:14 +01:00
Emil Lauridsen
e154132c91
Remove outDirOverrides
2020-03-17 14:55:44 +01:00
Emil Lauridsen
4fb79f2ca0
Support specifying OUT_DIR in json project
2020-03-17 14:47:05 +01:00
Emil Lauridsen
f5a2fcf8f5
Change existing OUT_DIR override config to make use of new infrastructure
2020-03-17 14:47:05 +01:00
Emil Lauridsen
33c6c7abc6
Support loading OUT_DIR from cargo check at launch
2020-03-17 14:47:05 +01:00
Kirill Bulatov
059ed25a3e
Fix crate display name dashes
2020-03-16 11:47:52 +02:00
Edwin Cheng
6ea7c31915
Add extern source
2020-03-11 11:04:02 +08:00
Edwin Cheng
e00a1e0b79
Setup Env in world
2020-03-11 01:06:01 +08:00
Kirill Bulatov
5cffef56e2
Consider crate declaration names
2020-03-08 23:00:50 +02:00
Veetaha
9f1adf8498
ra_project_model: migrate to Sysroot::alloc()
2020-03-01 00:16:57 +02:00
nmio
e15424c1b7
keep one CargoTomlNotFoundError
2020-02-29 13:05:10 +00:00
nmio
12b595e817
remove code used for testing
2020-02-27 22:06:51 +00:00