github / github/codeql

Java: Data Flow Tracking for Stream/Promise based data flow

Open
#4,988 1 comment 0 reactions 0 assignees View on GitHub
question
Dominant language
CodeQL
Stars
10.1k
Forks
2.1k
Avg merge
2d 15h
Merged PRs (30d)
141

Description

**Description of the issue**

Data flow tracking doesn't currently work when the flow source uses non-procedural based data flow and instead uses stream or asynchronous paradigms.

A few examples:
- [x] Java 8 Streams APIs
- [ ] Java 8 `CompletableFuture`
- [ ] RX Java
- [ ] Third party library implementations of `Proimise`
- [x] Ratpack [Promise](https://ratpack.io/manual/current/api/ratpack/exec/Promise.html)

Javascript has support for this library.
https://github.com/github/codeql/blob/main/javascript/ql/src/semmle/javascript/Promises.qll

Having a similar generic & extendable API would be appreciated.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.