Paolo Tranquilli
c0e55a06e7
Merge branch 'main' into redsun82/rust-perf-measures
2024-12-02 15:20:42 +01:00
Paolo Tranquilli
b57a37479b
Rust: make File usable in codegen
2024-12-02 15:15:46 +01:00
Paolo Tranquilli
e7ffddd52c
Rust: rename all *Type to *TypeRef
2024-12-02 10:13:05 +01:00
Paolo Tranquilli
31775e21b7
Merge branch 'main' into redsun82/rust-less-canonical-paths
2024-12-02 08:27:05 +01:00
Paolo Tranquilli
9486e8b734
Rust: elaborate on path_to_file_id comment
...
This is a follow up to https://github.com/github/codeql/pull/18167 , addressing a
review comment from @paldepind.
2024-12-02 08:16:52 +01:00
Paolo Tranquilli
488903280f
Rust: tentative windows fix
2024-11-29 17:23:30 +01:00
Paolo Tranquilli
c46f44da5f
Rust: fix QL compilation errors
2024-11-29 15:55:51 +01:00
Paolo Tranquilli
9cf2420c3b
Rust: restrict canonical path calculations
2024-11-29 14:43:51 +01:00
Paolo Tranquilli
4bcc4254c6
Merge branch 'main' into redsun82/rust-perf-measures
2024-11-29 11:59:22 +01:00
Paolo Tranquilli
a8188598b0
Merge branch 'main' into redsun82/rust-canonical-enum
2024-11-27 15:01:47 +01:00
Paolo Tranquilli
4e7115538b
Rust: move steps breakdown from JSON diagnostics to the DB
2024-11-27 14:55:46 +01:00
Paolo Tranquilli
27738eaacc
Rust: reorganize perf diagnostics
2024-11-27 12:05:06 +01:00
Paolo Tranquilli
24eb65692f
Rust: add some performance diagnostics
...
This outputs some duration counts for various parts of the extraction
process in the database in the form of telemetry diagnostics.
The diagnostics format was preferred to putting things in the relational
database as that will scale better to code scanning and is more flexible
as for the data we can put into it without passing through the dbscheme.
Also, although it's not the case yet, it will be possible to output
diagnostics even if creation of the database fails.
2024-11-26 16:35:38 +01:00
Simon Friis Vindum
d30f3e2822
Rust: Renamed expr on CallExpr and LetExpr
2024-11-26 15:22:14 +01:00
Paolo Tranquilli
8a01161d4a
Rust: rename MatchExpr.expr to scrutinee in all layers
...
This doesn't require `ql.name` and is simpler while we don't have
to write upgrade scripts. The `ql.name` mechanism might get useful
once we do have to write upgrade scripts, as that doesn't change the
dbscheme.
2024-11-26 10:42:13 +01:00
Paolo Tranquilli
adafe3e5b0
Merge branch 'main' into redsun82/rust-canonical-enum
2024-11-25 15:28:45 +01:00
Simon Friis Vindum
0d02126f12
Generate ParamBase, superclass of Param and SelfParam
2024-11-25 14:07:50 +01:00
Paolo Tranquilli
f3cd61f043
Rust: add extended canonical paths on enum variants
2024-11-22 17:00:57 +01:00
Paolo Tranquilli
b4af5a61d1
Rust: more advanced toString
2024-11-20 16:21:23 +01:00
Paolo Tranquilli
99494dd540
Merge pull request #18012 from github/revert-18011-revert-17937-redsun82/rust-cargo-options
...
Revert "Revert "Rust: allow to specify more cargo configuration options""
2024-11-19 09:03:52 +01:00
Paolo Tranquilli
8377ee545f
Rust: fix reading lists from options.yml
2024-11-18 17:22:23 +01:00
Paolo Tranquilli
abd73e16d4
Revert "Revert "Rust: allow to specify more cargo configuration options""
2024-11-18 15:52:03 +01:00
Paolo Tranquilli
04072591c4
Revert "Rust: allow to specify more cargo configuration options"
2024-11-18 15:36:06 +01:00
Paolo Tranquilli
fa52d03194
Merge pull request #17937 from github/redsun82/rust-cargo-options
...
Rust: allow to specify more cargo configuration options
2024-11-18 13:24:39 +01:00
Paolo Tranquilli
8137419d93
Rust: only accept options.yml in QL tests
2024-11-18 10:40:29 +01:00
Paolo Tranquilli
75375be7ac
Rust: add optional dependencies to ql tests
...
Also accept `options.yml` and `options.yaml` files as well for test options,
to get YAML syntax highlighting. In a follow up PR we might make the extension
mandatory.
2024-11-18 09:42:01 +01:00
Paolo Tranquilli
94ba6473dd
Merge branch 'main' into redsun82/rust-cargo-options
2024-11-08 17:54:59 +01:00
Paolo Tranquilli
f77f2b7ff0
Rust: turn off the test cfg by default
2024-11-08 17:07:03 +01:00
Paolo Tranquilli
9cea631399
Merge pull request #17931 from github/redsun82/rust-target-dir
...
Rust: allow to specify the target directory
2024-11-08 13:34:03 +01:00
Paolo Tranquilli
26839f5e15
Merge pull request #17882 from github/redsun82/rust-resolve
...
Rust: extract some resolved paths
2024-11-08 13:33:41 +01:00
Paolo Tranquilli
be45e3deed
Rust: allow to specify more cargo configuration options
...
This allows to tweak via extractor options some aspects of the cargo
configuration:
* the target architecture
* features (including `*` for all, which we must understand whether to
set by default)
* cfg overrides
Integration tests will be added in a follow-up commit.
2024-11-08 12:23:16 +01:00
Paolo Tranquilli
083394073a
Rust: rename target_dir to cargo_target_dir, add to extraction options
...
Also removed the now unused `extract_dependencies` one.
2024-11-08 09:53:50 +01:00
Paolo Tranquilli
4f6fda0100
Rust: allow to specify the target directory
2024-11-07 12:45:20 +01:00
Paolo Tranquilli
64d522e447
Rust: address review
2024-11-07 09:39:44 +01:00
Paolo Tranquilli
200715773f
Rust: fix no_semantics_reason
2024-11-06 17:19:06 +01:00
Paolo Tranquilli
2987743e44
Rust: exclude uncompiled files from semantics and surface semanticless reason
2024-11-06 15:22:28 +01:00
Paolo Tranquilli
6848a22c65
Rust: fix semantic merge conflict about semantics
2024-11-04 10:04:40 +01:00
Paolo Tranquilli
bde517fcb1
Merge pull request #17849 from github/aibaars/single-semantics
...
Rust: try to speed things up a bit
2024-11-04 09:24:26 +01:00
Paolo Tranquilli
cee2ed0ec4
Rust: extract some resolved paths
2024-10-31 14:19:15 +01:00
Arthur Baars
0e511d640b
Rust: avoid panics
...
If:
* the text for a file_id is not found (likely non-utf data in file)
* path does not appear in Vfs, in which case we fall back on loading the file from disk with no "semantics" available
2024-10-30 13:18:36 +01:00
Arthur Baars
c87f2c4eb1
Rust: remove unnecessary field
2024-10-28 18:56:20 +01:00
Arthur Baars
b6c26debef
Rust: create single Semantics object for each workspace
2024-10-28 13:29:04 +01:00
Arthur Baars
57cdda3405
Rust: no longer reload files into the RootDatabase
...
Files were reloaded to handle cases were there was no content
for a file_id, causing a panic. Missing contents was caused by
files that did not contain valid UTF-8 data. These are skipped
by rust-analyzer when it is loading data into the RootDatabase.
2024-10-28 13:29:03 +01:00
Paolo Tranquilli
9c95a17882
Rust: add block ids to canonical paths, making them "extended"
2024-10-28 12:41:05 +01:00
Paolo Tranquilli
652e47177f
Rust: format
2024-10-25 17:44:16 +02:00
Paolo Tranquilli
9789059e9f
Rust: add more thourough canonical path testing
2024-10-25 16:58:05 +02:00
Paolo Tranquilli
194e0daa8c
Rust: add canonical_path and crate_origin to Item
2024-10-25 16:58:04 +02:00
Paolo Tranquilli
a760b89895
Rust: small tweaks
2024-10-25 14:13:27 +02:00
Paolo Tranquilli
5230b7b041
Rust: reduce log spam and skip debug diagnostics in the DB
2024-10-25 13:47:13 +02:00
Arthur Baars
9dc5e2fa36
Merge pull request #17791 from github/aibaars/rust-format-templates
...
Rust: parse formatting templates
2024-10-25 12:42:35 +02:00