Johann Hemmann
4184c6af0d
collapsible_match
2024-01-19 17:31:00 +01:00
Johann Hemmann
b5eca5f2fc
collapsible_if
2024-01-19 17:31:00 +01:00
Johann Hemmann
3409645c3f
bind_instead_of_map
2024-01-19 17:31:00 +01:00
Johann Hemmann
1fdf3063d0
Move some lints to temporary list
2024-01-19 13:06:08 +01:00
Johann Hemmann
3041164301
Temporarily allow all lints which occur
...
They will be removed one by one
2024-01-19 12:52:12 +01:00
Johann Hemmann
1889c6c686
Copy lint tables from https://github.com/rust-lang/rust-analyzer/pull/15017
2024-01-19 11:50:12 +01:00
Lukas Wirth
35e05e07fb
Bump smol_str
2024-01-16 11:07:45 +01:00
Lukas Wirth
9c2d331e16
Bump salsa
2024-01-10 08:47:26 +01:00
Lukas Wirth
f972da70d4
Remove rustc_dependencies crate
2024-01-08 15:39:35 +01:00
Lukas Wirth
e25e0dd0ad
Split out rustc_parse_format from rustc_dependencies
2024-01-08 15:30:26 +01:00
Lukas Wirth
b97ab00bd4
Split out rustc_lexer from rustc_dependencies
2024-01-08 15:24:46 +01:00
Lukas Wirth
751d9d11e0
Add proc-macro-test crate back to the main workspace
2024-01-04 11:09:45 +01:00
bors
86e559bf3f
Auto merge of #16211 - tetsuharuohzeki:update-lint, r=Veykril
...
Use Cargo's [workspace.lints.*] to config clippy
This change begin to use [`[workspace.lints.*]`](https://doc.rust-lang.org/cargo/reference/workspaces.html#the-lints-table ) that is stabilized since [Rust 1.74](https://blog.rust-lang.org/2023/11/16/Rust-1.74.0.html ).
By this change, we make the configure more readable and simplify `xargo lint` more.
2024-01-02 14:53:22 +00:00
Lukas Wirth
3c8dd9e89e
Expose whether a channel has been dropped in lsp-server errors
2024-01-01 14:10:46 +01:00
Tetsuharu Ohzeki
efc87092b3
Use Cargo's [workspace.lints.*] to config clippy
2023-12-29 23:51:32 +09:00
Tetsuharu Ohzeki
25444cdd04
Bump rust-version to 1.74
2023-12-29 23:23:34 +09:00
Lukas Wirth
c89fd01739
Move proc-macro-test into proc-macro-srv
2023-12-21 17:23:33 +01:00
Lukas Wirth
4ec81230db
Remove usages of Span::DUMMY
2023-12-20 12:53:46 +01:00
Lukas Wirth
f48ecb6e09
Try to support pre and post-change metavars
2023-12-19 20:45:12 +01:00
Lukas Wirth
f49a2fed3f
internal: Move out WithFixture
into dev-dep only crate
2023-12-18 15:24:08 +01:00
Lukas Wirth
66e29be1bd
internal: Split out a span crate
2023-12-18 14:08:33 +01:00
Laurențiu Nicola
3b23e9aacc
Bump line-index
2023-12-12 17:18:08 +02:00
Lukas Wirth
5544f4fa3d
Bump and unlock some dependencies
2023-12-07 11:48:58 +01:00
Lukas Wirth
45d81048c9
internal: Bump salsa
2023-12-07 10:57:51 +01:00
Laurențiu Nicola
523ad0f634
Disable debuginfo again
2023-12-04 22:15:59 +02:00
bors
e91fdf7860
Auto merge of #15959 - Veykril:macro-shower3, r=lnicola
...
TokenMap -> SpanMap rewrite
Opening early so I can have an overview over the full diff more easily, still very unfinished and lots of work to be done.
The gist of what this PR does is move away from assigning IDs to tokens in arguments and expansions and instead gives the subtrees the text ranges they are sourced from (made relative to some item for incrementality). This means we now only have a single map per expension, opposed to map for expansion and arguments.
A few of the things that are not done yet (in arbitrary order):
- [x] generally clean up the current mess
- [x] proc-macros, have been completely ignored so far
- [x] syntax fixups, has been commented out for the time being needs to be rewritten on top of some marker SyntaxContextId
- [x] macro invocation syntax contexts are not properly passed around yet, so $crate hygiene does not work in all cases (but most)
- [x] builtin macros do not set spans properly, $crate basically does not work with them rn (which we use)
~~- [ ] remove all uses of dummy spans (or if that does not work, change the dummy entries for dummy spans so that tests will not silently pass due to havin a file id for the dummy file)~~
- [x] de-queryfy `macro_expand`, the sole caller of it is `parse_macro_expansion`, and both of these are lru-cached with the same limit so having it be a query is pointless
- [x] docs and more docs
- [x] fix eager macro spans and other stuff
- [x] simplify include! handling
- [x] Figure out how to undo the sudden `()` expression wrapping in expansions / alternatively prioritize getting invisible delimiters working again
- [x] Simplify InFile stuff and HirFIleId extensions
~~- [ ] span crate containing all the file ids, span stuff, ast ids. Then remove the dependency injection generics from tt and mbe~~
Fixes https://github.com/rust-lang/rust-analyzer/issues/10300
Fixes https://github.com/rust-lang/rust-analyzer/issues/15685
2023-12-04 19:59:53 +00:00
David Barsky
914a1570e2
internal: bump triomphe to 0.1.10
2023-11-28 10:27:17 -05:00
Lukas Wirth
05f375eae2
hygiene 2.0
2023-11-28 10:55:39 +01:00
Laurențiu Nicola
480cb60be3
Bump libc
2023-11-16 21:48:49 +02:00
Laurențiu Nicola
c6fad55c98
Bump bitflags
2023-11-15 21:20:47 +02:00
Laurențiu Nicola
3ed27d21f2
Bump cargo_metadata
2023-11-15 21:18:49 +02:00
Laurențiu Nicola
2814d646cb
Bump rayon
2023-11-15 21:14:56 +02:00
Laurențiu Nicola
b18ce4f8ea
Bump xshell
2023-11-15 21:12:18 +02:00
Laurențiu Nicola
83e6d7938c
Bump tracing-tree again
2023-11-15 21:08:35 +02:00
Laurențiu Nicola
829cf8db4c
Bump dissimilar
2023-11-15 13:34:56 +02:00
Laurențiu Nicola
572583262c
Bump text-size
2023-11-15 13:33:03 +02:00
Laurențiu Nicola
1fc056ec93
Bump indexmap
2023-11-15 13:21:34 +02:00
Laurențiu Nicola
2bfd6b659d
Bump serde_json
2023-11-15 13:17:36 +02:00
Laurențiu Nicola
970a796368
Bump serde
2023-11-15 13:16:07 +02:00
Laurențiu Nicola
cb8434e594
Bump either
2023-11-15 13:07:36 +02:00
Laurențiu Nicola
2dbdaa247b
Bump tracing-subscriber
2023-11-15 13:04:39 +02:00
Laurențiu Nicola
d83620a5ba
Bump tracing-tree
2023-11-15 13:01:54 +02:00
Laurențiu Nicola
f53368dd3f
Bump tracing
2023-11-15 13:00:32 +02:00
Laurențiu Nicola
f66df10f87
Bump itertools
2023-11-15 12:53:56 +02:00
Laurențiu Nicola
dfc885e0fd
Bump anyhow
2023-11-15 12:49:32 +02:00
shogo-nakano-desu
1e11a55f98
refactor: remove unnecesary deps that are blended in when rebase
2023-09-20 22:55:52 +09:00
shogo-nakano-desu
f671b0b864
refactor: move implementation inside anymap crate into stdx crate
2023-09-20 09:02:10 +09:00
shogo-nakano-desu
4b3257a365
refactor: port anymap
2023-09-20 09:02:05 +09:00
hkalbasi
f4704bc8ae
Switch to in-tree rustc dependencies with a cfg flag
2023-09-15 18:10:11 +03:30
Lukas Wirth
10b0cd7047
Replace format-args parser with upstream fork
2023-09-07 11:37:59 +02:00
Alex Kladov
43e868807e
internal: up lsp-server
2023-08-22 11:42:53 +01:00
Alex Kladov
343ee8bacf
internal: unpin serde
...
Sered no longer uses blobs as of
https://github.com/serde-rs/serde/pull/2590
As such, there's no longer need for us to pin it.
Note that this doesn't upgrade serde version we use: I am fairly
confident that the blobs are already there are fine, and now I am fairly
confident that all future versions of serde will be fine as well.
2023-08-21 14:29:18 +01:00
Alex Kladov
1cebc0ca13
internal: post-bump lsp-server version
2023-08-19 15:28:32 +01:00
Alex Kladov
6c46b98a95
fix: avoid problematic serde release
...
serde 1.0.172 and up rely on opaque non-reproducible binary blobs to
function, explicitly not providing a library-level opt-out.
This is problematic for two reasons:
- directly, unauditable binary blobs are a security issue.
- indirectly, it becomes much harder to predict future behaviors of the
crate.
As such, I am willing to go on a limb here and forbid building
rust-analyzer with those versions of serde. Normally, my philosophy is
to defer the choice to the end user, but it's also a design constraint
of rust-analyzer that we don't run random binaries downloaded from the
internet without explicit user's concent.
Concretely, this upper-bounds serde for both rust-analyzer workspace, as
well as the lsp-server lib.
See https://github.com/serde-rs/serde/issues/2538 for wider context.
2023-08-19 14:14:23 +01:00
Alex Kladov
dadbfe7f4b
upgrade lsp server
2023-08-19 13:36:07 +01:00
Laurențiu Nicola
424da10077
Bump rust-version to 1.70 and use the workspace one in xtask
2023-07-14 16:15:26 +03:00
Lukas Wirth
28fcd1bdd7
Split out project loading capabilities from rust-analyzer crate
2023-07-03 17:40:31 +02:00
David Lattimore
0810827b97
Don't specify proc-macro-test version
...
proc-macro-test is only used as a dev-dependency and isn't published to
crates.io, so a version doesn't make sense. Having a version also breaks
automatic publishing.
2023-07-02 19:06:20 +10:00
Lukas Wirth
e5c65071bc
Disconnect library crate dependencies from workspace dependencies
2023-06-22 11:50:52 +02:00
Lukas Wirth
8823db6c78
Bump more deps
2023-06-22 11:44:10 +02:00
Lukas Wirth
4fa3f1ef5c
Bump serde 2 things
2023-06-22 11:44:10 +02:00
David Lattimore
5c8d1a46b5
Use lib crates from crates.io
...
See lib/README.md for justification
2023-06-21 16:10:17 +10:00
David Lattimore
fb3e54ef05
Release lsp-server 0.7.1
2023-06-20 13:53:39 +10:00
David Lattimore
a0467c546c
Release la-arena 0.3.1
2023-06-20 13:53:39 +10:00
David Lattimore
bea3a33d84
Change in-tree libs to workspace dependencies
2023-06-20 13:53:39 +10:00
Lukas Wirth
f9a9e40c0a
Update builtin attribute list
2023-06-04 10:02:11 +02:00
Lukas Wirth
099b5b3b15
internal: Bump rustc_lexer
2023-05-18 10:17:40 +02:00
Ariel Davis
594a41e7bf
Use pre.1, tweak comment
2023-05-06 00:51:25 -07:00
Ariel Davis
4b28ad92e9
Make text-size a workspace dep
2023-05-06 00:49:23 -07:00
Ariel Davis
85dd7b22b4
Use nohash_hasher, rm comment
2023-05-06 00:49:23 -07:00
Laurențiu Nicola
7197a27028
Use triomphe Arc
2023-05-02 20:02:43 +03:00
Lukas Wirth
1456b53051
Bump smol-str
2023-04-11 14:39:19 +02:00
Lukas Wirth
39e86e78c3
Bump Cargo.lock
2023-03-25 15:12:39 +01:00
Lukas Wirth
3c0f20a7bd
internal: Enable smallvec's union
feature
2023-02-14 17:01:01 +01:00
bors
fa874627f0
Auto merge of #13969 - Veykril:workspace.dependencies, r=Veykril
...
Use workspace.dependencies to declare local dependencies
2023-01-17 10:29:27 +00:00
Lukas Wirth
bed4db3c62
Use workspace.dependencies to declare local dependencies
2023-01-17 10:52:26 +01:00
Lukas Wirth
e4858fe480
Specify authors, edition and license via workspace.package
2023-01-16 16:44:00 +01:00
Lukas Wirth
679df2adf1
Specify rust-version via workspace.package
2023-01-16 16:33:01 +01:00
Ryo Yoshida
310a72bf47
Bump chalk to 0.86
...
Two breaking changes:
- `TypeFolder` has been split into `TypeFolder` and `FallibleTypeFolder`
- `ProjectionTy::self_type_parameter()` has been removed
2022-10-16 19:23:34 +09:00
Peh
1f011fa4a3
style: rename crates to kebab case
2022-05-01 10:48:58 +00:00
Laurențiu Nicola
0e0ad0377c
Drop resolver and authors manifest entries
2021-10-25 18:12:40 +03:00
Lukas Wirth
b219a4c465
internal: Parse const trait bounds
2021-10-19 14:20:00 +02:00
Jonas Schievink
05b3a4bc93
Build test-macros in a build script
2021-06-09 17:16:52 +02:00
Dawer
9899bb450a
minor: reenable incremental test builds
2021-05-31 12:15:40 +05:00
Jonas Schievink
c9ba634627
reenable incremental release builds
2021-05-31 01:12:11 +02:00
Jonas Schievink
b12d8dcb82
Don't force-disable incremental
2021-05-30 23:46:39 +02:00
Aleksey Kladov
4b5600b2e8
internal: use modern resolever
...
I don't think this affects us, but better to stick to modern
practicies.
2021-05-11 13:06:35 +03:00
Aleksey Kladov
2a4819ca19
Disable more incremental
2021-05-08 20:00:15 +03:00
Aleksey Kladov
1d88a3f4a2
internal: disable broken incremental builds 😿
2021-05-08 13:36:06 +03:00
Jonas Schievink
976a3226fe
Don't store call-site text offsets in hygiene info
2021-05-06 19:59:54 +02:00
Lukas Wirth
cb863390f2
Handle self/super/crate in PathSegment as NameRef
2021-01-15 19:21:23 +01:00
Aleksey Kladov
4c4e54ac8a
prepare to publish el libro de arena
2021-01-14 19:06:02 +03:00
Jonas Schievink
c1cb595382
Move to upstream macro_rules!
model
2020-12-15 15:37:37 +01:00
Florian Diebold
bca51e3519
Upgrade Chalk to 0.36
...
Quite a few changes, because Chalk got rid of the `ApplicationTy` nesting.
2020-10-30 18:57:55 +01:00
Laurențiu Nicola
cca330ef53
Remove release build overrides
2020-10-09 19:55:30 +03:00
Aleksey Kladov
bbb1c617b9
Speedup tests in dev mode
2020-08-18 17:44:51 +02:00
Veetaha
f92bfb5807
Gzip artifacts
...
Co-authored-by: bjorn3 <bjorn3@users.noreply.github.com>
Override miniz_oxide to build it with optimizations
Building this crate with optimizations decreases the gzipping
part of `cargo xtask dist` from `30-40s` down to `3s`,
the overhead for `rustc` to apply optimizations is miserable on this background
2020-07-07 23:30:11 +03:00
Laurențiu Nicola
ddcd98f604
Disable optimizations for tracing-attributes
2020-07-01 20:51:09 +03:00
Florian Diebold
c8a4bb1445
Upgrade Chalk
...
Chalk newly added TypeName::Never and Array; I implemented the conversion for
Never, but not Array since that expects a const argument.
2020-05-27 21:07:08 +02:00
Florian Diebold
3484d727c3
Extend analysis-stats a bit
...
This adds some tools helpful when debugging nondeterminism in analysis-stats:
- a `--randomize` option that analyses everything in random order
- a `-vv` option that prints even more detail
Also add a debug log if Chalk fuel is exhausted (which would be a source of
nondeterminism, but didn't happen in my tests).
I found one source of nondeterminism (rust-lang/chalk#331 ), but there are still
other cases remaining.
2020-02-15 18:04:01 +01:00
Laurențiu Nicola
f83154d4bf
Disable optimizations for some build-time crates
2020-01-31 21:49:44 +02:00
Aleksey Kladov
dde64aa744
Stick to defaulter release profile
2020-01-11 22:15:27 +01:00
Giles Cope
42942fc662
Reducing binary size and optimising a bit more.
2020-01-09 22:11:25 +00:00
Aleksey Kladov
193b1a7437
⬆️ rowan
2019-12-04 17:15:55 +01:00
Aleksey Kladov
b8b81846ca
Speedup builds for users
2019-11-15 21:18:44 +03:00
Aleksey Kladov
9a04426617
Disable debuginfo in dev builds
...
Hopefully, this makes printf debugging faster!
2019-11-11 10:11:46 +03:00
Aleksey Kladov
5376c769f0
rename tools -> xtask
2019-10-17 23:14:05 +03:00
Aleksey Kladov
7b15c4f7ae
WIP: move to xtasks
2019-10-17 22:54:38 +03:00
Aleksey Kladov
9a7c8d4b0f
scale website back
...
We have dedicated https://rust-analyzer.github.io/ now
2019-10-17 22:37:01 +03:00
Aleksey Kladov
e4eb970273
save disk space
2019-10-11 11:06:28 +03:00
Aleksey Kladov
798dc2ca80
start GitHub pages
2019-09-02 14:42:23 +03:00
Aleksey Kladov
40c10932cd
smaller debuginfo in release
2019-07-22 18:30:39 +03:00
Aleksey Kladov
9d7cb8ce80
⬆️ salsa
2019-06-07 09:44:28 +03:00
Aleksey Kladov
b3b096234a
switch to panic-safe salsa
2019-06-04 13:30:07 +03:00
Aleksey Kladov
54f77ad68d
switch to upstream salsa
2019-05-30 13:05:09 +03:00
Aleksey Kladov
18ed351747
⬆️ parking_lot
2019-05-30 12:02:30 +03:00
Aleksey Kladov
47672726d8
⬆️ lsp
2019-04-21 15:17:22 +03:00
Aleksey Kladov
fa12ed2b8f
switch to official extend selection API
2019-04-21 12:13:48 +03:00
Aleksey Kladov
dd45697e53
update salsa
2019-01-15 15:06:45 +03:00
Aleksey Kladov
db43b44f71
update cargo_metadata
2019-01-14 16:15:25 +03:00
Aleksey Kladov
64455ad701
use unwinding for cancelation
2019-01-10 12:20:32 +03:00
Aleksey Kladov
cf20ecae9f
unwind on cancel
2019-01-09 22:51:05 +03:00
Georg Semmler
e7bf5dc940
Fix rev to deleted branch
2019-01-09 16:33:45 +01:00
Aleksey Kladov
141ab166cf
switch to newer cargo-metadata
2019-01-08 19:36:09 +03:00
Aleksey Kladov
6c8e54aaee
⬆️ salsa
2019-01-04 22:31:13 +03:00
Aleksey Kladov
c97bb8f7e4
fix the cancellation bug
2018-12-30 11:09:17 +03:00
Aleksey Kladov
13631a2955
⬆️ salsa
2018-12-28 19:10:31 +03:00
Aleksey Kladov
532e68692d
fix cancelation?
2018-12-27 21:02:55 +03:00
Aleksey Kladov
724862a1a4
workaround salsa/parking-log bug
...
https://github.com/salsa-rs/salsa/issues/99
https://github.com/Amanieu/parking_lot/issues/101
2018-12-22 16:45:57 +03:00
Aleksey Kladov
7a6f5164f3
enable incremental release
2018-12-20 12:15:38 +03:00
Aleksey Kladov
ca7e5905c1
more crate boilerplate
2018-12-09 13:33:16 +03:00
Aleksey Kladov
a261a1836b
Move to rowan for syntax tree impl
2018-10-02 17:09:23 +03:00
Aleksey Kladov
c631b585a7
matching brace
2018-08-16 00:23:22 +03:00
Aleksey Kladov
18486a02fa
indexing infra
2018-08-13 13:46:05 +03:00
Aleksey Kladov
7c67612b8a
organizize
2018-08-10 22:33:29 +03:00
Aleksey Kladov
2e165ae82e
logging
2018-08-10 17:49:45 +03:00
Aleksey Kladov
d7c5a6f308
Start lang server
2018-08-10 15:07:43 +03:00
Aleksey Kladov
a5dc5f1b5c
Improve tree building
2018-08-08 21:14:18 +03:00
Aleksey Kladov
7264c3294b
finer concurrency
2018-08-01 22:07:09 +03:00
Aleksey Kladov
1954df6336
drop the bombs
2018-08-01 14:55:37 +03:00
Aleksey Kladov
966e9db2b8
Extract libeditor
2018-08-01 10:40:07 +03:00
Aleksey Kladov
5d8cef4c0e
update text-unit
2018-07-31 21:43:28 +03:00
Aleksey Kladov
aea86d154e
stackless traversal
2018-07-30 23:45:10 +03:00
Aleksey Kladov
3b6a6f6673
Add render test functionality
2018-07-30 16:16:58 +03:00
Aleksey Kladov
8d9961b753
Migrate to text-unit
2018-07-28 13:07:10 +03:00
Aleksey Kladov
bb381a7ff7
Move tools to a separate package
2018-02-03 12:51:06 +03:00
Christopher Durham
4de3c97b2a
Enforce rustfmt format
2018-01-27 18:31:23 -05:00
Aleksey Kladov
4c10c31be3
D: start documenting stuff
2018-01-10 21:58:38 +03:00
Aleksey Kladov
9e4052cc2e
Test utils
2018-01-07 14:56:08 +03:00
Aleksey Kladov
171baf4c48
Simple identifier lexer
2017-12-29 23:33:04 +03:00