Commit Graph

88563 Commits

Author SHA1 Message Date
copilot-swe-agent[bot]
b43b4aca1c Simplify apple_support extension comments in MODULE.bazel 2026-07-14 14:18:02 +00:00
copilot-swe-agent[bot]
03aed00dd3 Clarify Swift toolchain hermeticity comment in MODULE.bazel 2026-07-14 14:15:00 +00:00
copilot-swe-agent[bot]
96cd3b534c Revert doc-comment reformatting in unified/swift-syntax-rs/build.rs 2026-07-14 14:01:09 +00:00
copilot-swe-agent[bot]
266eef5556 Address review comments on swift-syntax-rs macOS toolchain docs 2026-07-14 13:55:58 +00:00
copilot-swe-agent[bot]
f8a9b0d35b clean up added comments and revert cleanup edits to adapter.rs/swift.rs/SwiftSyntaxFFI.swift 2026-07-14 13:46:07 +00:00
copilot-swe-agent[bot]
284dcb35a6 Remove opt-in swift_macos config from .bazelrc 2026-07-14 13:34:17 +00:00
copilot-swe-agent[bot]
240267e644 swift-syntax-rs: declare macOS 10.15 platform for cargo build 2026-07-14 13:28:39 +00:00
copilot-swe-agent[bot]
f604997c04 bazel: load CcInfo from @rules_cc for Bazel 9 compatibility 2026-07-14 13:07:53 +00:00
copilot-swe-agent[bot]
5bee639c02 bazel: apply Xcode transition to swift_library only, drop Rust wrappers 2026-07-14 12:51:23 +00:00
copilot-swe-agent[bot]
a7dcd565d1 MODULE.bazel: update apple_support/local_config_* comments per review 2026-07-14 06:47:37 +00:00
copilot-swe-agent[bot]
720f41af9f bazel: scope Xcode flags to //unified/swift-syntax-rs via transition 2026-07-14 06:46:11 +00:00
copilot-swe-agent[bot]
26ec22130a bazel: auto-enable swift_macos on macOS so Swift builds work zero-config 2026-07-13 22:40:00 +00:00
copilot-swe-agent[bot]
45a42b0393 Revert swift.yml change: swift/ builds C++, not Swift code 2026-07-13 22:31:19 +00:00
copilot-swe-agent[bot]
32dcc0f418 bazel: scope Xcode-coupled flags to Swift builds via --config=swift_macos 2026-07-13 18:53:15 +00:00
copilot-swe-agent[bot]
a29be0b614 clean up wordy comments across macOS bring-up changes 2026-07-13 18:27:13 +00:00
copilot-swe-agent[bot]
de5c1f7f43 bazel: drop --swiftcopt/--host_swiftcopt flag aliases (no longer used) 2026-07-13 18:14:44 +00:00
copilot-swe-agent[bot]
86bcb720c9 bazel: drop swiftcopt -target workaround (obsoleted by apple_cc toolchain) 2026-07-13 18:08:06 +00:00
copilot-swe-agent[bot]
dca60ea74d bazel: use_repo(apple_cc_configure, "local_config_apple_cc_toolchains") 2026-07-13 17:58:59 +00:00
copilot-swe-agent[bot]
f4c41e4fd1 bazel: give apple_support cc toolchains priority on macOS 2026-07-13 17:55:31 +00:00
copilot-swe-agent[bot]
7c84693786 Wire up apple_support xcode_config so @system_sdk selects resolve on macOS 2026-07-13 17:42:56 +00:00
copilot-swe-agent[bot]
66071ddedd Use xcode_swift_toolchain on macOS instead of patched Unix toolchain 2026-07-13 17:24:00 +00:00
copilot-swe-agent[bot]
0122729a09 rules_swift patch: point macOS platform_lib_dir at usr/lib/swift/macosx
Swift.org macOS toolchains store their runtime libraries under
usr/lib/swift/macosx/ (Apple's SDK name), not usr/lib/swift/macos/
(the Bazel @platforms//os:macos name). rules_swift 4.0.0-rc4's
_swift_unix_linkopts_cc_info uses the latter, causing -L to point at
a non-existent directory and ld to fail with undefined
swiftCompatibility{56,Concurrency,Packs} symbols on macOS.

Rewrite platform_lib_dir to `usr/lib/swift/macosx` on the macOS branch
of the existing patch so the -L / -Wl,-rpath resolve to a real dir
that already gets materialized into the sandbox via swift_tools'
`additional_inputs = glob(["usr/lib/swift/**", ...])`.
2026-07-13 16:09:03 +00:00
copilot-swe-agent[bot]
967e298f55 Patch rules_swift to skip Linux-only linkopts on macOS 2026-07-13 15:26:57 +00:00
copilot-swe-agent[bot]
e452647295 Disable swift-autolink-extract on macOS to fix Swift build 2026-07-13 15:15:36 +00:00
copilot-swe-agent[bot]
381a4a1d43 Register --swiftcopt flag_alias in .bazelrc for macOS Swift builds 2026-07-13 15:05:53 +00:00
copilot-swe-agent[bot]
4596c69314 Scope macOS deployment-target fix to Swift compiles via --swiftcopt=-target 2026-07-13 14:59:29 +00:00
copilot-swe-agent[bot]
aebf3070f6 Set macOS deployment target back to 10.15 2026-07-13 14:53:33 +00:00
copilot-swe-agent[bot]
377ee496a2 Scope CC=clang to Linux; use --macos_minimum_os=10.14 on macOS 2026-07-13 14:49:50 +00:00
copilot-swe-agent[bot]
4ba85eb65b Also set MACOSX_DEPLOYMENT_TARGET in action_env for exec config 2026-07-13 14:42:59 +00:00
copilot-swe-agent[bot]
0662060d69 Set macOS minimum deployment target for Swift builds in .bazelrc 2026-07-13 14:38:31 +00:00
copilot-swe-agent[bot]
13d2a1263f swift-syntax-rs: make BUILD.bazel targets Windows-incompatible; explicit linux/macos selects 2026-07-13 14:26:47 +00:00
copilot-swe-agent[bot]
29dcff8ff3 Add macOS (xcode) support to swift-syntax-rs build 2026-07-13 14:18:38 +00:00
copilot-swe-agent[bot]
a8edbcf1dc Initial plan 2026-07-13 14:12:30 +00:00
Taus
58ddeacde0 unified: Hook up swift-syntax AST
At this point it's only a proof-of-concept translation -- it translates
`sourceFile` nodes, but everything else gets mapped to
'unsupported_node`.
2026-07-10 13:14:35 +00:00
Taus
ddab6ccb35 unified: Emit locations for comments
Also gathers these into a separate side-channel during the initial AST
construction. That way, we don't encounter these as weird extra nodes
while running yeast.
2026-07-10 11:36:37 +00:00
Taus
8909fae81e unified: Extract locations from swift-syntax AST
Introduces new yeast types for `Point`s and `Range`s (corresponding to
the tree-sitter equivalents), since it seemed silly to have
`swift-syntax-rs` pull in `tree-sitter` just to have those types
available.

This _does_ mean there is a slight overhead in the shared extractor when
converting between these types, but I think this is negligible.
2026-07-10 11:36:37 +00:00
Taus
446ff7c463 unified: Add mapping from swift-syntax JSON to yeast AST
Adds a preliminary mapping that decodes the JSON into the yeast AST. The
JSON AST itself is still very verbose, but it would be useful to see if
it actually contains all of the things we want it to contain.
2026-07-10 11:35:57 +00:00
Taus
87c8173125 unified: Don't emit empty trivia
These were taking up roughly 20% of the JSON payload.
2026-07-10 11:35:57 +00:00
Taus
89e11e5cfc unified: Add swift-syntax-rs
Adds an initial prototype of an interface from Rust to Swift, which
enables us to use the `swift-syntax` package for parsing.

At present, the parsed AST is passed between Swift and Rust as a JSON
string.
2026-07-10 11:35:57 +00:00
Taus
247e54ba8d Merge pull request #22112 from github/tausbn/yeast-reify-output-schema-as-ast-types 2026-07-10 12:11:41 +02:00
Jeroen Ketema
161c8c4d30 Merge pull request #22149 from jketema/jketema/cwe-114-tag
C++/C#: Specify additional CWE tags for queries that specify CWE 114
2026-07-09 18:02:21 +02:00
Jeroen Ketema
72efb6a058 C++: Add CWE 73 and CWE 78 tags to cpp/uncontrolled-process-operation
User controlled data here either leads to the loading of an uncontrolled
library (CWE 73) or the execution of an uncontrolled command (CWE 78).
2026-07-09 17:11:58 +02:00
Jeroen Ketema
66fea698a2 C#: Add CWE-73 tag to cs/assembly-path-injection
Use of CWE-114 is discoraged, and CWE-73 seems appropriate as the assembly
path is user controlled here.
2026-07-09 17:10:13 +02:00
Jeroen Ketema
2ae79d0f1e C#: Remove misplaced change note
After almost 4 years it does not seem to be relevant anymore to propagate this
to the change log.
2026-07-09 17:09:07 +02:00
Florin Coada
747aa452cd Merge pull request #22147 from github/codeql-spark-run-29025431896
Update changelog documentation site for codeql-cli-2.26.0
2026-07-09 15:43:31 +01:00
Taus
9e99a3c968 Merge branch 'main' into tausbn/yeast-reify-output-schema-as-ast-types 2026-07-09 16:30:06 +02:00
Taus
989154a105 Merge pull request #22136 from github/tausbn/yeast-translate-with-context
yeast: Add context scoping mechanism
2026-07-09 16:29:54 +02:00
github-actions[bot]
36d0ceb292 update codeql documentation 2026-07-09 14:29:47 +00:00
Taus
d609680083 yeast: Fix escaping bug in yeast-macros
Happily, it turned out that there was already a library function for
handling this case.
2026-07-09 11:48:50 +00:00
Taus
11afcce8b3 yeast: Fix bug in matching (_)
Turns out, `(_)` would match both named and unnamed nodes, as we never
checked the value of the `match_unnamed` field. This is the real reason
why the final catch-all rule we removed in the last commit was
superfluous -- unnamed nodes were being caught by the penultimate rule
instead (and mapped to `unsupported_node`).

Having fixed the bug, we now (correctly) get errors due to unmatched
unnamed nodes in the input. To fix this, we change the catch-all rule to
match unnamed nodes as well. This restores the previous behaviour
exactly.

At some point, we should find a better way to handle unnamed nodes, as
it seems wasteful to map these to `unsupported_node` (since we in
practice only use them for their string content). Perhaps we should not
attempt to translate unnamed nodes at all?
2026-07-09 11:48:50 +00:00