aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge #1044bors[bot]2019-03-251-1/+1
|\ | | | | | | | | | | | | | | 1044: fix build r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * fix buildAleksey Kladov2019-03-251-1/+1
| |
* | Merge #1041bors[bot]2019-03-255-63/+105
|\ \ | |/ |/| | | | | | | | | | | 1041: Add convenience functions to SourceChange for creating single edits r=matklad a=vipentti Fixes #1018 Co-authored-by: Ville Penttinen <[email protected]>
| * Rename source_edit to source_file_edit to match file_system_editVille Penttinen2019-03-255-11/+11
| |
| * Further improvements to the SourceChange convenience methodsVille Penttinen2019-03-254-27/+50
| | | | | | | | | | Rename system_edit to file_system_edit, add more documentation, add source_file_edit_from to create a SourceChange from `FileId` and `TextEdit`.
| * Add convenience functions to SourceChange for creating single editsVille Penttinen2019-03-244-44/+63
| |
* | Merge #1043bors[bot]2019-03-252-2/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | 1043: link docs from dev docs, not from the main readme r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | link docs from dev docs, not from the main readmeAleksey Kladov2019-03-252-2/+5
| | | | | | | | | | | | If you want to **use** ra, you don't need api docs
* | | Merge #1042bors[bot]2019-03-251-27/+20
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1042: Remove windows from CI r=matklad a=matklad We don't actually look at the CI results for windows anyway! In general, rust-analyzer should be written in a completely OS-independent way. That is, testing on one OS should be enough. If this is not the case, that means something is seriously broken. No doubt there are components which actually talk to the outside world, and they may be platform dependent. We should extract such components to a separate repo with an extensive multi platform CI, like we did for VFS Co-authored-by: Aleksey Kladov <[email protected]>
| * | | Remove windows from CIAleksey Kladov2019-03-251-27/+20
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't actually look at the CI results for windows anyway! In general, rust-analyzer should be written in a completely OS-independent way. That is, testing on one OS should be enough. If this is not the case, that means something is seriously broken. No doubt there are components which actually talk to the outside world, and they may be platform dependent. We should extract such components to a separate repo with an extensive multi platform CI, like we did for VFS
* | | Merge #1036bors[bot]2019-03-254-35/+135
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1036: Assist to flip equality (==) and negated equality (!=) operands. r=matklad a=marcogroppo This PR adds an assist to flip the equality operands. I hope this is the right way to do this (I'm a newbie...) Fixes #1023. Co-authored-by: Marco Groppo <[email protected]>
| * | Target only the actual operator.Marco Groppo2019-03-243-47/+58
| | | | | | | | | | | | | | | Renamed `BinExpr::op()` and `PrefixExpr::op()` to `op_kind`. Now `op()` returns the `SyntaxNode`.
| * | Minor formatting changes.Marco Groppo2019-03-241-1/+1
| | |
| * | Assist to flip equality (==) and negative equality (!=) operands.Marco Groppo2019-03-242-0/+89
| | |
* | | Merge #1035bors[bot]2019-03-252-0/+15
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1035: Add master branch docs build and publish r=matklad a=robojumper Closes #1024. Additional setup required: * The rust-analyzer travis repo needs an [environment variable](https://docs.travis-ci.com/user/environment-variables/#defining-variables-in-repository-settings) `DOCS_TOKEN` that will be used to publish docs to the `gh-pages` branch. This is a GitHub access token with the appropriate permissions to push to this repository. Travis will keep this a secret. * In the GitHub repository settings, the GitHub pages source needs to be set to the `gh-pages` branch. This option will only appear once a branch is created with this exact name -- created either through the `deploy` step or manually. * In the GitHub repository settings, a GitHub pages theme will need to be chosen. What theme to use is unimportant, but [you must choose a theme](https://github.community/t5/GitHub-Pages/Github-Pages-are-not-published-after-following-the-documentation/m-p/18676#M1398). Docs are built as part of any rust build (on linux and windows, though all my Travis windows builds have timed out), but only published on master builds on linux. The docs badge links to `https://rust-analyzer.github.io/rust-analyzer/ra_ide_api/index.html` -- since this project is a cargo workspace, there isn't a global index page, hence just the link to an arbitrarily chosen crate. If this project had a canonical main crate with good documentation, one could link to that. All other crates are accessible through the sidebar. Co-authored-by: robojumper <[email protected]>
| * | | Add docs buildrobojumper2019-03-232-0/+15
| |/ /
* | | Merge #1029bors[bot]2019-03-242-24/+100
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | 1029: Add impl members assist shold not copy docstrings, attrs and default methods r=matklad a=gfreezy 1. `add missing impl members` assist should not copy docstrings, attrs and default methods 2. Add `add impl default members` assist fixed #1022 Co-authored-by: gfreezy <[email protected]>
| * | Add assist for adding default methodsgfreezy2019-03-232-3/+59
| | |
| * | Add impl members assist shold not copy docstrings, attrs and default methods.gfreezy2019-03-231-22/+42
| | |
* | | Merge #1039bors[bot]2019-03-243-1/+130
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 1039: Support references in higher-ranked trait bounds r=matklad a=vipentti Fixes #1020 Co-authored-by: Ville Penttinen <[email protected]>
| * | Support references in higher-ranked trait boundsVille Penttinen2019-03-243-1/+130
|/ / | | | | | | Fixes #1020
* | Merge #1031bors[bot]2019-03-238-236/+222
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 1031: Move most things out of ra_ide_api_light r=matklad a=detrumi This moves everything except `structure` out of `ra_ide_api_light`. So this PR and #1019 finish up #1009, whichever is merged last should probably remove the `ra_ide_api_light` crate. Also, `LocalEdit` was removed since it wasn't used any more. Co-authored-by: Wilco Kusee <[email protected]>
| * | Move highlighting and matching_braceWilco Kusee2019-03-237-164/+166
| | |
| * | Remove LocalEdit usageWilco Kusee2019-03-233-70/+55
| | |
| * | Move typing to ra_ide_apiWilco Kusee2019-03-233-7/+6
| | |
* | | Merge #1032bors[bot]2019-03-232-2/+25
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1032: Fix apply_substs assertion failure r=matklad a=flodiebold Fixes #1030. Co-authored-by: Florian Diebold <[email protected]>
| * | | Fix apply_substs assertion failureFlorian Diebold2019-03-232-2/+25
|/ / / | | | | | | | | | Fixes #1030.
* | | Merge #1027bors[bot]2019-03-232-22/+0
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1027: remove obsolete diagnostic r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | remove obsolete diagnosticAleksey Kladov2019-03-232-22/+0
|/ / /
* | | Merge #1026bors[bot]2019-03-2318-160/+106
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1026: rename persistent hir database -> def database r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | | rename persistent hir database -> def databaseAleksey Kladov2019-03-2318-160/+106
|/ / /
* | | Merge #1025bors[bot]2019-03-234-32/+18
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 1025: Disable fork feature for proptest r=matklad a=detrumi Co-authored-by: Wilco Kusee <[email protected]>
| * | Disable fork feature for proptestWilco Kusee2019-03-234-32/+18
| | |
* | | document work listAleksey Kladov2019-03-231-0/+9
| | |
* | | Merge #990bors[bot]2019-03-2330-72/+96
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 990: Forbid TODO markers on master branch r=matklad a=matklad this makes TODO markers useful for things which you want to fix before sending a PR Co-authored-by: Aleksey Kladov <[email protected]>
| * | replace todo with fixmeAleksey Kladov2019-03-2329-71/+71
| | |
| * | forbid todo markersAleksey Kladov2019-03-231-1/+25
|/ /
* | Merge #1021bors[bot]2019-03-222-12/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1021: Wasm dependencies r=matklad a=detrumi As a first step towards running RA on WASM (see #1007), this tweaks the dependencies somewhat so that projects built using `wasm-pack` can use `ra_ide_api` as a dependency. There were two problems: - use of undeclared type or module `MmapInner` This error occurred because of the `memmap` crate, as a dependency of `fst` Solution: specify `default-features = false` for the `fst` package (see https://github.com/BurntSushi/fst/issues/70) - use of undeclared type or module `imp` This happened in the `wait-timeout` crate ([which uses `Command` under the hood](https://github.com/alexcrichton/wait-timeout/issues/18)), a dependency of `rusty-fork` which is a dependency of `proptest`. Solution: move `proptest` to dev-dependencies and add `#[cfg(test)]` to the `test_utils` crate. **Edit:** Oh, that causes trouble with resolving the import when running the tests. Hmm... Co-authored-by: Wilco Kusee <[email protected]>
| * | Disable memmap feature in fst dependencyWilco Kusee2019-03-222-12/+1
| |/
* | Merge #1012bors[bot]2019-03-227-33/+27
|\ \ | |/ |/| | | | | | | | | | | 1012: Move join_lines and test_utils to ra_ide_api r=matklad a=detrumi Part of #1009 Co-authored-by: Wilco Kusee <[email protected]>
| * Simplify changes and fix testsWilco Kusee2019-03-223-19/+15
| |
| * Remove LocalEdit usageWilco Kusee2019-03-222-16/+17
| |
| * Move join_lines to ra_ide_apiWilco Kusee2019-03-227-13/+10
|/
* Merge #1016bors[bot]2019-03-223-5/+5
|\ | | | | | | | | | | | | | | 1016: Move folding_ranges to ra_ide_api r=pasa a=pasa folding_ranges part of #1009 Co-authored-by: Sergey Parilin <[email protected]>
| * Move folding_ranges to ra_ide_apiSergey Parilin2019-03-223-5/+5
|/
* Merge #1017bors[bot]2019-03-226-5/+8
|\ | | | | | | | | | | | | | | 1017: line_index and line_index_utils moved to ra_ide_api r=matklad a=pasa line_index and line_index_utils for issue #1009 Co-authored-by: Sergey Parilin <[email protected]>
| * line_index and line_index_utils moved to ra_ide_apiSergey Parilin2019-03-226-5/+8
| |
* | Merge #1015bors[bot]2019-03-224-144/+155
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | 1015: Change primitive integers to have signedness and bitness r=matklad a=yanchith Fixes #1004 This creates enums: `Signedness`, `IntBitness` and `FloatBitness`, and condenses `UintTy` with `IntTy`, making use of the created enums. `FloatTy` is also changed from an enum into a struct containing `FloatBitness`. `UncertainIntTy` and `UncertainFloatTy` now look much more similar. `Ord` was removed from the types because `{u,i}size` aren't easily orderable with the rest. Fortunately this wasn't depended on anywhere. Co-authored-by: yanchith <[email protected]>
| * Refactor primitive types into more orthogonal representationyanchith2019-03-224-144/+155
|/
* Merge #1013bors[bot]2019-03-2215-24/+149
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1013: Fuzz reparsing and fix found bugs r=matklad a=pcpthm Add fuzz test for reparsing which: - Checks reparsing doesn't panic and validate result syntax tree. - Checks that incremental reparsing produces the same syntax tree as full reparse. - Check for that errors are the same as full reparsing is disabled because errors are less important than syntax tree and produce failures which I couldn't figure out how to fix immediately (FIXME comment). I guess the current input generation is inefficient but still found several bugs: - Arithmetic overflow (negative result on an unsigned type). I changed the signature of `SyntaxError::add_offset` to solve this problem. - When reparsing a leaf, the token of the leaf can be joined to the next characters. Such case was not considered. - UNDERSCORE token was not produced when text length is exactly 1 (not a reparsing bug). - When reparsing a block, *inner* curly braces should be balanced. i.e. `{}{}` is invalid. - Effects of deleting newlines were not considered. Co-authored-by: pcpthm <[email protected]>