aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_batch
Commit message (Collapse)AuthorAgeFilesLines
* remove one more dependency on source rootsAleksey Kladov2019-10-141-8/+2
|
* use slightly more idiomatic api for cfgAleksey Kladov2019-10-081-2/+6
|
* Read default cfgs from rustcuHOOCCOOHu2019-10-021-6/+12
|
* Added test for check doc strings in crates.Alexander Andreev2019-09-301-0/+2
| | | | #1856
* don't break parser error recovery in presence of macrosAleksey Kladov2019-09-121-0/+4
| | | | | | | Parser has the invariant that `{}` are balanced. Previous code tried (unsucesfuly) maintain the same invariant for `$()` as well, but it was done in a rather ad-hoc manner: it's not at all obvious that it is possible to maintain both invariants!
* document moduleAleksey Kladov2019-09-091-1/+1
|
* add option to disable notifyAleksey Kladov2019-09-062-2/+3
|
* :arrow_up: vfsAleksey Kladov2019-08-252-4/+9
|
* implement feature flagsAleksey Kladov2019-08-221-2/+2
|
* introduce ra_vfs_glob crateAleksey Kladov2019-08-063-59/+16
| | | | It manages exclusion rules for the vfs crate
* renameAleksey Kladov2019-08-062-12/+12
|
* Remove unused dependenciesShotaro Yamada2019-07-081-4/+0
|
* allow rustfmt to reorder importsAleksey Kladov2019-07-042-9/+7
| | | | | | This wasn't a right decision in the first place, the feature flag was broken in the last rustfmt release, and syntax highlighting of imports is more important anyway
* move ra_prof dep where it belongsAleksey Kladov2019-06-261-4/+0
|
* add cpuprofile to ra_profAleksey Kladov2019-06-261-0/+4
| | | | | | | | | Now, one can use `let _p = ra_prof::cpu_profiler()` to capture profile of a block of code. This is not an out of the box experience, as that relies on gperfools See the docs on https://github.com/AtheMathmo/cpuprofiler for more!
* add analysis-bench to benchmark incremental analysisAleksey Kladov2019-06-162-71/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Can be used like this: ``` $ cargo run --release -p ra_cli -- \ analysis-bench ../chalk/ \ --complete ../chalk/chalk-engine/src/logic.rs:94:0 loading: 225.970093ms from scratch: 8.492373325s no change: 445.265µs trivial change: 95.631242ms ``` Or like this: ``` $ cargo run --release -p ra_cli -- \ analysis-bench ../chalk/ \ --highlight ../chalk/chalk-engine/src/logic.rs loading: 209.873484ms from scratch: 9.504916942s no change: 7.731119ms trivial change: 124.984039ms ``` "from scratch" includes initial analysis of the relevant bits of the project "no change" just asks the same question for the second time. It measures overhead on assembling the answer outside of salsa. "trivial change" doesn't do an actual salsa change, it just advances the revision. This test how fast is salsa at validating things.
* reuse AnalysisHost in batch analysisAleksey Kladov2019-06-152-94/+71
|
* cargo formatMuhammad Mominul Huque2019-06-151-1/+0
|
* Get rid of failure: ra_batch ra_cliMuhammad Mominul Huque2019-06-152-6/+3
|
* make LRU_CAP configurable for batch dbAleksey Kladov2019-06-121-2/+6
|
* use salsa's LRU for syntax treesAleksey Kladov2019-06-121-1/+3
|
* Fix clippy::identity_conversionAlan Du2019-06-041-2/+2
|
* add AstDatabaseAleksey Kladov2019-06-021-1/+6
|
* migrate to salsas interningAleksey Kladov2019-04-091-10/+2
|
* Make robust about target directorypcpthm2019-04-041-4/+1
|
* rename persistent hir database -> def databaseAleksey Kladov2019-03-231-5/+1
|
* Move actual include logic to ProjectRootVille Penttinen2019-03-211-25/+20
| | | | | This way the two IncludeRustFiles implementations can simply call the ProjectRoots' methods, so that the include logic is in one place.
* Improve filtering of file rootsVille Penttinen2019-03-202-29/+66
| | | | | | | | | `ProjectWorkspace::to_roots` now returns a new `ProjectRoot` which contains information regarding whether or not the given path is part of the current workspace or an external dependency. This information can then be used in `ra_batch` and `ra_lsp_server` to implement more advanced filtering. This allows us to filter some unnecessary folders from external dependencies such as tests, examples and benches.
* Upgrade ra_vfs to use new FilteringVille Penttinen2019-03-182-3/+28
| | | | | Currently this matches the previous filtering, meaning all roots are filtered using the same rules.
* Rename and change `add_roots` to return a `Vec`.David Wood2019-03-071-1/+1
|
* Initial implementation of project-lock.json.David Wood2019-03-071-6/+1
| | | | | This commit adds a initial implementation of project-lock.json, a build system agnostic method of specifying the crate graph and roots.
* switch to crates.io vfsAleksey Kladov2019-02-181-1/+1
|
* fix-testsAleksey Kladov2019-02-171-4/+4
|
* automatically wait for worker threadsAleksey Kladov2019-02-141-1/+0
| | | | closes #817
* Remove call to canonicalize in BatchDatabase::load_cargoVille Penttinen2019-02-141-1/+1
| | | | | | | | Instead of using canonicalize, we now join the given path to `std::env::current_dir()`, which either replaces the path, if the given path is absolute, or joins the paths. This fixes #821.
* Fix typo in Cargo.toml authorsVille Penttinen2019-02-111-1/+1
| | | | Fixes typo introduced in #782
* Update authors field in Cargo.tomls to "rust-analyzer developers"Ville Penttinen2019-02-111-1/+1
| | | | This closes #777
* Clean up a bitFlorian Diebold2019-02-101-2/+1
|
* Add a smoke test for ra_batchFlorian Diebold2019-02-101-0/+24
|
* Add an ra_cli command that analyses all crates in the current workspaceFlorian Diebold2019-02-101-2/+7
| | | | ... and prints various stats about how many expressions have a type etc.
* Implement BatchDatabase constructionFlorian Diebold2019-02-102-11/+100
|
* Add new crateFlorian Diebold2019-02-102-0/+54