Paolo Tranquilli
c9cff09f5d
Merge branch 'main' into redsun82/rust-pick-edition
2025-04-14 15:19:33 +02:00
Paolo Tranquilli
c245459e97
Merge pull request #19293 from github/redsun82/rust-fix-member-aggregation
...
Rust: fix workspace member aggregation when absolute path is a glob pattern
2025-04-14 12:08:43 +02:00
Geoffrey White
c821f27309
Merge branch 'main' into badalloc
2025-04-14 09:36:59 +01:00
Paolo Tranquilli
63e5f5a555
Rust: parametrize some integration tests on three editions
2025-04-11 16:50:23 +02:00
Paolo Tranquilli
868680f078
Merge branch 'redsun82/rust-fix-member-aggregation' into redsun82/rust-pick-edition
2025-04-11 16:46:16 +02:00
Paolo Tranquilli
60aa3a8d9d
Rust: fix workspace member aggregation when absolute path is a glob pattern
...
We were interpreting the absolute path of a workspace as a glob pattern,
which doesn't work if the path has some special characters (e.g. `[` or
`]`).
2025-04-11 16:41:51 +02:00
Mathias Vorreiter Pedersen
11aef7019e
Merge pull request #19273 from MathiasVP/prepare-shared-mad-generation-for-cpp
...
Shared: Prepare model generation for C++ adoption
2025-04-11 07:22:56 -07:00
Paolo Tranquilli
dbbd80f4dc
Rust: pick correct edition for the files
...
Previously we would unconditionally set the edition to the latest stable
according to rust-analyzer (2021 at the moment). Now we ask
rust-analyzer itself to pick the correct edition for the file.
2025-04-11 15:36:45 +02:00
Arthur Baars
85940484ab
Update rust/ql/test/setup.sh
2025-04-11 09:57:50 +02:00
Paolo Tranquilli
db1203acb3
Rust: reinstate adding rust-src for test toolchains
2025-04-11 08:57:14 +02:00
Paolo Tranquilli
becea89a47
Rust: refine ql/test/setup.sh
2025-04-11 08:26:48 +02:00
Tom Hvitved
7ed8a85e08
Merge pull request #19246 from hvitved/rust/cache-tweaks
2025-04-10 19:02:25 +02:00
Mathias Vorreiter Pedersen
6c348b5855
Rust: Fixup MaD input.
2025-04-10 14:01:20 +01:00
Tom Hvitved
0e31bf1e7b
Merge pull request #19265 from hvitved/rust/crate-graph-self-crate-ref
2025-04-09 22:54:53 +02:00
Tom Hvitved
1ba06ab3bf
Merge pull request #19216 from hvitved/rust/path-resolution-path-attr
...
Rust: Handle path attributes in path resolution
2025-04-09 18:57:56 +02:00
Tom Hvitved
52401aaa73
Address review comments
2025-04-09 17:19:25 +02:00
Tom Hvitved
fbab715cb6
Rust: Allow for crate self-references in crate graph paths
2025-04-09 15:21:34 +02:00
Tom Hvitved
9323f1aaf0
Merge pull request #19250 from hvitved/rust/fix-bad-joins
...
Rust: Fix bad joins
2025-04-09 13:36:01 +02:00
Paolo Tranquilli
25bd0c3b21
Rust: add test setup script
2025-04-08 17:28:57 +02:00
Simon Friis Vindum
9dc008b9f4
Merge pull request #19214 from paldepind/rust-ti-associated
...
Rust: Associated types
2025-04-08 13:46:36 +02:00
Tom Hvitved
95add2f60b
Rust: Fix bad join in getAPrivateVisibleModule
...
Before
```
Pipeline standard for PathResolution::getAPrivateVisibleModule/1#3829a5ee@822d5hwq was evaluated in 24 iterations totaling 16ms (delta sizes total: 4843).
105047 ~63652% {2} r1 = SCAN `PathResolution::resolvePathPrivate/3#56db2cdf#reorder_1_2_0_3#prev_delta` OUTPUT In.0, In.0
69 ~0% {2} r2 = JOIN `#PathResolution::ItemNode.getImmediateParentModule/0#dispred#57c4c6d5Plus#bf#reorder_1_0#prev_delta` WITH `PathResolution::resolvePathPrivate/3#56db2cdf#reorder_1_2_0_3#prev` ON FIRST 1 OUTPUT Lhs.0, Lhs.1
5766690 ~148309% {2} r3 = JOIN `PathResolution::resolvePathPrivate/3#56db2cdf#reorder_1_2_0_3#prev_delta` WITH `#PathResolution::ItemNode.getImmediateParentModule/0#dispred#57c4c6d5Plus#bf#reorder_1_0#prev` ON FIRST 1 OUTPUT Lhs.0, Rhs.1
5871806 ~143984% {2} r4 = r1 UNION r2 UNION r3
6859 ~148% {2} | AND NOT `PathResolution::getAPrivateVisibleModule/1#3829a5ee#prev`(FIRST 2)
return r4
```
After
```
Pipeline standard for PathResolution::getAPrivateVisibleModule/1#3829a5ee@5edefhwp was evaluated in 12 iterations totaling 0ms (delta sizes total: 3515).
339 ~1% {2} r1 = SCAN `PathResolution::isItemParent/1#d5e587d6#prev_delta` OUTPUT In.0, In.0
3130 ~0% {2} r2 = JOIN `PathResolution::isItemParent/1#d5e587d6#prev_delta` WITH `#PathResolution::ItemNode.getImmediateParentModule/0#dispred#57c4c6d5Plus#bf#reorder_1_0#prev` ON FIRST 1 OUTPUT Lhs.0, Rhs.1
46 ~0% {2} r3 = JOIN `#PathResolution::ItemNode.getImmediateParentModule/0#dispred#57c4c6d5Plus#bf#reorder_1_0#prev_delta` WITH `PathResolution::isItemParent/1#d5e587d6#prev` ON FIRST 1 OUTPUT Lhs.0, Lhs.1
3515 ~2% {2} r4 = r1 UNION r2 UNION r3
3515 ~2% {2} | AND NOT `PathResolution::getAPrivateVisibleModule/1#3829a5ee#prev`(FIRST 2)
return r4
```
2025-04-08 13:11:32 +02:00
Tom Hvitved
2e1b8b8b0e
Rust: Fix bad join in unqualifiedPathLookup
...
Before
```
Pipeline standard for PathResolution::unqualifiedPathLookup/2#6b171b76#reorder_2_0_1@822d53wq was evaluated in 61 iterations totaling 118ms (delta sizes total: 131072).
606491 ~0% {4} r1 = SCAN `PathResolution::getASuccessor/3#febac7bd#prev_delta` OUTPUT In.1, In.2, In.0, In.3
106457 ~1% {3} | JOIN WITH `PathResolution::unqualifiedPathLookup/4#e32cdfce_1230#join_rhs` ON FIRST 3 OUTPUT Lhs.3, Rhs.3, Lhs.1
606491 ~2% {4} r2 = SCAN `PathResolution::getASuccessor/3#febac7bd#prev_delta` OUTPUT In.0, In.2, In.3, In.1
19261 ~0% {4} r3 = JOIN r2 WITH `PathResolution::ModuleLikeNode.isRoot/0#dispred#21662e64` ON FIRST 1 OUTPUT Lhs.3, Lhs.0, Lhs.1, Lhs.2
42776643 ~1% {4} r4 = JOIN r2 WITH `doublyBoundedFastTC@PathResolution::hasChild/2#6b318d51#2@PathResolution::isRoot/1#a01ce5c3#1@PathResolution::hasCratePath/1#73ea688d#1` ON FIRST 1 OUTPUT Lhs.3, Rhs.1, Lhs.1, Lhs.2
42795904 ~1% {4} r5 = r3 UNION r4
24921 ~6% {3} | JOIN WITH `PathResolution::RelevantPath.isCratePath/2#e595e892_120#join_rhs` ON FIRST 2 OUTPUT Lhs.3, Rhs.2, Lhs.2
131378 ~2% {3} r6 = r1 UNION r5
131072 ~2% {3} | AND NOT `PathResolution::unqualifiedPathLookup/2#6b171b76#reorder_2_0_1#prev`(FIRST 3)
return r6
```
After
```
Pipeline standard for PathResolution::unqualifiedPathLookup/2#6b171b76#reorder_2_0_1@0553a4wi was evaluated in 66 iterations totaling 10ms (delta sizes total: 131072).
610251 ~0% {4} r1 = SCAN `PathResolution::getASuccessor/3#febac7bd#prev_delta` OUTPUT In.1, In.2, In.0, In.3
131378 ~0% {3} | JOIN WITH `PathResolution::unqualifiedPathLookup1/4#781de0cd_1230#join_rhs` ON FIRST 3 OUTPUT Lhs.3, Rhs.3, Lhs.1
131072 ~0% {3} | AND NOT `PathResolution::unqualifiedPathLookup/2#6b171b76#reorder_2_0_1#prev`(FIRST 3)
return r1
```
2025-04-08 13:10:52 +02:00
Geoffrey White
866fc6b320
Merge pull request #19235 from geoffw0/ssaconsistency
...
Rust: SSA inconsistency counts
2025-04-08 10:49:19 +01:00
Tom Hvitved
7459548118
Rust: Cache tweaks
2025-04-08 11:49:16 +02:00
Geoffrey White
10ad5780b5
Rust: Try a different toolchain version to fix the test in CI?
2025-04-08 10:21:40 +01:00
Geoffrey White
e2f63db96d
Merge branch 'main' into badalloc
2025-04-08 10:15:38 +01:00
Geoffrey White
fd3dcb2d00
Rust: More precise imports.
2025-04-08 09:30:14 +01:00
Geoffrey White
88439b42e6
Merge pull request #19095 from geoffw0/blockon
...
Rust: Model futures::executor::block_on.
2025-04-07 17:41:49 +01:00
Geoffrey White
ee54ba4c48
Rust: Autoformat.
2025-04-07 17:06:15 +01:00
Geoffrey White
9c1567375d
Shared: Implement getInconsistencyCounts for SSA.
2025-04-07 16:20:42 +01:00
Simon Friis Vindum
48e5b0a731
Merge branch 'main' into rust-ti-associated
2025-04-07 17:07:05 +02:00
Simon Friis Vindum
602e617bc6
Rust: Add type inference test for trait with multiple associated types
2025-04-07 17:02:51 +02:00
Simon Friis Vindum
8e76bb1a43
Rust: Minor changes based on PR review
2025-04-07 16:46:54 +02:00
Geoffrey White
41f54d836e
Rust: Tweak query description.
2025-04-07 14:33:31 +01:00
Geoffrey White
dad85854cd
Apply suggestions from code review
...
Co-authored-by: mc <42146119+mchammer01@users.noreply.github.com >
2025-04-07 14:27:12 +01:00
Tom Hvitved
13f4a6afa6
Rust: Handle path attributes in path resolution
2025-04-07 15:24:17 +02:00
Tom Hvitved
edb7aaabab
Rust: Add path attribute test
2025-04-07 15:23:27 +02:00
Simon Friis Vindum
74583e4fbf
Merge pull request #19227 from paldepind/rust-pr-self
...
Rust: Resolve `Self` path in trait type of implementation
2025-04-07 14:21:02 +02:00
Tom Hvitved
ca5cc8e405
Merge pull request #19220 from hvitved/rust/path-resolution-crate-fix
...
Rust: Minor path resolution fix for `($)crate` paths
2025-04-07 13:24:12 +02:00
Geoffrey White
2c2506c4f8
Rust: Add Rust SSA inconsistency infrastructure.
2025-04-07 12:16:45 +01:00
Simon Friis Vindum
3441af136c
Merge pull request #19146 from paldepind/rust-ti-alias
...
Rust: Implement support for inference of type aliases
2025-04-07 13:03:30 +02:00
Simon Friis Vindum
5dba2412b5
Rust: Fix annotation in comment
2025-04-07 12:53:13 +02:00
Simon Friis Vindum
acc565f84e
Rust: Refactor PathMention as suggested in review
2025-04-07 12:50:31 +02:00
Simon Friis Vindum
6cecf7e618
Rust: Resolve Self path in trait type of implementation
2025-04-07 11:55:03 +02:00
Simon Friis Vindum
5c2d6e3d0f
Rust: Add path resolution test for Self in trait implementation
2025-04-07 11:45:43 +02:00
Geoffrey White
893e42315e
Merge branch 'main' into badalloc
2025-04-07 09:33:23 +01:00
Geoffrey White
f292d04d7a
Merge branch 'main' into blockon
2025-04-07 09:03:55 +01:00
Geoffrey White
471f02cf3b
Merge branch 'main' into sinkstats
2025-04-04 22:28:30 +01:00
Geoffrey White
6ad7a950da
Merge branch 'main' into badalloc
2025-04-04 21:57:04 +01:00
Geoffrey White
c9939387f8
Rust: Turn on PrettyPrintModels for RegexInjection so we hopefully don't have to deal with test result changes there as often.
2025-04-04 21:47:22 +01:00