478: WIP: implement cancelation via unwinding r=matklad a=matklad
This uses https://github.com/salsa-rs/salsa/pull/107 to implement cancellation.
Now we can get rid of `Cancelable` wrapper from everywhere except the top-level analyzer library.
Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
477: Extend selection for list items r=matklad a=hban
First PR, criticism welcome!
There are a few things I'm not so sure about:
* There is now a not-so-small list of "list-like kinds" in extend selection source which maybe should belong somewhere else.
* Preferring left comma doesn't seem right IMO for one reason - trailing commas are usually on the right. For example, when array values are broken across multiple lines extending selected value will cover right trailing comma (because it's the only comma on the same line), but when all values are on the same line it will pick left comma. Anyway, currently with this PR it will pick always extend to left comma when possible since that's what issue specified 😃.
Closes: #444
Co-authored-by: Hrvoje Ban <hban@users.noreply.github.com>
473: Partial typo fix r=matklad a=marcusklaas
This fixes some typos. Mostly in documentation, but also some code is affected (`defenition` was used in a few method names).
Co-authored-by: Marcus Klaas de Vries <mail@marcusklaas.nl>
460: Name resolution fixes r=flodiebold a=flodiebold
Found two problems:
- use tree desugaring lost the prefix if the path had just one segment (e.g. in `use foo::{bar, baz}`)
- when resolving imports across source roots, it actually used the name of the segment from the other source root... so e.g. in `use ra_syntax::foo` it'd map `ra_syntax` to the import instead of `foo` 😄
Both of these are one-line fixes, most of this is making it possible to write tests with multiple source roots.
I also left in debug logs for the name resolution, in case it turns out there's still more to fix ;)
Co-authored-by: Florian Diebold <flodiebold@gmail.com>