Commit Graph

2598 Commits

Author SHA1 Message Date
Nick Rolfe
72b4e67477 Java/Ruby/Rust/QL: add overlayChangedFiles relation to dbscheme 2025-07-03 12:44:09 +01:00
Geoffrey White
1289f1483f Merge pull request #19961 from geoffw0/locspeed
Rust: Speed up use of Location.contains
2025-07-03 10:16:39 +01:00
Paolo Tranquilli
064708620f Merge pull request #19861 from github/redsun82/rust-reorg-ast-generator
Rust: refactor `ast-generator` to have all customization at the start
2025-07-03 10:09:17 +02:00
Geoffrey White
9728dbb247 Rust: Speed up use of Location.contains / isFromMacroExpansion. 2025-07-02 21:16:21 +01:00
Paolo Tranquilli
c10d89927d Merge pull request #19945 from github/redsun82/fix-expansion-in-lib
Rust: fix macro expansion in library code
2025-07-02 18:11:36 +02:00
Paolo Tranquilli
c70198e4e4 Rust: change dummy macro call expansion 2025-07-02 12:25:10 +02:00
Paolo Tranquilli
bf09c92528 Rust: add location to dummy MacroCalls in library mode 2025-07-02 10:33:53 +02:00
Paolo Tranquilli
63ccbec933 Rust: accept language test changes 2025-07-02 10:19:52 +02:00
Paolo Tranquilli
223f0c8684 Rust: fix macro expansion in library code
There was a mismatch between a `self.macro_context_level += 1` and the
corresponding `self.macro_context_level -= 1`, which resulted in an
`usize` underflow (panic in debug mode, wrong behaviour in release
mode).

This fixes it and adds a relevant assertion and test. In order to
properly test library mode extraction, a special option enforcing that
on source code as well is added.
2025-07-01 17:31:26 +02:00
Tom Hvitved
add2e0fd9d Rust: Extend methodResolutionDependsOnArgument to parameterized implementations 2025-07-01 14:22:06 +02:00
Tom Hvitved
961e6201ea Rust: Add more type inference tests 2025-07-01 14:22:04 +02:00
Tom Hvitved
b813010b75 Merge pull request #19903 from hvitved/rust/type-inference-overlap2
Rust: Apply inherent method prioritization inside type inference loop
2025-07-01 14:21:15 +02:00
Tom Hvitved
072339137a Rust: Update expected test output 2025-07-01 10:34:16 +02:00
Tom Hvitved
bd1f46b75c Rust: Assume prelude is always available in path resolution 2025-07-01 10:18:02 +02:00
Tom Hvitved
e88d7baa7d Rust: Apply inherent method prioritization inside type inference loop 2025-07-01 10:17:26 +02:00
Tom Hvitved
e5f0ef6ae8 Rust: Add more type inference tests 2025-07-01 10:17:25 +02:00
Paolo Tranquilli
e7959dfde6 Rust: recreate wrongfully deleted upgrade script directory 2025-06-30 15:38:42 +02:00
Paolo Tranquilli
9e4cdbc53f Merge branch 'main' into redsun82/rust-item-reorg 2025-06-30 14:56:23 +02:00
Paolo Tranquilli
15aa0bbb34 Merge pull request #19866 from github/redsun82/codegen-new-parent-child
Codegen: improve implementation of generated parent/child relationship
2025-06-30 14:52:24 +02:00
Tom Hvitved
57661df306 Rust: Fix variable capture inconsistencies 2025-06-30 10:19:42 +02:00
Paolo Tranquilli
9cf037fdb9 Merge branch 'main' into redsun82/codegen-new-parent-child 2025-06-30 10:17:56 +02:00
Tom Hvitved
632cde689b Merge pull request #19702 from geoffw0/lifetime
Rust: New query rust/access-after-lifetime-ended
2025-06-30 10:00:11 +02:00
Tom Hvitved
3fb8758ae1 Merge pull request #19886 from hvitved/rust/dataflow-caching
Rust: Cache `DataFlow::Node.{toString,getLocation}`
2025-06-27 10:33:50 +02:00
Tom Hvitved
db0fc7be5d Merge pull request #19881 from hvitved/rust/dataflow-traits
Rust: Data flow through trait methods
2025-06-27 08:55:48 +02:00
Paolo Tranquilli
4799861225 Merge branch 'redsun82/codegen-new-parent-child' into redsun82/rust-item-reorg 2025-06-26 16:29:42 +02:00
Tom Hvitved
9a48459951 Add change note 2025-06-26 15:14:08 +02:00
Nick Rolfe
5a176d6fbd Merge pull request #19878 from github/nickrolfe/ql-overlay
Ruby/Rust/QL: simplify generation of overlay-related tables/predicates
2025-06-26 08:10:10 -04:00
Tom Hvitved
b70aa804e5 Rust: Cache DataFlow::Node.{toString,getLocation} 2025-06-26 13:49:37 +02:00
Paolo Tranquilli
de72e68d2c Merge branch 'main' into redsun82/codegen-new-parent-child 2025-06-26 12:14:53 +02:00
Paolo Tranquilli
afc78ced50 Merge pull request #19874 from github/redsun82/codegen-use-one-test-file
Codegen: use one generated test file per directory
2025-06-26 11:59:40 +02:00
Paolo Tranquilli
9a8ef3acf7 Merge branch 'main' into redsun82/codegen-new-parent-child 2025-06-26 09:30:41 +02:00
Tom Hvitved
8c240399c1 Rust: Apply MaD trait models to implementations 2025-06-25 21:32:24 +02:00
Tom Hvitved
3e54c61f52 Rust: Add MaD trait tests 2025-06-25 21:32:22 +02:00
Tom Hvitved
5e265b10c7 Rust: Trait call dispatch in dataflow 2025-06-25 21:32:21 +02:00
Tom Hvitved
a4ed5da50b Rust: Add data flow tests involving traits 2025-06-25 21:32:19 +02:00
Paolo Tranquilli
6803bf3861 Merge pull request #19851 from github/redsun82/rust-emission-trait
Rust: refactor `pre_emit!` and `post_emit!` to a trait
2025-06-25 19:22:29 +02:00
Nick Rolfe
57b866bbe1 Ruby/Rust/QL: move databaseMetadata to prefix.dbscheme
This has no effect on ruby.dbscheme, and adds the relation to
ql.dbscheme and rust.dbscheme. (The relation will be required for
overlay support).
2025-06-25 15:35:08 +01:00
Geoffrey White
006f0e8fcf Merge branch 'main' into lifetime 2025-06-25 14:17:00 +01:00
Paolo Tranquilli
6a0140d3c9 Rust: fix Const test 2025-06-25 14:42:03 +02:00
Paolo Tranquilli
e4056c0a11 Rust: add change note 2025-06-25 14:39:22 +02:00
Paolo Tranquilli
78ecf1814e Rust: add upgrade/downgrade scripts 2025-06-25 14:36:29 +02:00
Paolo Tranquilli
5d3bdb955c Merge branch 'main' into redsun82/rust-item-reorg 2025-06-25 14:34:48 +02:00
Paolo Tranquilli
ab2e7082f3 Merge branch 'main' into redsun82/codegen-use-one-test-file 2025-06-25 14:31:17 +02:00
Paolo Tranquilli
fa006e3ea5 Rust: fix test 2025-06-25 14:17:14 +02:00
Paolo Tranquilli
1f66f902e5 Rust: fix parallel execution of tests using the nightly toolchain
Since we dropped checked in toolchain files for tests requiring nightly,
the `setup.sh` script was not doing its job of setting up the toolchains
and the `rust-src` component, occasionally leading to test failures.
2025-06-25 14:13:43 +02:00
Paolo Tranquilli
355fd85c23 Codegen: remove unneeded has|getNumberOf in instance tests 2025-06-25 12:02:13 +02:00
Paolo Tranquilli
99eaaaa830 Rust: fix QL compilation error 2025-06-25 11:50:49 +02:00
Nick Rolfe
c6ff07ad5a Merge branch 'main' into nickrolfe/ruby-overlay-extraction 2025-06-25 05:46:26 -04:00
Paolo Tranquilli
6bbf1e3bc1 Codegen: use one generated test file per directory
This collapses all generated test QL sources into a single one per
directory, using query predicates to run the different tests.

This should improve the time required to run generated tests.
2025-06-25 11:44:54 +02:00
Paolo Tranquilli
bcca47c873 Rust: make AssocItem and ExternItem subclasses of Item 2025-06-25 10:25:24 +02:00