Commit Graph

2829 Commits

Author SHA1 Message Date
Geoffrey White
3e11dbded0 Rust: Accept test changes. 2025-07-02 09:08:15 +01:00
Geoffrey White
7ef5586cc7 Rust: Translate more legacy models -> new models (mostly guesswork for these last few cases). 2025-07-01 17:15:26 +01:00
Geoffrey White
e56b9debf8 Rust: Fix mistake. 2025-07-01 16:55:06 +01:00
Geoffrey White
3027f75617 Rust: Translate more legacy models -> new models (from data). 2025-07-01 16:37:14 +01: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
Geoffrey White
cb6640474e Rust: Translate more legacy models -> new models (from data + manual extrapolation). 2025-07-01 13:21:52 +01: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
Geoffrey White
59b74871c2 Rust: Accept regressions. 2025-06-30 21:13:44 +01:00
Geoffrey White
91072477b7 Rust: Trivial test changes. 2025-06-30 20:15:18 +01:00
Geoffrey White
8f56f8d5a0 Rust: Translate some legacy models -> new models. 2025-06-30 17:47:59 +01: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