Skip to content

Collapse invocationLocation and invocationStrategy into a single setting #17848

Closed
@RalfJung

Description

@RalfJung

These options were added to explore how RA can best work with repos like rustc and Miri that need special non-cargo invocations (./x.py ..././miri ...). The consensus that generally has emerged is that these scripts should be invoked exactly once, in the root, and they will emit all the diagnostics for all parts of the project with paths relative to the root. There were ideas of having RA pass --manifest-path or so, with template magic available in overrideCommand to control where to put that flag; I don't think any more that those are promising.

If there are no other usecases being covered by these flags then most of the freedom provided by having two independent settings, invocationLocation and invocationStrategy, isn't actually needed. A possible simplification here might be to only have invocationLocation, and if it is set to "root" then that also implies running it only once (since it seems kind of pointless to run the same command in the same location multiple times). invocationStrategy could then be removed. Or conversely, invocationStrategy is preserved and setting it to once means "run it once, in the root".

Metadata

Metadata

Assignees

Labels

A-configconfigurationE-easyE-has-instructionsIssue has some instructions and pointers to code to get started

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions