C++/Swift: delete outdated deprecations#19518
Merged
jketema merged 3 commits intogithub:mainfrom May 19, 2025
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR removes outdated deprecated aliases and predicates from Swift and C++ QL libraries to clean up code and keep change notes in sync.
- Swift: deleted deprecated module aliases (
WeakHashingConfig,WeakHashingFlow), legacy dataflow predicates, and summary component types. - C++: removed deprecated security predicates/accessors and legacy
hasLocationInfohelpers in dataflow utilities. - Updated change notes to record breaking deletions.
Reviewed Changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| swift/ql/lib/codeql/swift/security/WeakSensitiveDataHashingQuery.qll | Removed deprecated module aliases WeakHashingConfig and WeakHashingFlow. |
| swift/ql/lib/codeql/swift/dataflow/internal/DataFlowPublic.qll | Deleted deprecated hasLocationInfo predicate. |
| swift/ql/lib/codeql/swift/dataflow/FlowSummary.qll | Removed deprecated SummaryComponent* classes and modules. |
| swift/ql/lib/codeql/swift/dataflow/ExternalFlow.qll | Deleted deprecated parseField, parseTuple, parseEnum, and parseContent predicates. |
| swift/ql/lib/change-notes/2025-05-18-2025-May-outdated-deprecations.md | Added notes for Swift deprecations. |
| cpp/ql/lib/semmle/code/cpp/security/SecurityOptions.qll | Removed deprecated userInputArgument and userInputReturned overrides. |
| cpp/ql/lib/semmle/code/cpp/security/Security.qll | Deleted deprecated userInput* and isUserInput predicates and accessors. |
| cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowUtil.qll | Removed deprecated hasLocationInfo predicate. |
| cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowUtil.qll | Removed deprecated hasLocationInfo predicate. |
| cpp/ql/lib/change-notes/2025-05-18-2025-May-outdated-deprecations.md | Added notes for C++ security deprecations. |
| * Deleted the deprecated `SummaryComponentStack` class from the `FlowSummary.qll`. | ||
| * Deleted the deprecated `SummaryComponent` module from the `FlowSummary.qll`. | ||
| * Deleted the deprecated `SummaryComponentStack` module from the `FlowSummary.qll`. | ||
| * Deleted the deprecated `RequiredSummaryComponentStack` class from the `FlowSummary.qll`. |
There was a problem hiding this comment.
Consider adding entries for the removed deprecated WeakHashingConfig and WeakHashingFlow aliases in WeakSensitiveDataHashingQuery.qll so that the change notes fully reflect all deletions.
Suggested change
| * Deleted the deprecated `RequiredSummaryComponentStack` class from the `FlowSummary.qll`. | |
| * Deleted the deprecated `RequiredSummaryComponentStack` class from the `FlowSummary.qll`. | |
| * Deleted the deprecated `WeakHashingConfig` alias from the `WeakSensitiveDataHashingQuery.qll`. | |
| * Deleted the deprecated `WeakHashingFlow` alias from the `WeakSensitiveDataHashingQuery.qll`. |
| * Deleted the deprecated `userInputReturn` predicate from the `Security.qll`. | ||
| * Deleted the deprecated `isUserInput` predicate and its convenience accessor from the `Security.qll`. | ||
| * Deleted the deprecated `userInputArgument` predicate from the `SecurityOptions.qll`. | ||
| * Deleted the deprecated `userInputReturned` predicate from the `SecurityOptions.qll`. |
There was a problem hiding this comment.
The change notes currently omit the removal of the deprecated hasLocationInfo predicate from both DataFlowUtil.qll modules; please add entries to document these deletions for completeness.
Suggested change
| * Deleted the deprecated `userInputReturned` predicate from the `SecurityOptions.qll`. | |
| * Deleted the deprecated `userInputReturned` predicate from the `SecurityOptions.qll`. | |
| * Deleted the deprecated `hasLocationInfo` predicate from the `DataFlowUtil.qll`. | |
| * Deleted the deprecated `hasLocationInfo` predicate from the `DataFlowUtilLight.qll`. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cherry-picked from #19504. Mostly because the related internal C++ tests did get removed, so I don't want the keep the C++ deprecations around for too long without test coverage.