Taus
2db6ff4f63
Support separate output node types in extractor generator
...
Language and LanguageSpec gain optional output_node_types field.
When set, the generator produces dbscheme/QL from the output types
and the extractor validates TRAP against them.
All existing extractors pass None (no behavior change).
Ruby extract() calls gain vec![] for the new rules parameter.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:37:21 +00:00
Taus
34e4144a14
Integrate yeast with shared tree-sitter extractor
...
extract() gains a rules parameter. When empty, uses tree-sitter native
traversal (no behavior change). When non-empty, runs yeast desugaring
and extracts via traverse_yeast.
Adds AstNode trait abstracting over tree_sitter::Node and yeast::Node,
with minimal changes to existing Visitor methods (Node -> &N in 6
signatures). Falls back to un-desugared AST on error.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:37:21 +00:00
Taus
d6234f2ccd
Add yeast documentation
...
Covers architecture, query language, template language (tree!/trees!/rule!),
capture semantics, fresh identifiers, and extractor integration.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:37:21 +00:00
Taus
ed60f05f2e
Add AST dumper for human-readable tree output
...
Produces indented text showing node kinds, named fields, and leaf
content. Unnamed tokens are hidden unless inside a named field.
Used by tests for readable assertions.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:37:21 +00:00
Taus
e6026a4cba
Add YAML node-types format and converter
...
Human-friendly YAML alternative to tree-sitter node-types.json with
three sections: supertypes, named, unnamed. Supports bidirectional
conversion and building Schema objects from YAML.
Includes CLI binary (node_types_yaml) and documentation.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:37:21 +00:00
Taus
3b20424bbc
Add yeast test suite
...
12 tests covering parsing, queries, tree building, desugaring rules,
cursor navigation, and the shorthand rule! syntax.
Tests use a custom output node-types.yml with named fields for all
children (parameter, stmt, index), loaded via schema_from_yaml_with_language.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:37:21 +00:00
Taus
356fd97b4e
Add yeast crate: AST desugaring framework with proc-macro DSL
...
YEAST (Yet another Elaborator for Abstract Syntax Trees) is a framework
for transforming tree-sitter parse trees before CodeQL extraction.
Core components:
- shared/yeast/ — Ast, Node, Schema, query matching engine, captures,
FreshScope, BuildCtx
- shared/yeast-macros/ — proc macros: query!, tree!, trees!, rule!
The query language is inspired by tree-sitter queries:
(assignment left: (_) @lhs right: (_) @rhs)
Templates support embedded Rust ({expr}), splicing ({..expr}),
computed literals (#{expr}), fresh identifiers ($name), and captures (@name).
The rule! macro combines query and transform:
rule!((for pattern: (_) @pat ...) => (call receiver: {val} ...))
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-05-05 08:33:51 +00:00
Tom Hvitved
4c1461ad5b
Merge pull request #21786 from hvitved/inline-test-ignore-tags
...
Inline test expectations: Rename `tagIsOptional` to `tagIsIgnored`
2026-05-05 09:01:58 +02:00
Anders Schack-Mulligen
b67ebd11e0
Merge pull request #21762 from aschackmull/csharp/ssa2
...
C#: Replace SSA classes with shared code.
2026-05-04 14:21:01 +02:00
Anders Schack-Mulligen
02f5fe9a42
C#: Address some review comments.
2026-05-04 11:49:24 +02:00
Tom Hvitved
04a8ef0f81
Merge pull request #21777 from hvitved/swift/type-inference-tests
...
Swift: Add type inference tests
2026-05-04 11:45:32 +02:00
Anders Schack-Mulligen
f663eccf66
Merge pull request #21781 from aschackmull/java/rm-deprecated
...
Java: Delete old deprecated code.
2026-05-04 11:35:09 +02:00
Tom Hvitved
80ccdcc696
Inline test expectations: Rename tagIsOptional to tagIsIgnored
2026-05-04 11:21:33 +02:00
Tom Hvitved
224934645e
Swift: Add type inference tests for key path expressions
2026-05-04 11:00:38 +02:00
Tom Hvitved
038f9a2c2f
Swift: Split type inference tests into multiple files
2026-05-04 10:55:06 +02:00
Anders Schack-Mulligen
c7904b12c8
Java: Fix reference in deprecated code.
2026-05-04 10:52:27 +02:00
Anders Schack-Mulligen
17fded4aa5
Java: Delete old deprecated code.
2026-05-04 10:52:27 +02:00
Paolo Tranquilli
77cdafd55e
Merge pull request #21785 from github/codeql-spark-run-25308467256
...
Update changelog documentation site for codeql-cli-2.25.3
2026-05-04 10:42:33 +02:00
Paolo Tranquilli
1c20e78593
Docs: replace build mode: none with build-mode: none
2026-05-04 10:26:50 +02:00
github-actions[bot]
5546025f12
update codeql documentation
2026-05-04 08:19:28 +00:00
Tom Hvitved
1f3a8319ed
Update csharp/ql/lib/semmle/code/csharp/dataflow/internal/SsaImpl.qll
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-05-04 09:41:00 +02:00
Anders Schack-Mulligen
21a0d1444f
C#: Add change note.
2026-05-01 13:13:40 +02:00
Anders Schack-Mulligen
e012981e5b
C#: Accept test changes for out/ref SSA location changes.
2026-05-01 10:32:18 +02:00
Anders Schack-Mulligen
351e9cc914
C#: Accept test changes.
2026-05-01 10:28:15 +02:00
Anders Schack-Mulligen
439a67a3fe
C#: Fix toString for capture definitions.
2026-05-01 10:26:50 +02:00
Anders Schack-Mulligen
5fbba0e9fe
C#: Delete ParameterDefaultDefinition.
2026-05-01 10:24:23 +02:00
Anders Schack-Mulligen
d3df5ce110
C#: Deprecate ParameterDefinition in favour of SsaParameterInit.
2026-05-01 10:22:53 +02:00
Mathias Vorreiter Pedersen
154d213fd2
Merge pull request #21768 from github/speed-up-unchecked-leap-year-after-modification
...
C++: Speed up `cpp/leap-year/unchecked-after-arithmetic-year-modification`
2026-04-30 16:06:17 +01:00
Michael Nebel
4446f42846
Merge pull request #21684 from michaelnebel/csharp/improve-reachability-checks
...
C#: Improve BMN feed checking & handling.
2026-04-30 15:53:52 +02:00
Owen Mansel-Chan
87c35e6401
Merge pull request #21654 from MarkLee131/fix/sensitive-log-hash-sanitizer
...
Java: treat hash/encrypt/digest methods as sensitive-log sanitizers
2026-04-30 13:21:03 +01:00
Anders Schack-Mulligen
ff8ab191d1
C#: Drop caching for deprecated predicates.
2026-04-30 13:58:55 +02:00
Anders Schack-Mulligen
77807c83f8
C#: Exclude entry definitions from qualifier definitions.
2026-04-30 13:56:21 +02:00
Anders Schack-Mulligen
e0421dbf53
C#: Reinstate toString for SSA data flow nodes.
2026-04-30 13:56:16 +02:00
Anders Schack-Mulligen
bedadc9f04
C#: Deprecate some SSA internals.
2026-04-30 13:54:21 +02:00
Anders Schack-Mulligen
55b83ca22a
C#: Deprecate Ssa::Definition in favour of SsaDefinition.
2026-04-30 13:54:20 +02:00
Anders Schack-Mulligen
de96b5acfd
C#: Deprecate Ssa::ImplicitDefinition.
2026-04-30 13:54:20 +02:00
Anders Schack-Mulligen
80d5e27b46
C#: Deprecate Ssa::ImplicitEntryDefinition.
2026-04-30 13:54:15 +02:00
Anders Schack-Mulligen
65f647a8c0
C#: Replace Ssa::UncertainDefinition with SsaUncertainWrite.
2026-04-30 13:49:23 +02:00
Anders Schack-Mulligen
9a7eb8dfb9
C#: Replace Ssa::PhiNode with SsaPhiDefinition.
2026-04-30 13:49:23 +02:00
Anders Schack-Mulligen
6ecdf3fe32
C#: Replace Ssa::ImplicitParameterDefinition with SsaParameterInit.
2026-04-30 13:49:19 +02:00
Tom Hvitved
4042bbec5b
Swift: Add type inference tests
2026-04-30 13:45:57 +02:00
Anders Schack-Mulligen
31e06bc0a9
C#: Remove SSA location overrides.
2026-04-30 12:56:58 +02:00
Anders Schack-Mulligen
dc34b10cb6
C#: Replace Ssa::ExplicitDefinition with SsaExplicitWrite.
2026-04-30 12:52:51 +02:00
Anders Schack-Mulligen
a6c7f27fc1
C#: Deprecate Definition.getEnclosingCallable.
2026-04-30 12:46:28 +02:00
Anders Schack-Mulligen
ed6cdfc227
C#: Move isLiveOutRefParameterDefinition to top-level.
2026-04-30 12:46:27 +02:00
Anders Schack-Mulligen
9345c44e0f
C#: Delete test for Definition.getElement.
2026-04-30 12:46:23 +02:00
Anders Schack-Mulligen
c88a22ccf8
C#: Replace most uses of Ssa::Definition with SsaDefinition.
2026-04-30 12:45:25 +02:00
Anders Schack-Mulligen
2545f06b52
C#: Deprecate member predicate Definition.getAReadAtNode.
2026-04-30 12:42:24 +02:00
Anders Schack-Mulligen
83c7a33e53
C#: Deprecate member predicates Definition.getAFirstRead and getAFirstReadAtNode.
2026-04-30 12:42:21 +02:00
Anders Schack-Mulligen
fb438bf512
C#: Remove references to getAFirstReadAtNode.
2026-04-30 11:55:55 +02:00