Skip to content

Make a proper shared library out of the concept related libraries #19984

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
Jul 17, 2025

Conversation

jketema
Copy link
Contributor

@jketema jketema commented Jul 6, 2025

Observe that to turn the ConceptsShared.qll into a parameterized module I had to introduce

final private class DataFlowNode = DataFlowLang::Node;

(see https://github.com/github/codeql/pull/19984/files#diff-ab7ead61741aa4309d3f7c41942166168e0c46d9fe16b1f6e8089e251eba90caR20) This has an impact on some places where ConceptsShared.qll, as it becomes impossible to use extends in various places. So I opted for using instanceof instead. The latter might explain some of the changes in stage timings visible in the DCA results. Overall analysis time does not seem to be impacted though.

@github-actions github-actions bot added JS Python Ruby Rust Pull requests that update Rust code Swift labels Jul 6, 2025
@jketema jketema force-pushed the jketema/sec-shared branch 4 times, most recently from eb7ba6b to 05a28b9 Compare July 9, 2025 14:13
@jketema jketema force-pushed the jketema/sec-shared branch from 05a28b9 to 430eeea Compare July 14, 2025 14:13
@jketema jketema force-pushed the jketema/sec-shared branch 3 times, most recently from 05f694f to 33f874e Compare July 14, 2025 14:28
@jketema jketema force-pushed the jketema/sec-shared branch from 33f874e to 1995870 Compare July 14, 2025 14:31
@jketema jketema changed the title sec shared Make a proper shared library out of the concept related libraries Jul 16, 2025
@geoffw0
Copy link
Contributor

geoffw0 commented Jul 16, 2025

I reviewed all of the DCA runs and nothing seems to be amiss. 👍

@jketema jketema marked this pull request as ready for review July 16, 2025 09:42
@jketema jketema requested review from a team as code owners July 16, 2025 09:42
@jketema jketema requested a review from a team as a code owner July 16, 2025 09:42
aschackmull
aschackmull previously approved these changes Jul 16, 2025
Copy link
Contributor

@aschackmull aschackmull left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QL changes LGTM

@jketema jketema force-pushed the jketema/sec-shared branch from 2d20b9a to 24bea73 Compare July 16, 2025 12:38
The import should not have been private, because we want users to still be
able to import this file and have access to the crypto algorithms.
Copy link
Contributor

@geoffw0 geoffw0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great, I was surprised how little per-language customization is needed on things like ConceptsShared - but I guess they're build atop shared dataflow.

@jketema
Copy link
Contributor Author

jketema commented Jul 17, 2025

Going ahead and merging this. The coding standards failures are not related to these changes.

@jketema jketema merged commit acc66c7 into github:main Jul 17, 2025
55 of 56 checks passed
@jketema jketema deleted the jketema/sec-shared branch July 17, 2025 11:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation JS Python Ruby Rust Pull requests that update Rust code Swift
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy