mirror of
https://github.com/github/codeql.git
synced 2026-05-18 05:07:06 +02:00
Compare commits
45 Commits
codeql-cli
...
class-hier
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
629f32a609 | ||
|
|
a3bc16cea8 | ||
|
|
be9ed1d90d | ||
|
|
208c1b9df4 | ||
|
|
3d5d4ca983 | ||
|
|
0236d8ea69 | ||
|
|
b8bd653c6b | ||
|
|
eb9ee33adc | ||
|
|
60903a48e7 | ||
|
|
ce5fc60c8f | ||
|
|
2e4d7447a9 | ||
|
|
c90bbb07ea | ||
|
|
2610c13053 | ||
|
|
6d210c5fe8 | ||
|
|
9249b529d7 | ||
|
|
ce2fd928f5 | ||
|
|
a27c2e0603 | ||
|
|
db6509e3ac | ||
|
|
244346bc1c | ||
|
|
48cb075b3b | ||
|
|
ec32de59a6 | ||
|
|
b93d470364 | ||
|
|
6d4b4d6838 | ||
|
|
af9b1e73f8 | ||
|
|
ff069f345d | ||
|
|
6877697837 | ||
|
|
3abfcc59ca | ||
|
|
b1cfe27d17 | ||
|
|
0bf1ca7550 | ||
|
|
1328bfd7d0 | ||
|
|
8b82732040 | ||
|
|
ab0313828c | ||
|
|
975ed47c53 | ||
|
|
523f7e2ed4 | ||
|
|
38911e63d2 | ||
|
|
0f1b120a03 | ||
|
|
68985db3f6 | ||
|
|
e96e67cdb9 | ||
|
|
6024ca0167 | ||
|
|
e5aae0d7e7 | ||
|
|
fb63e73142 | ||
|
|
f29e8894bf | ||
|
|
b980b82d59 | ||
|
|
562d9c63b4 | ||
|
|
8e9636a6d8 |
@@ -11,6 +11,7 @@ import DataFlowPublic
|
||||
private import DataFlowPrivate
|
||||
private import semmle.python.internal.CachedStages
|
||||
private import semmle.python.internal.Awaited
|
||||
private import semmle.python.dataflow.new.internal.ImportStar
|
||||
|
||||
/**
|
||||
* A data flow node that is a source of local flow. This includes things like
|
||||
@@ -39,6 +40,22 @@ class LocalSourceNode extends Node {
|
||||
this instanceof ExprNode and
|
||||
not simpleLocalFlowStepForTypetracking(_, this)
|
||||
or
|
||||
// For `from foo import *; foo_function()`, we want to let the variables we think
|
||||
// could originate in `foo` (such as `foo_function`) to be available in the API
|
||||
// graph. This requires them to be local sources. They would not be from the code
|
||||
// just above, since the CFG node has flow going into it from its corresponding
|
||||
// `GlobalSsaVariable`. (a different work-around is to change API graphs to not rely
|
||||
// as heavily on LocalSourceNode; I initially tried this, but it relied on a lot of
|
||||
// copy-pasted code, and it requires some non-trivial deprecation for downgrading
|
||||
// the result type of `.asSource()` to DataFlow::Node, so we've opted for this
|
||||
// approach instead).
|
||||
//
|
||||
// Note: This is only needed at the module level -- uses inside functions appear as
|
||||
// LocalSourceNodes as we expect.
|
||||
//
|
||||
// TODO: When rewriting SSA, we should be able to remove this workaround
|
||||
ImportStar::namePossiblyDefinedInImportStar(this.(ExprNode).getNode(), _, any(Module m))
|
||||
or
|
||||
// We include all module variable nodes, as these act as stepping stones between writes and
|
||||
// reads of global variables. Without them, type tracking based on `LocalSourceNode`s would be
|
||||
// unable to track across global variables.
|
||||
|
||||
@@ -15,6 +15,7 @@ private import semmle.python.regex
|
||||
private import semmle.python.frameworks.internal.PoorMansFunctionResolution
|
||||
private import semmle.python.frameworks.internal.SelfRefMixin
|
||||
private import semmle.python.frameworks.internal.InstanceTaintStepsHelper
|
||||
private import semmle.python.frameworks.data.ModelsAsData
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
@@ -84,6 +85,10 @@ module Django {
|
||||
}
|
||||
}
|
||||
|
||||
private class MaDSubclass extends ModeledSubclass {
|
||||
MaDSubclass() { this = ModelOutput::getATypeNode("Django.Views.View~Subclass") }
|
||||
}
|
||||
|
||||
/** Gets a reference to the `django.views.generic.View` class or any subclass. */
|
||||
API::Node subclassRef() { result = any(ModeledSubclass subclass).getASubclass*() }
|
||||
}
|
||||
@@ -184,6 +189,10 @@ module Django {
|
||||
}
|
||||
}
|
||||
|
||||
private class MaDSubclass extends ModeledSubclass {
|
||||
MaDSubclass() { this = ModelOutput::getATypeNode("django.forms.BaseForm~Subclass") }
|
||||
}
|
||||
|
||||
/** Gets a reference to the `django.forms.forms.BaseForm` class or any subclass. */
|
||||
API::Node subclassRef() { result = any(ModeledSubclass subclass).getASubclass*() }
|
||||
}
|
||||
@@ -289,6 +298,10 @@ module Django {
|
||||
}
|
||||
}
|
||||
|
||||
private class MaDSubclass extends ModeledSubclass {
|
||||
MaDSubclass() { this = ModelOutput::getATypeNode("Django.Forms.Field~Subclass") }
|
||||
}
|
||||
|
||||
/** Gets a reference to the `django.forms.fields.Field` class or any subclass. */
|
||||
API::Node subclassRef() { result = any(ModeledSubclass subclass).getASubclass*() }
|
||||
}
|
||||
@@ -595,6 +608,8 @@ module PrivateDjango {
|
||||
.getMember("models")
|
||||
.getMember("PolymorphicModel")
|
||||
.getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("Django.db.models.Model~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -11,18 +11,21 @@ private import semmle.python.Concepts
|
||||
private import semmle.python.ApiGraphs
|
||||
private import semmle.python.frameworks.Pydantic
|
||||
private import semmle.python.frameworks.Starlette
|
||||
private import semmle.python.frameworks.data.ModelsAsData
|
||||
|
||||
/**
|
||||
* Provides models for the `fastapi` PyPI package.
|
||||
* See https://fastapi.tiangolo.com/.
|
||||
*/
|
||||
private module FastApi {
|
||||
module FastApi {
|
||||
/**
|
||||
* Provides models for FastAPI applications (an instance of `fastapi.FastAPI`).
|
||||
*/
|
||||
module App {
|
||||
API::Node cls() { result = API::moduleImport("fastapi").getMember("FastAPI") }
|
||||
|
||||
/** Gets a reference to a FastAPI application (an instance of `fastapi.FastAPI`). */
|
||||
API::Node instance() { result = API::moduleImport("fastapi").getMember("FastAPI").getReturn() }
|
||||
API::Node instance() { result = cls().getReturn() }
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -31,10 +34,14 @@ private module FastApi {
|
||||
* See https://fastapi.tiangolo.com/tutorial/bigger-applications/.
|
||||
*/
|
||||
module ApiRouter {
|
||||
/** Gets a reference to an instance of `fastapi.ApiRouter`. */
|
||||
API::Node instance() {
|
||||
result = API::moduleImport("fastapi").getMember("APIRouter").getASubclass*().getReturn()
|
||||
API::Node cls() {
|
||||
result = API::moduleImport("fastapi").getMember("APIRouter").getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("fastapi.APIRouter~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/** Gets a reference to an instance of `fastapi.ApiRouter`. */
|
||||
API::Node instance() { result = cls().getReturn() }
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
@@ -14,6 +14,7 @@ private import semmle.python.ApiGraphs
|
||||
private import semmle.python.frameworks.internal.InstanceTaintStepsHelper
|
||||
private import semmle.python.security.dataflow.PathInjectionCustomizations
|
||||
private import semmle.python.dataflow.new.FlowSummary
|
||||
private import semmle.python.frameworks.data.ModelsAsData
|
||||
|
||||
/**
|
||||
* Provides models for the `flask` PyPI package.
|
||||
@@ -39,6 +40,10 @@ module Flask {
|
||||
"MethodView"
|
||||
])
|
||||
.getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("flask.View~Subclass").getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("flask.MethodView~Subclass").getASubclass*()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,6 +57,8 @@ module Flask {
|
||||
API::Node subclassRef() {
|
||||
result =
|
||||
API::moduleImport("flask").getMember("views").getMember("MethodView").getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("flask.MethodView~Subclass").getASubclass*()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,6 +17,7 @@ private import semmle.python.frameworks.internal.InstanceTaintStepsHelper
|
||||
// modeling split over multiple files to keep this file from becoming too big
|
||||
private import semmle.python.frameworks.Stdlib.Urllib
|
||||
private import semmle.python.frameworks.Stdlib.Urllib2
|
||||
private import semmle.python.frameworks.data.ModelsAsData
|
||||
|
||||
/** Provides models for the Python standard library. */
|
||||
module Stdlib {
|
||||
@@ -298,7 +299,7 @@ module Stdlib {
|
||||
* policy, and the code is not in a polished enough state that we want to do so -- at
|
||||
* least not without having convincing use-cases for it :)
|
||||
*/
|
||||
private module StdlibPrivate {
|
||||
module StdlibPrivate {
|
||||
// ---------------------------------------------------------------------------
|
||||
// os
|
||||
// ---------------------------------------------------------------------------
|
||||
@@ -1709,8 +1710,21 @@ private module StdlibPrivate {
|
||||
* See https://docs.python.org/3/library/cgi.html.
|
||||
*/
|
||||
module FieldStorage {
|
||||
/** Gets a reference to the `cgi.FieldStorage` class. */
|
||||
API::Node classRef() { result = cgi().getMember("FieldStorage") }
|
||||
/**
|
||||
* DEPRECATED: Use `subclassRef` predicate instead.
|
||||
*
|
||||
* Gets a reference to the `cgi.FieldStorage` class.
|
||||
*/
|
||||
deprecated API::Node classRef() {
|
||||
result = API::moduleImport("cgi").getMember("FieldStorage")
|
||||
}
|
||||
|
||||
/** Gets a reference to the `cgi.FieldStorage` class or any subclass. */
|
||||
API::Node subclassRef() {
|
||||
result = API::moduleImport("cgi").getMember("FieldStorage").getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("cgi.FieldStorage~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/**
|
||||
* A source of instances of `cgi.FieldStorage`, extend this class to model new instances.
|
||||
@@ -1733,13 +1747,13 @@ private module StdlibPrivate {
|
||||
private class ClassInstantiation extends InstanceSource, RemoteFlowSource::Range,
|
||||
DataFlow::CallCfgNode
|
||||
{
|
||||
ClassInstantiation() { this = classRef().getACall() }
|
||||
ClassInstantiation() { this = subclassRef().getACall() }
|
||||
|
||||
override string getSourceType() { result = "cgi.FieldStorage" }
|
||||
}
|
||||
|
||||
/** Gets a reference to an instance of `cgi.FieldStorage`. */
|
||||
API::Node instance() { result = classRef().getReturn() }
|
||||
API::Node instance() { result = subclassRef().getReturn() }
|
||||
|
||||
/** Gets a reference to the `getvalue` method on a `cgi.FieldStorage` instance. */
|
||||
API::Node getvalueRef() { result = instance().getMember("getvalue") }
|
||||
@@ -1815,51 +1829,95 @@ private module StdlibPrivate {
|
||||
// ---------------------------------------------------------------------------
|
||||
// BaseHTTPServer (Python 2 only)
|
||||
// ---------------------------------------------------------------------------
|
||||
/** Gets a reference to the `BaseHttpServer` module. */
|
||||
API::Node baseHttpServer() { result = API::moduleImport("BaseHTTPServer") }
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `BaseHttpServer` module.
|
||||
*/
|
||||
deprecated API::Node baseHttpServer() { result = API::moduleImport("BaseHTTPServer") }
|
||||
|
||||
/** Provides models for the `BaseHttpServer` module. */
|
||||
module BaseHttpServer {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `BaseHttpServer` module.
|
||||
*/
|
||||
deprecated module BaseHttpServer {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `BaseHTTPServer.BaseHTTPRequestHandler` class (Python 2 only).
|
||||
*/
|
||||
module BaseHttpRequestHandler {
|
||||
/** Gets a reference to the `BaseHttpServer.BaseHttpRequestHandler` class. */
|
||||
API::Node classRef() { result = baseHttpServer().getMember("BaseHTTPRequestHandler") }
|
||||
deprecated module BaseHttpRequestHandler {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `BaseHttpServer.BaseHttpRequestHandler` class.
|
||||
*/
|
||||
deprecated API::Node classRef() {
|
||||
result = baseHttpServer().getMember("BaseHTTPRequestHandler")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// SimpleHTTPServer (Python 2 only)
|
||||
// ---------------------------------------------------------------------------
|
||||
/** Gets a reference to the `SimpleHttpServer` module. */
|
||||
API::Node simpleHttpServer() { result = API::moduleImport("SimpleHTTPServer") }
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `SimpleHttpServer` module.
|
||||
*/
|
||||
deprecated API::Node simpleHttpServer() { result = API::moduleImport("SimpleHTTPServer") }
|
||||
|
||||
/** Provides models for the `SimpleHttpServer` module. */
|
||||
module SimpleHttpServer {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `SimpleHttpServer` module.
|
||||
*/
|
||||
deprecated module SimpleHttpServer {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `SimpleHTTPServer.SimpleHTTPRequestHandler` class (Python 2 only).
|
||||
*/
|
||||
module SimpleHttpRequestHandler {
|
||||
/** Gets a reference to the `SimpleHttpServer.SimpleHttpRequestHandler` class. */
|
||||
API::Node classRef() { result = simpleHttpServer().getMember("SimpleHTTPRequestHandler") }
|
||||
deprecated module SimpleHttpRequestHandler {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `SimpleHttpServer.SimpleHttpRequestHandler` class.
|
||||
*/
|
||||
deprecated API::Node classRef() {
|
||||
result = simpleHttpServer().getMember("SimpleHTTPRequestHandler")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// CGIHTTPServer (Python 2 only)
|
||||
// ---------------------------------------------------------------------------
|
||||
/** Gets a reference to the `CGIHTTPServer` module. */
|
||||
API::Node cgiHttpServer() { result = API::moduleImport("CGIHTTPServer") }
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `CGIHTTPServer` module.
|
||||
*/
|
||||
deprecated API::Node cgiHttpServer() { result = API::moduleImport("CGIHTTPServer") }
|
||||
|
||||
/** Provides models for the `CGIHTTPServer` module. */
|
||||
module CgiHttpServer {
|
||||
deprecated module CgiHttpServer {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `CGIHTTPServer.CGIHTTPRequestHandler` class (Python 2 only).
|
||||
*/
|
||||
module CgiHttpRequestHandler {
|
||||
/** Gets a reference to the `CGIHTTPServer.CgiHttpRequestHandler` class. */
|
||||
API::Node classRef() { result = cgiHttpServer().getMember("CGIHTTPRequestHandler") }
|
||||
deprecated module CgiHttpRequestHandler {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `CGIHTTPServer.CgiHttpRequestHandler` class.
|
||||
*/
|
||||
deprecated API::Node classRef() {
|
||||
result = cgiHttpServer().getMember("CGIHTTPRequestHandler")
|
||||
}
|
||||
}
|
||||
|
||||
/** DEPRECATED: Alias for CgiHttpRequestHandler */
|
||||
@@ -1872,47 +1930,69 @@ private module StdlibPrivate {
|
||||
// ---------------------------------------------------------------------------
|
||||
// http (Python 3 only)
|
||||
// ---------------------------------------------------------------------------
|
||||
/** Gets a reference to the `http` module. */
|
||||
API::Node http() { result = API::moduleImport("http") }
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `http` module.
|
||||
*/
|
||||
deprecated API::Node http() { result = API::moduleImport("http") }
|
||||
|
||||
/** Provides models for the `http` module. */
|
||||
module StdlibHttp {
|
||||
deprecated module StdlibHttp {
|
||||
// -------------------------------------------------------------------------
|
||||
// http.server
|
||||
// -------------------------------------------------------------------------
|
||||
/** Gets a reference to the `http.server` module. */
|
||||
API::Node server() { result = http().getMember("server") }
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `http.server` module.
|
||||
*/
|
||||
deprecated API::Node server() { result = http().getMember("server") }
|
||||
|
||||
/** Provides models for the `http.server` module */
|
||||
module Server {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `http.server` module
|
||||
*/
|
||||
deprecated module Server {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `http.server.BaseHTTPRequestHandler` class (Python 3 only).
|
||||
*
|
||||
* See https://docs.python.org/3.9/library/http.server.html#http.server.BaseHTTPRequestHandler.
|
||||
*/
|
||||
module BaseHttpRequestHandler {
|
||||
deprecated module BaseHttpRequestHandler {
|
||||
/** Gets a reference to the `http.server.BaseHttpRequestHandler` class. */
|
||||
API::Node classRef() { result = server().getMember("BaseHTTPRequestHandler") }
|
||||
deprecated API::Node classRef() { result = server().getMember("BaseHTTPRequestHandler") }
|
||||
}
|
||||
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `http.server.SimpleHTTPRequestHandler` class (Python 3 only).
|
||||
*
|
||||
* See https://docs.python.org/3.9/library/http.server.html#http.server.SimpleHTTPRequestHandler.
|
||||
*/
|
||||
module SimpleHttpRequestHandler {
|
||||
deprecated module SimpleHttpRequestHandler {
|
||||
/** Gets a reference to the `http.server.SimpleHttpRequestHandler` class. */
|
||||
API::Node classRef() { result = server().getMember("SimpleHTTPRequestHandler") }
|
||||
deprecated API::Node classRef() { result = server().getMember("SimpleHTTPRequestHandler") }
|
||||
}
|
||||
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Provides models for the `http.server.CGIHTTPRequestHandler` class (Python 3 only).
|
||||
*
|
||||
* See https://docs.python.org/3.9/library/http.server.html#http.server.CGIHTTPRequestHandler.
|
||||
*/
|
||||
module CgiHttpRequestHandler {
|
||||
/** Gets a reference to the `http.server.CGIHTTPRequestHandler` class. */
|
||||
API::Node classRef() { result = server().getMember("CGIHTTPRequestHandler") }
|
||||
deprecated module CgiHttpRequestHandler {
|
||||
/**
|
||||
* DEPRECATED: Use API-graphs directly instead.
|
||||
*
|
||||
* Gets a reference to the `http.server.CGIHTTPRequestHandler` class.
|
||||
*/
|
||||
deprecated API::Node classRef() { result = server().getMember("CGIHTTPRequestHandler") }
|
||||
}
|
||||
|
||||
/** DEPRECATED: Alias for CgiHttpRequestHandler */
|
||||
@@ -1927,20 +2007,23 @@ private module StdlibPrivate {
|
||||
* - https://docs.python.org/3.9/library/http.server.html#http.server.BaseHTTPRequestHandler
|
||||
* - https://docs.python.org/2.7/library/basehttpserver.html#BaseHTTPServer.BaseHTTPRequestHandler
|
||||
*/
|
||||
private module HttpRequestHandler {
|
||||
module BaseHttpRequestHandler {
|
||||
/** Gets a reference to the `BaseHttpRequestHandler` class or any subclass. */
|
||||
API::Node subclassRef() {
|
||||
result =
|
||||
[
|
||||
// Python 2
|
||||
BaseHttpServer::BaseHttpRequestHandler::classRef(),
|
||||
SimpleHttpServer::SimpleHttpRequestHandler::classRef(),
|
||||
CgiHttpServer::CgiHttpRequestHandler::classRef(),
|
||||
API::moduleImport("BaseHTTPServer").getMember("BaseHTTPRequestHandler"),
|
||||
API::moduleImport("SimpleHTTPServer").getMember("SimpleHTTPRequestHandler"),
|
||||
API::moduleImport("CGIHTTPServer").getMember("CGIHTTPRequestHandler"),
|
||||
// Python 3
|
||||
StdlibHttp::Server::BaseHttpRequestHandler::classRef(),
|
||||
StdlibHttp::Server::SimpleHttpRequestHandler::classRef(),
|
||||
StdlibHttp::Server::CgiHttpRequestHandler::classRef()
|
||||
API::moduleImport("http").getMember("server").getMember("BaseHTTPRequestHandler"),
|
||||
API::moduleImport("http").getMember("server").getMember("SimpleHTTPRequestHandler"),
|
||||
API::moduleImport("http").getMember("server").getMember("CGIHTTPRequestHandler"),
|
||||
].getASubclass*()
|
||||
or
|
||||
result =
|
||||
ModelOutput::getATypeNode("http.server.BaseHTTPRequestHandler~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/** A HttpRequestHandler class definition (most likely in project code). */
|
||||
@@ -2035,17 +2118,20 @@ private module StdlibPrivate {
|
||||
// wsgiref.simple_server
|
||||
// ---------------------------------------------------------------------------
|
||||
/** Provides models for the `wsgiref.simple_server` module. */
|
||||
private module WsgirefSimpleServer {
|
||||
module WsgirefSimpleServer {
|
||||
API::Node subclassRef() {
|
||||
result =
|
||||
API::moduleImport("wsgiref")
|
||||
.getMember("simple_server")
|
||||
.getMember("WSGIServer")
|
||||
.getASubclass*()
|
||||
or
|
||||
result =
|
||||
ModelOutput::getATypeNode("wsgiref.simple_server.WSGIServer~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
class WsgiServerSubclass extends Class, SelfRefMixin {
|
||||
WsgiServerSubclass() {
|
||||
this.getParent() =
|
||||
API::moduleImport("wsgiref")
|
||||
.getMember("simple_server")
|
||||
.getMember("WSGIServer")
|
||||
.getASubclass*()
|
||||
.asSource()
|
||||
.asExpr()
|
||||
}
|
||||
WsgiServerSubclass() { this.getParent() = subclassRef().asSource().asExpr() }
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -2062,13 +2148,7 @@ private module StdlibPrivate {
|
||||
exists(DataFlow::Node appArg, DataFlow::CallCfgNode setAppCall |
|
||||
(
|
||||
setAppCall =
|
||||
API::moduleImport("wsgiref")
|
||||
.getMember("simple_server")
|
||||
.getMember("WSGIServer")
|
||||
.getASubclass*()
|
||||
.getReturn()
|
||||
.getMember("set_app")
|
||||
.getACall()
|
||||
WsgirefSimpleServer::subclassRef().getReturn().getMember("set_app").getACall()
|
||||
or
|
||||
setAppCall
|
||||
.(DataFlow::MethodCallNode)
|
||||
|
||||
@@ -12,6 +12,7 @@ private import semmle.python.ApiGraphs
|
||||
private import semmle.python.regex
|
||||
private import semmle.python.frameworks.Stdlib
|
||||
private import semmle.python.frameworks.internal.InstanceTaintStepsHelper
|
||||
private import semmle.python.frameworks.data.ModelsAsData
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
@@ -87,7 +88,11 @@ module Tornado {
|
||||
*/
|
||||
module RequestHandler {
|
||||
/** Gets a reference to the `tornado.web.RequestHandler` class or any subclass. */
|
||||
API::Node subclassRef() { result = web().getMember("RequestHandler").getASubclass*() }
|
||||
API::Node subclassRef() {
|
||||
result = web().getMember("RequestHandler").getASubclass*()
|
||||
or
|
||||
result = ModelOutput::getATypeNode("tornado.web.RequestHandler~Subclass").getASubclass*()
|
||||
}
|
||||
|
||||
/** A RequestHandler class (most likely in project code). */
|
||||
class RequestHandlerClass extends Class {
|
||||
|
||||
@@ -0,0 +1,150 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[PasswordField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[SetPasswordField]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[AccountInactiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[ConfirmEmailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[EmailVerificationSentView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[EmailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[LoginView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[LogoutView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[PasswordChangeView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[PasswordResetDoneView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[PasswordResetFromKeyDoneView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[PasswordResetFromKeyView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[PasswordResetView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[PasswordSetView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[SignupView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[View]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[adapter].Member[AbstractUser]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[EmailAddress]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[models].Member[EmailAddress]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[models].Member[EmailConfirmation]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[EmailAddress]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[EmailConfirmation]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- allauth
|
||||
- Member[socialaccount].Member[adapter].Member[EmailAddress]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[AddEmailForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[BaseSignupForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[ChangePasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[LoginForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[ResetPasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[ResetPasswordKeyForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[SetPasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[SignupForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[UserForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[UserTokenForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[forms].Member[_DummyCustomSignupForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[AddEmailForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[ChangePasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[LoginForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[ResetPasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[ResetPasswordKeyForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[SetPasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[SignupForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[account].Member[views].Member[UserTokenForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[socialaccount].Member[admin].Member[SocialAppForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[socialaccount].Member[forms].Member[BaseSignupForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[socialaccount].Member[forms].Member[DisconnectForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- allauth
|
||||
- Member[socialaccount].Member[forms].Member[SignupForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- aplus_auth
|
||||
- Member[auth].Member[django].Member[RemoteAuthenticator]
|
||||
- - Django.Views.View~Subclass
|
||||
- aplus_auth
|
||||
- Member[auth].Member[django].Member[View]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- azure
|
||||
- Member[identity].Member[_internal].Member[auth_code_redirect_handler].Member[AuthCodeRedirectHandler]
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- azure
|
||||
- Member[identity].Member[_internal].Member[auth_code_redirect_handler].Member[BaseHTTPRequestHandler]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- bootstrap3
|
||||
- Member[renderers].Member[BaseForm]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- captcha
|
||||
- Member[fields].Member[ReCaptchaField]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- colorful
|
||||
- Member[forms].Member[RGBColorField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- colorful
|
||||
- Member[forms].Member[RegexField]
|
||||
@@ -0,0 +1,57 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[GM2MQuerySetSequenceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[GenericForeignKeyModelField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[GenericM2MQuerySetSequenceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[QuerySetSequenceModelField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[QuerySetSequenceModelMultipleField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2GenericForeignKeyModelField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2ListChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2ListCreateChoiceField]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[BaseQuerySetSequenceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2GroupListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2ListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2QuerySetSequenceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[Select2QuerySetView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[views].Member[BaseListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal
|
||||
- Member[views].Member[BaseQuerySetView]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- dal
|
||||
- Member[autocomplete].Member[FutureModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- dal
|
||||
- Member[forms].Member[FutureModelForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_genericm2m_queryset_sequence
|
||||
- Member[fields].Member[GenericM2MQuerySetSequenceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_genericm2m_queryset_sequence
|
||||
- Member[fields].Member[QuerySetSequenceModelMultipleField]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_gm2m_queryset_sequence
|
||||
- Member[fields].Member[GM2MQuerySetSequenceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_gm2m_queryset_sequence
|
||||
- Member[fields].Member[QuerySetSequenceModelMultipleField]
|
||||
@@ -0,0 +1,21 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_queryset_sequence
|
||||
- Member[fields].Member[GenericForeignKeyModelField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_queryset_sequence
|
||||
- Member[fields].Member[QuerySetSequenceModelField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_queryset_sequence
|
||||
- Member[fields].Member[QuerySetSequenceModelMultipleField]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_queryset_sequence
|
||||
- Member[views].Member[BaseQuerySetSequenceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_queryset_sequence
|
||||
- Member[views].Member[BaseQuerySetView]
|
||||
@@ -0,0 +1,30 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_select2
|
||||
- Member[fields].Member[ChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_select2
|
||||
- Member[fields].Member[Select2ListChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_select2
|
||||
- Member[fields].Member[Select2ListCreateChoiceField]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2
|
||||
- Member[views].Member[BaseQuerySetView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2
|
||||
- Member[views].Member[Select2GroupListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2
|
||||
- Member[views].Member[Select2ListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2
|
||||
- Member[views].Member[Select2QuerySetView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2
|
||||
- Member[views].Member[View]
|
||||
@@ -0,0 +1,24 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_select2_queryset_sequence
|
||||
- Member[fields].Member[QuerySetSequenceModelField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- dal_select2_queryset_sequence
|
||||
- Member[fields].Member[Select2GenericForeignKeyModelField]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2_queryset_sequence
|
||||
- Member[fields].Member[Select2QuerySetSequenceAutoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2_queryset_sequence
|
||||
- Member[views].Member[BaseQuerySetSequenceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2_queryset_sequence
|
||||
- Member[views].Member[Select2QuerySetSequenceAutoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- dal_select2_queryset_sequence
|
||||
- Member[views].Member[Select2QuerySetSequenceView]
|
||||
@@ -0,0 +1,465 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[ReadOnlyPasswordHashField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[UsernameField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[ChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[FileField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[FilePathField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[GeometryCollectionField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[GeometryField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[ImageField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[JSONField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[LineStringField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[MultiLineStringField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[MultiPointField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[MultiPolygonField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[PointField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[PolygonField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[RegexField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[URLField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[GeometryCollectionField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[GeometryField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[LineStringField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[MultiLineStringField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[MultiPointField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[MultiPolygonField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[PointField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[fields].Member[PolygonField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[DateRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[DateTimeRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[DecimalRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[HStoreField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[IntegerRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[JSONField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[SimpleArrayField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[SplitArrayField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[array].Member[SimpleArrayField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[array].Member[SplitArrayField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[hstore].Member[HStoreField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[jsonb].Member[JSONField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[ranges].Member[BaseRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[ranges].Member[DateRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[ranges].Member[DateTimeRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[ranges].Member[DecimalRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[postgres].Member[forms].Member[ranges].Member[IntegerRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[forms].Member[models].Member[InlineForeignKeyField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[forms].Member[models].Member[ModelChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django
|
||||
- Member[forms].Member[models].Member[ModelMultipleChoiceField]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[options].Member[AutocompleteJsonView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[options].Member[RedirectView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[sites].Member[AutocompleteJsonView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[sites].Member[JavaScriptCatalog]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[views].Member[autocomplete].Member[AutocompleteJsonView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[views].Member[autocomplete].Member[BaseListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[BaseAdminDocsView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[BookmarkletsView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[ModelDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[ModelIndexView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[TemplateDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[TemplateFilterIndexView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[TemplateTagIndexView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[ViewDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admindocs].Member[views].Member[ViewIndexView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[LoginView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[LogoutView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordChangeDoneView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordChangeView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordResetCompleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordResetConfirmView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordResetDoneView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordResetView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[ArchiveIndexView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[CreateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[DateDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[DayArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[DeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[DetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[ListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[MonthArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[TodayArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[UpdateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[WeekArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[YearArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseArchiveIndexView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseDateDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseDateListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseDayArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseMonthArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseTodayArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseWeekArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[BaseYearArchiveView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[dates].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[detail].Member[BaseDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[detail].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[BaseCreateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[BaseDeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[BaseDetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[BaseFormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[BaseUpdateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[ProcessFormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[list].Member[BaseListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[list].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[i18n].Member[JSONCatalog]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[i18n].Member[JavaScriptCatalog]
|
||||
- - Django.Views.View~Subclass
|
||||
- django
|
||||
- Member[views].Member[i18n].Member[View]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[backends].Member[Permission]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[base_user].Member[AbstractBaseUser]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[User]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[AbstractBaseUser]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[AbstractUser]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[ContentType]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[Group]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[Permission]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[PermissionsMixin]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[models].Member[User]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[contenttypes].Member[fields].Member[ContentType]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[contenttypes].Member[forms].Member[ContentType]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[contenttypes].Member[models].Member[ContentType]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[sites].Member[models].Member[Site]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[checks].Member[BaseModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[forms].Member[AuthenticationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[forms].Member[PasswordChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[admin].Member[views].Member[main].Member[ChangeListSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[admin].Member[AdminPasswordChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[admin].Member[UserChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[admin].Member[UserCreationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[AdminPasswordChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[BaseUserCreationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[UserChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[forms].Member[UserCreationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[AuthenticationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[PasswordResetForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[auth].Member[views].Member[SetPasswordForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[contenttypes].Member[forms].Member[ModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[flatpages].Member[admin].Member[FlatpageForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[BaseForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[Form]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[contrib].Member[gis].Member[forms].Member[ModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[forms].Member[BaseForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[forms].Member[BaseModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[forms].Member[formsets].Member[ManagementForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[forms].Member[models].Member[ModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django
|
||||
- Member[views].Member[generic].Member[edit].Member[Form]
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- django
|
||||
- Member[core].Member[servers].Member[basehttp].Member[WSGIRequestHandler]
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- django
|
||||
- Member[test].Member[testcases].Member[QuietWSGIRequestHandler]
|
||||
- - wsgiref.simple_server.WSGIServer~Subclass
|
||||
- django
|
||||
- Member[core].Member[servers].Member[basehttp].Member[ThreadedWSGIServer]
|
||||
- - wsgiref.simple_server.WSGIServer~Subclass
|
||||
- django
|
||||
- Member[core].Member[servers].Member[basehttp].Member[WSGIServer]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_bootstrap5
|
||||
- Member[renderers].Member[BaseForm]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_colortag
|
||||
- Member[forms].Member[ColorTagForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_countries
|
||||
- Member[fields].Member[LazyTypedChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_countries
|
||||
- Member[fields].Member[LazyTypedMultipleChoiceField]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_date_extensions
|
||||
- Member[fields].Member[ApproximateDateFormField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_date_extensions
|
||||
- Member[fields].Member[PrettyDateField]
|
||||
@@ -0,0 +1,81 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[api].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[api].Member[HTTPDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[api].Member[ObjectDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[api].Member[PathDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[api].Member[StorageDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[api].Member[VirtualDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[shortcuts].Member[PathDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[HTTPDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[ObjectDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[PathDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[StorageDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[VirtualDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[base].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[base].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[http].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[http].Member[HTTPDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[object].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[object].Member[ObjectDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[path].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[path].Member[PathDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[storage].Member[PathDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[storage].Member[StorageDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[virtual].Member[BaseDownloadView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_downloadview
|
||||
- Member[views].Member[virtual].Member[VirtualDownloadView]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_enumfield
|
||||
- Member[db].Member[fields].Member[EnumChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_enumfield
|
||||
- Member[forms].Member[fields].Member[EnumChoiceField]
|
||||
@@ -0,0 +1,18 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django_extensions
|
||||
- Member[db].Member[models].Member[ActivatorModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django_extensions
|
||||
- Member[db].Member[models].Member[TimeStampedModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django_extensions
|
||||
- Member[db].Member[models].Member[TitleDescriptionModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- django_extensions
|
||||
- Member[db].Member[models].Member[TitleSlugDescriptionModel]
|
||||
@@ -0,0 +1,27 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_file_form
|
||||
- Member[fields].Member[FileField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_file_form
|
||||
- Member[fields].Member[MultipleUploadedFileField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_file_form
|
||||
- Member[fields].Member[UploadedFileField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_file_form
|
||||
- Member[forms].Member[CharField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_file_form
|
||||
- Member[forms].Member[MultipleUploadedFileField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_file_form
|
||||
- Member[forms].Member[UploadedFileField]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_file_form
|
||||
- Member[forms].Member[Form]
|
||||
@@ -0,0 +1,54 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[BaseCSVField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[BaseRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[ChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[DateRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[DateTimeRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[IsoDateTimeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[IsoDateTimeRangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[LookupChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[ModelChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[ModelMultipleChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[MultipleChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[RangeField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_filters
|
||||
- Member[fields].Member[TimeRangeField]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_filters
|
||||
- Member[views].Member[BaseFilterView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_filters
|
||||
- Member[views].Member[FilterView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_filters
|
||||
- Member[views].Member[View]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- django_ltree
|
||||
- Member[fields].Member[PathFormField]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_otp
|
||||
- Member[forms].Member[AuthenticationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_otp
|
||||
- Member[forms].Member[OTPAuthenticationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_otp
|
||||
- Member[forms].Member[OTPTokenForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- django_select2
|
||||
- Member[views].Member[AutoResponseView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_select2
|
||||
- Member[views].Member[BaseListView]
|
||||
@@ -0,0 +1,33 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- django_summernote
|
||||
- Member[urls].Member[SummernoteEditor]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_summernote
|
||||
- Member[urls].Member[SummernoteUploadAttachment]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_summernote
|
||||
- Member[views].Member[SummernoteEditor]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_summernote
|
||||
- Member[views].Member[SummernoteUploadAttachment]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_summernote
|
||||
- Member[views].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_summernote
|
||||
- Member[views].Member[View]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_summernote
|
||||
- Member[forms].Member[AttachmentAdminForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_summernote
|
||||
- Member[forms].Member[UploadForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- django_summernote
|
||||
- Member[views].Member[UploadForm]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- django_tables2
|
||||
- Member[SingleTableView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_tables2
|
||||
- Member[views].Member[ListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- django_tables2
|
||||
- Member[views].Member[SingleTableView]
|
||||
@@ -0,0 +1,48 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[extensions].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[openapi].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[openapi].Member[CreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[openapi].Member[GenericAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[openapi].Member[ListCreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[RedirectView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularJSONAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularRedocView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularSwaggerOauthRedirectView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularSwaggerSplitView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularSwaggerView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_spectacular
|
||||
- Member[views].Member[SpectacularYAMLAPIView]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_yasg
|
||||
- Member[utils].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- drf_yasg
|
||||
- Member[views].Member[APIView]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- dynamic_rest
|
||||
- Member[viewsets].Member[DynamicModelViewSet]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- embed_video
|
||||
- Member[fields].Member[EmbedVideoFormField]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - fastapi.APIRouter~Subclass
|
||||
- fastapi_utils
|
||||
- Member[cbv].Member[APIRouter]
|
||||
- - fastapi.APIRouter~Subclass
|
||||
- fastapi_utils
|
||||
- Member[inferring_router].Member[APIRouter]
|
||||
- - fastapi.APIRouter~Subclass
|
||||
- fastapi_utils
|
||||
- Member[inferring_router].Member[InferringRouter]
|
||||
@@ -0,0 +1,33 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[SwaggerView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[base].Member[APIDocsView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[base].Member[APISpecsView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[base].Member[MethodView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[base].Member[OAuthRedirect]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[marshmallow_apispec].Member[MethodView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[marshmallow_apispec].Member[SwaggerView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[utils].Member[MethodView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flasgger
|
||||
- Member[utils].Member[SwaggerView]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restful
|
||||
- Member[Resource]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restful_swagger_2
|
||||
- Member[Resource]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restful_swagger_2
|
||||
- Member[swagger].Member[Resource]
|
||||
@@ -0,0 +1,21 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restplus
|
||||
- Member[Resource]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restplus
|
||||
- Member[api].Member[Resource]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restplus
|
||||
- Member[api].Member[SwaggerView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restplus
|
||||
- Member[resource].Member[MethodView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restplus
|
||||
- Member[resource].Member[Resource]
|
||||
@@ -0,0 +1,21 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restx
|
||||
- Member[Resource]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restx
|
||||
- Member[api].Member[Resource]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restx
|
||||
- Member[api].Member[SwaggerView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restx
|
||||
- Member[resource].Member[MethodView]
|
||||
- - flask.MethodView~Subclass
|
||||
- flask_restx
|
||||
- Member[resource].Member[Resource]
|
||||
@@ -0,0 +1,18 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- form_utils
|
||||
- Member[forms].Member[BetterForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- form_utils
|
||||
- Member[forms].Member[BetterModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- form_utils
|
||||
- Member[forms].Member[PreviewForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- form_utils
|
||||
- Member[forms].Member[PreviewModelForm]
|
||||
@@ -0,0 +1,33 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[CookieWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[NamedUrlCookieWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[NamedUrlSessionWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[NamedUrlWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[SessionWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[WizardView]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[forms].Member[ManagementForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- formtools
|
||||
- Member[wizard].Member[views].Member[ManagementForm]
|
||||
@@ -0,0 +1,33 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[admin].Member[AdminGroupObjectPermissionsForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[admin].Member[AdminUserObjectPermissionsForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[admin].Member[GroupManage]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[admin].Member[GroupObjectPermissionsForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[admin].Member[UserManage]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[admin].Member[UserObjectPermissionsForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[forms].Member[BaseObjectPermissionsForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[forms].Member[GroupObjectPermissionsForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- guardian
|
||||
- Member[forms].Member[UserObjectPermissionsForm]
|
||||
@@ -0,0 +1,30 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[forms].Member[FacetedModelSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[forms].Member[FacetedSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[forms].Member[HighlightedModelSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[forms].Member[HighlightedSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[forms].Member[ModelSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[forms].Member[SearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[views].Member[FacetedSearchForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- haystack
|
||||
- Member[views].Member[ModelSearchForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- health_check
|
||||
- Member[views].Member[MainView]
|
||||
- - Django.Views.View~Subclass
|
||||
- health_check
|
||||
- Member[views].Member[TemplateView]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- hijack
|
||||
- Member[views].Member[AcquireUserView]
|
||||
- - Django.Views.View~Subclass
|
||||
- hijack
|
||||
- Member[views].Member[ReleaseUserView]
|
||||
- - Django.Views.View~Subclass
|
||||
- hijack
|
||||
- Member[views].Member[View]
|
||||
@@ -0,0 +1,42 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- import_export
|
||||
- Member[mixins].Member[ExportViewFormMixin]
|
||||
- - Django.Views.View~Subclass
|
||||
- import_export
|
||||
- Member[mixins].Member[FormView]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[admin].Member[ConfirmImportForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[admin].Member[ExportForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[admin].Member[ImportExportFormBase]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[admin].Member[ImportForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[forms].Member[ActionForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[forms].Member[ConfirmImportForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[forms].Member[ExportForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[forms].Member[ImportExportFormBase]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[forms].Member[ImportForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- import_export
|
||||
- Member[mixins].Member[ExportForm]
|
||||
@@ -0,0 +1,30 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- invitations
|
||||
- Member[views].Member[AcceptInvite]
|
||||
- - Django.Views.View~Subclass
|
||||
- invitations
|
||||
- Member[views].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- invitations
|
||||
- Member[views].Member[SendInvite]
|
||||
- - Django.Views.View~Subclass
|
||||
- invitations
|
||||
- Member[views].Member[SendJSONInvite]
|
||||
- - Django.Views.View~Subclass
|
||||
- invitations
|
||||
- Member[views].Member[View]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- invitations
|
||||
- Member[forms].Member[InvitationAdminAddForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- invitations
|
||||
- Member[forms].Member[InvitationAdminChangeForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- invitations
|
||||
- Member[forms].Member[InviteForm]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- jsonfield
|
||||
- Member[forms].Member[JSONField]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- markdownfield
|
||||
- Member[forms].Member[CharField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- markdownfield
|
||||
- Member[forms].Member[MarkdownFormField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- markdownfield
|
||||
- Member[models].Member[MarkdownFormField]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- mdeditor
|
||||
- Member[fields].Member[MDTextFormField]
|
||||
@@ -0,0 +1,24 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.db.models.Model~Subclass
|
||||
- model_utils
|
||||
- Member[models].Member[SaveSignalHandlingModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- model_utils
|
||||
- Member[models].Member[SoftDeletableModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- model_utils
|
||||
- Member[models].Member[StatusModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- model_utils
|
||||
- Member[models].Member[TimeFramedModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- model_utils
|
||||
- Member[models].Member[TimeStampedModel]
|
||||
- - Django.db.models.Model~Subclass
|
||||
- model_utils
|
||||
- Member[models].Member[UUIDModel]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- modelcluster
|
||||
- Member[forms].Member[ClusterForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- modelcluster
|
||||
- Member[forms].Member[ModelForm]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- modeltranslation
|
||||
- Member[forms].Member[NullCharField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- modeltranslation
|
||||
- Member[forms].Member[NullableField]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- modeltranslation
|
||||
- Member[forms].Member[TranslationModelForm]
|
||||
@@ -0,0 +1,18 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- mozilla_django_oidc
|
||||
- Member[views].Member[OIDCAuthenticationCallbackView]
|
||||
- - Django.Views.View~Subclass
|
||||
- mozilla_django_oidc
|
||||
- Member[views].Member[OIDCAuthenticationRequestView]
|
||||
- - Django.Views.View~Subclass
|
||||
- mozilla_django_oidc
|
||||
- Member[views].Member[OIDCLogoutView]
|
||||
- - Django.Views.View~Subclass
|
||||
- mozilla_django_oidc
|
||||
- Member[views].Member[View]
|
||||
@@ -0,0 +1,21 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- mptt
|
||||
- Member[forms].Member[TreeNodeChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- mptt
|
||||
- Member[forms].Member[TreeNodeMultipleChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- mptt
|
||||
- Member[forms].Member[TreeNodePositionField]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- mptt
|
||||
- Member[forms].Member[MPTTAdminForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- mptt
|
||||
- Member[forms].Member[MoveNodeForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- msal
|
||||
- Member[oauth2cli].Member[authcode].Member[BaseHTTPRequestHandler]
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- msal
|
||||
- Member[oauth2cli].Member[authcode].Member[_AuthCodeHandler]
|
||||
@@ -0,0 +1,39 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[APIHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[APIVersionHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[AuthenticatedFileHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[AuthenticatedHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[FileFindHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[FilesRedirectHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[IPythonHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[PrometheusMetricsHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[RedirectWithParams]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[Template404]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- notebook
|
||||
- Member[base].Member[handlers].Member[TrailingSlashHandler]
|
||||
@@ -0,0 +1,165 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ApplicationDelete]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ApplicationDetail]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ApplicationList]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ApplicationRegistration]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ApplicationUpdate]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[AuthorizationView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[AuthorizedTokenDeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[AuthorizedTokensListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ClientProtectedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ClientProtectedScopedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ConnectDiscoveryInfoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[IntrospectTokenView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[JwksInfoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ProtectedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ReadWriteScopedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[RevokeTokenView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[ScopedProtectedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[TokenView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[UserInfoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[ApplicationDelete]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[ApplicationDetail]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[ApplicationList]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[ApplicationRegistration]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[ApplicationUpdate]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[CreateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[DeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[DetailView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[ListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[application].Member[UpdateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[AuthorizationView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[BaseAuthorizationView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[RevokeTokenView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[TokenView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[generic].Member[ClientProtectedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[generic].Member[ClientProtectedScopedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[generic].Member[ProtectedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[generic].Member[ReadWriteScopedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[generic].Member[ScopedProtectedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[generic].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[introspect].Member[ClientProtectedScopedResourceView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[introspect].Member[IntrospectTokenView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[oidc].Member[ConnectDiscoveryInfoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[oidc].Member[JwksInfoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[oidc].Member[UserInfoView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[oidc].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[token].Member[AuthorizedTokenDeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[token].Member[AuthorizedTokensListView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[token].Member[DeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[token].Member[ListView]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- oauth2_provider
|
||||
- Member[forms].Member[AllowForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- oauth2_provider
|
||||
- Member[views].Member[base].Member[AllowForm]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- permissionedforms
|
||||
- Member[PermissionedModelForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- permissionedforms
|
||||
- Member[forms].Member[PermissionedForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- permissionedforms
|
||||
- Member[forms].Member[PermissionedModelForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- phonenumber_field
|
||||
- Member[formfields].Member[CharField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- phonenumber_field
|
||||
- Member[formfields].Member[PhoneNumberField]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- pinax
|
||||
- Member[ratings].Member[views].Member[RateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pinax
|
||||
- Member[ratings].Member[views].Member[View]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- plotly
|
||||
- Member[io].Member[_base_renderers].Member[BaseHTTPRequestHandler]
|
||||
@@ -0,0 +1,522 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- pulpcore
|
||||
- Member[filters].Member[ExpressionFilterField]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[APIRootView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[ListRepositoryVersionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[OrphansCleanupViewset]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[OrphansView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[PulpAPIRootView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[PulpImporterImportCheckView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[ReclaimSpaceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[RepairView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[SpectacularJSONAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[SpectacularRedocView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[SpectacularSwaggerView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[SpectacularYAMLAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[urls].Member[StatusView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[OrphansView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[PulpImporterImportCheckView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[RepairView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[StatusView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[importer].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[importer].Member[PulpImporterImportCheckView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[orphans].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[orphans].Member[OrphansView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[repair].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[repair].Member[RepairView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[status].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[views].Member[status].Member[StatusView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[AccessPolicyViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[AlternateContentSourceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ArtifactDistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ArtifactViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ContentRedirectContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[DistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[DomainViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[FilesystemExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[FilesystemExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[GroupRoleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[GroupUserViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[GroupViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ImmutableRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ImportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ImporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListDistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListPublicationViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListRemoteViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListRepositoryVersionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ListRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[OrphansCleanupViewset]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[PublicationViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[PulpExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[PulpExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[PulpImportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[PulpImporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[RBACContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ReadOnlyContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ReadOnlyRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[ReclaimSpaceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[RemoteViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[RepositoryVersionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[RepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[RoleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[SigningServiceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[TaskGroupViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[TaskScheduleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[TaskViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[UploadViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[UpstreamPulpViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[UserRoleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[UserViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[WorkerViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[access_policy].Member[AccessPolicyViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[access_policy].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[acs].Member[AlternateContentSourceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[acs].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[base].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[ArtifactViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[BaseContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[ContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[ListContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[ReadOnlyContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[content].Member[SigningServiceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[custom_filters].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[domain].Member[DomainViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[domain].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[ExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[ExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[FilesystemExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[FilesystemExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[PulpExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[exporter].Member[PulpExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[importer].Member[ImportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[importer].Member[ImporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[importer].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[importer].Member[PulpImportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[importer].Member[PulpImporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[orphans].Member[OrphansCleanupViewset]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[orphans].Member[ViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ArtifactDistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[BaseContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[BaseDistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[BasePublicationViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ContentRedirectContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[DistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ListContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ListDistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ListPublicationViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[PublicationViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[RBACContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[publication].Member[ReadOnlyDistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[reclaim].Member[ReclaimSpaceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[reclaim].Member[ViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[replica].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[replica].Member[UpstreamPulpViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[BaseRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[GenericViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[ImmutableRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[ListRemoteViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[ListRepositoryVersionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[ListRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[ReadOnlyRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[RemoteViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[RepositoryVersionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[repository].Member[RepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[task].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[task].Member[TaskGroupViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[task].Member[TaskScheduleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[task].Member[TaskViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[task].Member[WorkerViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[upload].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[upload].Member[UploadViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[GroupRoleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[GroupUserViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[GroupViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[RoleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[UserRoleViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[app].Member[viewsets].Member[user].Member[UserViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[content].Member[authentication].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[AlternateContentSourceViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ContentGuardViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[DistributionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ExportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ExporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ImmutableRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ImportViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ImporterViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[NamedModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[NoArtifactContentUploadViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[PublicationViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ReadOnlyContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[ReadOnlyRepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[RemoteViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[RepositoryVersionViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[RepositoryViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[SingleArtifactContentUploadViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[TaskGroupViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[TaskViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[content].Member[ContentViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[content].Member[NoArtifactContentUploadViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- pulpcore
|
||||
- Member[plugin].Member[viewsets].Member[content].Member[SingleArtifactContentUploadViewSet]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_flex_fields
|
||||
- Member[views].Member[FlexFieldsModelViewSet]
|
||||
@@ -0,0 +1,81 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- rest_framework
|
||||
- Member[fields].Member[FilePathField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- rest_framework
|
||||
- Member[fields].Member[ImageField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- rest_framework
|
||||
- Member[serializers].Member[FilePathField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- rest_framework
|
||||
- Member[serializers].Member[ImageField]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[authtoken].Member[views].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[compat].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[decorators].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[CreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[DestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[ListAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[ListCreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[RetrieveAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[RetrieveDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[RetrieveUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[RetrieveUpdateDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[generics].Member[UpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[routers].Member[APIRootView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[routers].Member[SchemaView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[schemas].Member[views].Member[APIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[schemas].Member[views].Member[SchemaView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[views].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[viewsets].Member[GenericViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[viewsets].Member[ModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[viewsets].Member[ReadOnlyModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework
|
||||
- Member[viewsets].Member[ViewSet]
|
||||
@@ -0,0 +1,66 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[BulkCreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[BulkDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[BulkModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[BulkUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[ListBulkCreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[ListBulkCreateDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[ListBulkCreateUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[ListBulkCreateUpdateDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[ListCreateBulkUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[ListCreateBulkUpdateDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[BulkCreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[BulkDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[BulkModelViewSet]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[BulkUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[ListBulkCreateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[ListBulkCreateDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[ListBulkCreateUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[ListBulkCreateUpdateDestroyAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[ListCreateBulkUpdateAPIView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_bulk
|
||||
- Member[generics].Member[ListCreateBulkUpdateDestroyAPIView]
|
||||
@@ -0,0 +1,27 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenBlacklistView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenObtainPairView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenObtainSlidingView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenRefreshSlidingView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenRefreshView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenVerifyView]
|
||||
- - Django.Views.View~Subclass
|
||||
- rest_framework_simplejwt
|
||||
- Member[views].Member[TokenViewBase]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- seleniumrequests
|
||||
- Member[request].Member[HTTPRequestHandler]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - flask.MethodView~Subclass
|
||||
- shakenfist_utilities
|
||||
- Member[api].Member[Resource]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- sorl
|
||||
- Member[thumbnail].Member[fields].Member[ImageFormField]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- sorl_thumbnail_serializer
|
||||
- Member[fields].Member[HyperlinkedSorlImageField]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- sortedm2m
|
||||
- Member[fields].Member[SortedMultipleChoiceField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- sortedm2m
|
||||
- Member[forms].Member[SortedMultipleChoiceField]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- taggit
|
||||
- Member[forms].Member[TagField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- taggit
|
||||
- Member[managers].Member[TagField]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- tastypie
|
||||
- Member[validation].Member[ModelForm]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- timezone_field
|
||||
- Member[TimeZoneFormField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- timezone_field
|
||||
- Member[forms].Member[TimeZoneFormField]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- tornado
|
||||
- Member[websocket].Member[WebSocketHandler]
|
||||
@@ -0,0 +1,18 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- tornado_proxy_handlers
|
||||
- Member[ProxyHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- tornado_proxy_handlers
|
||||
- Member[ProxyWSHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- tornado_proxy_handlers
|
||||
- Member[handlers].Member[ProxyHandler]
|
||||
- - tornado.web.RequestHandler~Subclass
|
||||
- tornado_proxy_handlers
|
||||
- Member[handlers].Member[ProxyWSHandler]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- treebeard
|
||||
- Member[forms].Member[MoveNodeForm]
|
||||
@@ -0,0 +1,168 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[views].Member[DeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[views].Member[IdempotentSessionWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[views].Member[PhoneDeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[views].Member[PhoneSetupView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[BackupTokensView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[DisableView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[LoginView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[PhoneDeleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[PhoneSetupView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[ProfileView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[QRGeneratorView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[SetupCompleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[urls].Member[SetupView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[BackupTokensView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[DisableView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[LoginView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[ProfileView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[QRGeneratorView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[SetupCompleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[SetupView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[BackupTokensView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[IdempotentSessionWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[LoginView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[QRGeneratorView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[SetupCompleteView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[SetupView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[View]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[profile].Member[DisableView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[profile].Member[FormView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[profile].Member[ProfileView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[profile].Member[TemplateView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[utils].Member[IdempotentSessionWizardView]
|
||||
- - Django.Views.View~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[utils].Member[SessionWizardView]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[forms].Member[AuthenticationTokenForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[forms].Member[BackupTokenForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[forms].Member[DeviceValidationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[forms].Member[DisableForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[forms].Member[MethodForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[forms].Member[TOTPDeviceForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[forms].Member[PhoneNumberForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[forms].Member[PhoneNumberMethodForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[views].Member[DeviceValidationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[plugins].Member[phonenumber].Member[views].Member[PhoneNumberMethodForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[AuthenticationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[AuthenticationTokenForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[BackupTokenForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[DeviceValidationForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[Form]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[MethodForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[core].Member[TOTPDeviceForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[profile].Member[DisableForm]
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- two_factor
|
||||
- Member[views].Member[utils].Member[ManagementForm]
|
||||
@@ -0,0 +1,15 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - Django.Forms.Field~Subclass
|
||||
- url_or_relative_url_field
|
||||
- Member[fields].Member[URLOrRelativeURLFormField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- url_or_relative_url_field
|
||||
- Member[forms].Member[URLField]
|
||||
- - Django.Forms.Field~Subclass
|
||||
- url_or_relative_url_field
|
||||
- Member[forms].Member[URLOrRelativeURLFormField]
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - cgi.FieldStorage~Subclass
|
||||
- webob
|
||||
- Member[compat].Member[FieldStorage]
|
||||
- - cgi.FieldStorage~Subclass
|
||||
- webob
|
||||
- Member[compat].Member[cgi_FieldStorage]
|
||||
@@ -0,0 +1,12 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- werkzeug
|
||||
- Member[serving].Member[BaseHTTPRequestHandler]
|
||||
- - http.server.BaseHTTPRequestHandler~Subclass
|
||||
- werkzeug
|
||||
- Member[serving].Member[WSGIRequestHandler]
|
||||
@@ -0,0 +1,9 @@
|
||||
# process-mrva-results 0.0.1
|
||||
extensions:
|
||||
- addsTo:
|
||||
extensible: typeModel
|
||||
pack: codeql/python-all
|
||||
data:
|
||||
- - django.forms.BaseForm~Subclass
|
||||
- wiki
|
||||
- Member[core].Member[plugins].Member[base].Member[PluginSidebarFormMixin]
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
private import python
|
||||
private import semmle.python.dataflow.new.DataFlow
|
||||
private import semmle.python.dataflow.new.internal.DataFlowDispatch
|
||||
|
||||
/**
|
||||
* INTERNAL: Do not use.
|
||||
@@ -16,13 +17,16 @@ abstract class SelfRefMixin extends Class {
|
||||
/**
|
||||
* Gets a reference to instances of this class, originating from a self parameter of
|
||||
* a method defined on this class.
|
||||
*
|
||||
* Note: TODO: This doesn't take MRO into account
|
||||
* Note: TODO: This doesn't take staticmethod/classmethod into account
|
||||
*/
|
||||
private DataFlow::TypeTrackingNode getASelfRef(DataFlow::TypeTracker t) {
|
||||
t.start() and
|
||||
result.(DataFlow::ParameterNode).getParameter() = this.getAMethod().getArg(0)
|
||||
exists(Class cls, Function meth |
|
||||
cls = getADirectSuperclass*(this) and
|
||||
meth = cls.getAMethod() and
|
||||
not isStaticmethod(meth) and
|
||||
not isClassmethod(meth) and
|
||||
result.(DataFlow::ParameterNode).getParameter() = meth.getArg(0)
|
||||
)
|
||||
or
|
||||
exists(DataFlow::TypeTracker t2 | result = this.getASelfRef(t2).track(t2, t))
|
||||
}
|
||||
@@ -30,9 +34,6 @@ abstract class SelfRefMixin extends Class {
|
||||
/**
|
||||
* Gets a reference to instances of this class, originating from a self parameter of
|
||||
* a method defined on this class.
|
||||
*
|
||||
* Note: TODO: This doesn't take MRO into account
|
||||
* Note: TODO: This doesn't take staticmethod/classmethod into account
|
||||
*/
|
||||
DataFlow::Node getASelfRef() { this.getASelfRef(DataFlow::TypeTracker::end()).flowsTo(result) }
|
||||
}
|
||||
|
||||
@@ -7,32 +7,22 @@
|
||||
|
||||
private import python
|
||||
private import semmle.python.dataflow.new.DataFlow
|
||||
private import semmle.python.dataflow.new.internal.ImportResolution
|
||||
private import semmle.python.ApiGraphs
|
||||
private import semmle.python.filters.Tests
|
||||
|
||||
// very much inspired by the draft at https://github.com/github/codeql/pull/5632
|
||||
private module NotExposed {
|
||||
module NotExposed {
|
||||
// Instructions:
|
||||
// This needs to be automated better, but for this prototype, here are some rough instructions:
|
||||
// 0) get a database of the library you are about to model
|
||||
// 1) fill out the `getAlreadyModeledClass` body below
|
||||
// 2) quick-eval the `quickEvalMe` predicate below, and copy the output to your modeling predicate
|
||||
class MySpec extends FindSubclassesSpec {
|
||||
MySpec() { this = "MySpec" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
// FILL ME OUT ! (but don't commit with any changes)
|
||||
none()
|
||||
// for example
|
||||
// result = API::moduleImport("rest_framework").getMember("views").getMember("APIView")
|
||||
}
|
||||
}
|
||||
|
||||
predicate quickEvalMe(string newImport) {
|
||||
newImport =
|
||||
"// imports generated by python/frameworks/internal/SubclassFinder.qll\n" + "this = API::" +
|
||||
concat(string newModelFullyQualified |
|
||||
newModel(any(MySpec spec), newModelFullyQualified, _, _, _)
|
||||
newModel(any(FindSubclassesSpec spec), newModelFullyQualified, _, _, _)
|
||||
|
|
||||
fullyQualifiedToApiGraphPath(newModelFullyQualified), " or this = API::"
|
||||
)
|
||||
@@ -78,14 +68,20 @@ private module NotExposed {
|
||||
|
||||
bindingset[this]
|
||||
abstract class FindSubclassesSpec extends string {
|
||||
/**
|
||||
* Gets an API node for a class that has already been modeled. You can include
|
||||
* `.getASubclass*()` without causing problems, but it is not needed.
|
||||
*/
|
||||
abstract API::Node getAlreadyModeledClass();
|
||||
|
||||
FindSubclassesSpec getSuperClass() { none() }
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `newModelFullyQualified` describes either a new subclass, or a new alias, belonging to `spec` that we should include in our automated modeling.
|
||||
* This new element is defined by `ast`, which is defined at `loc` in the module `mod`.
|
||||
*/
|
||||
query predicate newModel(
|
||||
predicate newModel(
|
||||
FindSubclassesSpec spec, string newModelFullyQualified, AstNode ast, Module mod, Location loc
|
||||
) {
|
||||
(
|
||||
@@ -93,7 +89,8 @@ private module NotExposed {
|
||||
or
|
||||
newDirectAlias(spec, newModelFullyQualified, ast, mod, loc)
|
||||
or
|
||||
newImportStar(spec, newModelFullyQualified, ast, mod, _, _, loc)
|
||||
newImportAlias(spec, newModelFullyQualified, mod, _, _, loc) and
|
||||
ast = mod
|
||||
)
|
||||
}
|
||||
|
||||
@@ -106,15 +103,30 @@ private module NotExposed {
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* Holds if `fullyQualifiedName` is already explicitly modeled in the `spec`.
|
||||
*
|
||||
* For specs that do `.getASubclass*()`, items found by following a `.getASubclass`
|
||||
* edge will not be considered explicitly modeled.
|
||||
*/
|
||||
bindingset[fullyQualifiedName]
|
||||
predicate alreadyModeled(FindSubclassesSpec spec, string fullyQualifiedName) {
|
||||
predicate alreadyExplicitlyModeled(FindSubclassesSpec spec, string fullyQualifiedName) {
|
||||
fullyQualifiedToApiGraphPath(fullyQualifiedName) = spec.getAlreadyModeledClass().getPath()
|
||||
}
|
||||
|
||||
predicate isNonTestProjectCode(AstNode ast) {
|
||||
not ast.getScope*() instanceof TestScope and
|
||||
not ast.getLocation().getFile().getRelativePath().matches("tests/%") and
|
||||
exists(ast.getLocation().getFile().getRelativePath())
|
||||
predicate isAllowedModule(Module mod) {
|
||||
// for now, we only want to model things in site-packages (since we know these are
|
||||
// libraries used by real code)
|
||||
mod.getFile().getAbsolutePath().matches("%/site-packages/%")
|
||||
or
|
||||
// for CI testing
|
||||
mod.getFile().getRelativePath().matches("%/find_subclass_test.py")
|
||||
}
|
||||
|
||||
predicate isTestCode(AstNode ast) {
|
||||
ast.getScope*() instanceof TestScope
|
||||
or
|
||||
ast.getLocation().getFile().getRelativePath().matches("tests/%")
|
||||
}
|
||||
|
||||
predicate hasAllStatement(Module mod) {
|
||||
@@ -147,40 +159,51 @@ private module NotExposed {
|
||||
* ```
|
||||
*/
|
||||
predicate newDirectAlias(
|
||||
FindSubclassesSpec spec, string newAliasFullyQualified, ImportMember importMember, Module mod,
|
||||
Location loc
|
||||
FindSubclassesSpec spec, string newAliasFullyQualified, Expr value, Module mod, Location loc
|
||||
) {
|
||||
importMember = newOrExistingModeling(spec).getAValueReachableFromSource().asExpr() and
|
||||
importMember.getScope() = mod and
|
||||
loc = importMember.getLocation() and
|
||||
(
|
||||
mod.isPackageInit() and
|
||||
newAliasFullyQualified = mod.getPackageName() + "." + importMember.getName()
|
||||
or
|
||||
not mod.isPackageInit() and
|
||||
newAliasFullyQualified = mod.getName() + "." + importMember.getName()
|
||||
) and
|
||||
(
|
||||
not hasAllStatement(mod)
|
||||
or
|
||||
mod.declaredInAll(importMember.getName())
|
||||
) and
|
||||
not alreadyModeled(spec, newAliasFullyQualified) and
|
||||
isNonTestProjectCode(importMember)
|
||||
exists(Alias alias | value = alias.getValue() |
|
||||
value = newOrExistingModeling(spec).getASubclass*().getAValueReachableFromSource().asExpr() and
|
||||
value.getScope() = mod and
|
||||
loc = value.getLocation() and
|
||||
exists(string base |
|
||||
mod.isPackageInit() and base = mod.getPackageName()
|
||||
or
|
||||
not mod.isPackageInit() and base = mod.getName()
|
||||
|
|
||||
newAliasFullyQualified = base + "." + alias.getAsname().(Name).getId()
|
||||
) and
|
||||
(
|
||||
not hasAllStatement(mod)
|
||||
or
|
||||
mod.declaredInAll(alias.getAsname().(Name).getId())
|
||||
) and
|
||||
not alreadyExplicitlyModeled(spec, newAliasFullyQualified) and
|
||||
not isTestCode(value) and
|
||||
isAllowedModule(mod)
|
||||
)
|
||||
}
|
||||
|
||||
/** same as `newDirectAlias` predicate, but handling `from <module> import *`, considering all `<member>`, where `<module>.<member>` belongs to `spec`. */
|
||||
predicate newImportStar(
|
||||
FindSubclassesSpec spec, string newAliasFullyQualified, ImportStar importStar, Module mod,
|
||||
API::Node relevantClass, string relevantName, Location loc
|
||||
/**
|
||||
* same as `newDirectAlias` predicate, but written in a generic way to handle any import (also import *).
|
||||
*
|
||||
* it might be safe to delete `newDirectAlias` with this in place, but have not done the testing yet.
|
||||
*/
|
||||
predicate newImportAlias(
|
||||
FindSubclassesSpec spec, string newAliasFullyQualified, Module mod, DataFlow::Node def,
|
||||
string relevantName, Location loc
|
||||
) {
|
||||
relevantClass = newOrExistingModeling(spec) and
|
||||
loc = importStar.getLocation() and
|
||||
importStar.getScope() = mod and
|
||||
// WHAT A HACK :D :D
|
||||
relevantClass.getPath() =
|
||||
relevantClass.getAPredecessor().getPath() + ".getMember(\"" + relevantName + "\")" and
|
||||
relevantClass.getAPredecessor().getAValueReachableFromSource().asExpr() = importStar.getModule() and
|
||||
loc = mod.getLocation() and
|
||||
exists(API::Node relevantClass, ControlFlowNode value |
|
||||
relevantClass = newOrExistingModeling(spec).getASubclass*() and
|
||||
ImportResolution::module_export(mod, relevantName, def) and
|
||||
value = relevantClass.getAValueReachableFromSource().asCfgNode() and
|
||||
(
|
||||
value = def.asVar().getDefinition().(AssignmentDefinition).getValue()
|
||||
or
|
||||
value = def.asCfgNode()
|
||||
)
|
||||
// value could be a ClassExpr if a new class is defined, or a Name if defining an alias
|
||||
) and
|
||||
(
|
||||
mod.isPackageInit() and
|
||||
newAliasFullyQualified = mod.getPackageName() + "." + relevantName
|
||||
@@ -193,8 +216,9 @@ private module NotExposed {
|
||||
or
|
||||
mod.declaredInAll(relevantName)
|
||||
) and
|
||||
not alreadyModeled(spec, newAliasFullyQualified) and
|
||||
isNonTestProjectCode(importStar)
|
||||
not alreadyExplicitlyModeled(spec, newAliasFullyQualified) and
|
||||
not isTestCode(mod) and
|
||||
isAllowedModule(mod)
|
||||
}
|
||||
|
||||
/** Holds if `classExpr` defines a new subclass that belongs to `spec`, which has the fully qualified name `newSubclassQualified`. */
|
||||
@@ -206,7 +230,8 @@ private module NotExposed {
|
||||
classExpr.getScope() = mod and
|
||||
newSubclassQualified = mod.getName() + "." + classExpr.getName() and
|
||||
loc = classExpr.getLocation() and
|
||||
not alreadyModeled(spec, newSubclassQualified) and
|
||||
isNonTestProjectCode(classExpr)
|
||||
not alreadyExplicitlyModeled(spec, newSubclassQualified) and
|
||||
not isTestCode(classExpr) and
|
||||
isAllowedModule(mod)
|
||||
}
|
||||
}
|
||||
|
||||
134
python/ql/src/meta/ClassHierarchy/Find.ql
Normal file
134
python/ql/src/meta/ClassHierarchy/Find.ql
Normal file
@@ -0,0 +1,134 @@
|
||||
/**
|
||||
* @name Find new subclasses to model
|
||||
* @id py/meta/find-subclasses-to-model
|
||||
* @kind table
|
||||
*/
|
||||
|
||||
import python
|
||||
import semmle.python.dataflow.new.DataFlow
|
||||
private import semmle.python.ApiGraphs
|
||||
import semmle.python.frameworks.internal.SubclassFinder::NotExposed
|
||||
private import semmle.python.frameworks.Flask
|
||||
private import semmle.python.frameworks.FastApi
|
||||
private import semmle.python.frameworks.Django
|
||||
private import semmle.python.frameworks.Tornado
|
||||
private import semmle.python.frameworks.Stdlib
|
||||
import semmle.python.frameworks.data.internal.ApiGraphModelsExtensions as Extensions
|
||||
|
||||
class FlaskViewClasses extends FindSubclassesSpec {
|
||||
FlaskViewClasses() { this = "flask.View~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() { result = Flask::Views::View::subclassRef() }
|
||||
}
|
||||
|
||||
class FlaskMethodViewClasses extends FindSubclassesSpec {
|
||||
FlaskMethodViewClasses() { this = "flask.MethodView~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() { result = Flask::Views::MethodView::subclassRef() }
|
||||
|
||||
override FlaskViewClasses getSuperClass() { any() }
|
||||
}
|
||||
|
||||
class FastApiRouter extends FindSubclassesSpec {
|
||||
FastApiRouter() { this = "fastapi.APIRouter~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() { result = FastApi::ApiRouter::cls() }
|
||||
}
|
||||
|
||||
class DjangoForms extends FindSubclassesSpec {
|
||||
DjangoForms() { this = "django.forms.BaseForm~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = any(Django::Forms::Form::ModeledSubclass subclass)
|
||||
}
|
||||
}
|
||||
|
||||
class DjangoView extends FindSubclassesSpec {
|
||||
DjangoView() { this = "Django.Views.View~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = any(Django::Views::View::ModeledSubclass subclass)
|
||||
}
|
||||
}
|
||||
|
||||
class DjangoField extends FindSubclassesSpec {
|
||||
DjangoField() { this = "Django.Forms.Field~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = any(Django::Forms::Field::ModeledSubclass subclass)
|
||||
}
|
||||
}
|
||||
|
||||
class DjangoModel extends FindSubclassesSpec {
|
||||
DjangoModel() { this = "Django.db.models.Model~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = PrivateDjango::DjangoImpl::DB::Models::Model::subclassRef()
|
||||
}
|
||||
}
|
||||
|
||||
class TornadoRequestHandler extends FindSubclassesSpec {
|
||||
TornadoRequestHandler() { this = "tornado.web.RequestHandler~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = Tornado::TornadoModule::Web::RequestHandler::subclassRef()
|
||||
}
|
||||
}
|
||||
|
||||
class WSGIServer extends FindSubclassesSpec {
|
||||
WSGIServer() { this = "wsgiref.simple_server.WSGIServer~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = StdlibPrivate::WsgirefSimpleServer::subclassRef()
|
||||
}
|
||||
}
|
||||
|
||||
class StdlibBaseHttpRequestHandler extends FindSubclassesSpec {
|
||||
StdlibBaseHttpRequestHandler() { this = "http.server.BaseHTTPRequestHandler~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = StdlibPrivate::BaseHttpRequestHandler::subclassRef()
|
||||
}
|
||||
}
|
||||
|
||||
class StdlibCgiFieldStorage extends FindSubclassesSpec {
|
||||
StdlibCgiFieldStorage() { this = "cgi.FieldStorage~Subclass" }
|
||||
|
||||
override API::Node getAlreadyModeledClass() {
|
||||
result = StdlibPrivate::Cgi::FieldStorage::subclassRef()
|
||||
}
|
||||
}
|
||||
|
||||
bindingset[fullyQualified]
|
||||
predicate fullyQualifiedToYamlFormat(string fullyQualified, string type2, string path) {
|
||||
exists(int firstDot | firstDot = fullyQualified.indexOf(".", 0, 0) |
|
||||
type2 = fullyQualified.prefix(firstDot) and
|
||||
path =
|
||||
("Member[" + fullyQualified.suffix(firstDot + 1).replaceAll(".", "].Member[") + "]")
|
||||
.replaceAll(".Member[__init__].", "")
|
||||
.replaceAll("Member[__init__].", "")
|
||||
)
|
||||
}
|
||||
|
||||
from FindSubclassesSpec spec, string newModelFullyQualified, string type2, string path, Module mod
|
||||
where
|
||||
newModel(spec, newModelFullyQualified, _, mod, _) and
|
||||
// Since a class C which is a subclass for flask.MethodView is always a subclass of
|
||||
// flask.View, and we chose to care about this distinction, in a naive approach we
|
||||
// would always record rows for _both_ specs... that's just wasteful, so instead we
|
||||
// only record the row for the more specific spec -- this is captured by the
|
||||
// .getSuperClass() method on a spec, which can links specs together in this way.
|
||||
// However, if the definition actually depends on some logic, like below, we should
|
||||
// still record both rows
|
||||
// ```
|
||||
// if <cond>:
|
||||
// class C(flask.View): ...
|
||||
// else:
|
||||
// class C(flask.MethodView): ...
|
||||
// ```
|
||||
not exists(FindSubclassesSpec subclass | subclass.getSuperClass() = spec |
|
||||
newModel(subclass, newModelFullyQualified, _, mod, _)
|
||||
) and
|
||||
fullyQualifiedToYamlFormat(newModelFullyQualified, type2, path) and
|
||||
not Extensions::typeModel(spec, type2, path)
|
||||
select spec.(string), type2, path
|
||||
119
python/ql/src/meta/ClassHierarchy/process-mrva-results.py
Normal file
119
python/ql/src/meta/ClassHierarchy/process-mrva-results.py
Normal file
@@ -0,0 +1,119 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import glob
|
||||
from pathlib import Path
|
||||
import json
|
||||
import subprocess
|
||||
from collections import defaultdict
|
||||
import yaml
|
||||
import shutil
|
||||
import os
|
||||
|
||||
VERSION = "process-mrva-results 0.0.1"
|
||||
|
||||
mad_path = Path(__file__).parent.parent.parent.parent / "lib/semmle/python/frameworks/data/internal/"
|
||||
|
||||
assert mad_path.exists(), mad_path
|
||||
|
||||
package_data = defaultdict(set)
|
||||
|
||||
# process data
|
||||
|
||||
class CodeQL:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def __enter__(self):
|
||||
self.proc = subprocess.Popen(['codeql', 'execute','cli-server'],
|
||||
executable=shutil.which('codeql'),
|
||||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=sys.stderr,
|
||||
env=os.environ.copy(),
|
||||
)
|
||||
return self
|
||||
def __exit__(self, type, value, tb):
|
||||
self.proc.stdin.write(b'["shutdown"]\0')
|
||||
self.proc.stdin.close()
|
||||
try:
|
||||
self.proc.wait(5)
|
||||
except:
|
||||
self.proc.kill()
|
||||
|
||||
def command(self, args):
|
||||
data = json.dumps(args)
|
||||
data_bytes = data.encode('utf-8')
|
||||
self.proc.stdin.write(data_bytes)
|
||||
self.proc.stdin.write(b'\0')
|
||||
self.proc.stdin.flush()
|
||||
res = b''
|
||||
while True:
|
||||
b = self.proc.stdout.read(1)
|
||||
if b == b'\0':
|
||||
return res.decode('utf-8')
|
||||
res += b
|
||||
|
||||
def wrap_in_template(data):
|
||||
return {
|
||||
"extensions": [
|
||||
{
|
||||
"addsTo": {
|
||||
"pack": "codeql/python-all",
|
||||
"extensible": "typeModel",
|
||||
},
|
||||
"data": data,
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
def parse_from_file(path: Path) -> set:
|
||||
if not path.exists():
|
||||
return set()
|
||||
|
||||
text = path.read_text()
|
||||
assert text.startswith(f"# {VERSION}\n"), f"{path}: {text[:100]}"
|
||||
|
||||
raw_data = yaml.safe_load(text)
|
||||
assert len(raw_data["extensions"]) == 1, path
|
||||
assert raw_data["extensions"][0]["addsTo"]["extensible"] == "typeModel", path
|
||||
|
||||
return set(tuple(x) for x in raw_data["extensions"][0]["data"])
|
||||
|
||||
|
||||
def gather_from_bqrs_results():
|
||||
with CodeQL() as codeql:
|
||||
for f in glob.glob(f"{sys.argv[1]}/**/results.bqrs", recursive=True):
|
||||
print(f"Processing {f}")
|
||||
|
||||
json_data = codeql.command(["bqrs", "decode", "--format=json", f])
|
||||
select = json.loads(json_data)
|
||||
|
||||
for t in select["#select"]["tuples"]:
|
||||
pkg = t[1]
|
||||
package_data[pkg].add(tuple(t))
|
||||
|
||||
def gather_from_existing():
|
||||
for f in glob.glob(f"{mad_path}/auto-*.model.yml", recursive=True):
|
||||
print(f"Processing {f}")
|
||||
|
||||
all_data = parse_from_file(Path(f))
|
||||
pkg = f.split("/")[-1].split(".")[0][5:]
|
||||
package_data[pkg].update(all_data)
|
||||
|
||||
gather_from_bqrs_results()
|
||||
|
||||
for pkg in package_data:
|
||||
pkg_path = mad_path / f"auto-{pkg}.model.yml"
|
||||
|
||||
print(f"Writing {pkg_path}")
|
||||
|
||||
all_data = parse_from_file(pkg_path)
|
||||
all_data.update(package_data[pkg])
|
||||
|
||||
as_lists = [list(t) for t in all_data]
|
||||
as_lists.sort()
|
||||
|
||||
data_for_yaml = wrap_in_template(as_lists)
|
||||
|
||||
pkg_path.write_text(f"# {VERSION}\n" + yaml.dump(data_for_yaml, indent=2))
|
||||
@@ -0,0 +1,16 @@
|
||||
| Django.Views.View~Subclass | find_subclass_test | Member[clash2] |
|
||||
| Django.Views.View~Subclass | find_subclass_test | Member[clash3] |
|
||||
| Django.Views.View~Subclass | find_subclass_test | Member[clash] |
|
||||
| flask.MethodView~Subclass | find_subclass_test | Member[C] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[A] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[B] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[ViewAliasInExcept] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[ViewAliasInTry] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[ViewAlias] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[ViewAlias_no_use] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[View] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[clash2] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[clash3] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[clash] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[complete_module_alias] |
|
||||
| flask.View~Subclass | find_subclass_test | Member[complete_module_alias_no_use] |
|
||||
@@ -0,0 +1 @@
|
||||
meta/ClassHierarchy/Find.ql
|
||||
@@ -0,0 +1,53 @@
|
||||
from flask.views import View
|
||||
import flask.views
|
||||
|
||||
class A(View):
|
||||
pass
|
||||
|
||||
class B(A):
|
||||
pass
|
||||
|
||||
class C(flask.views.MethodView):
|
||||
pass
|
||||
|
||||
ViewAlias = View
|
||||
print(ViewAlias)
|
||||
|
||||
ViewAlias_no_use = View
|
||||
|
||||
|
||||
try:
|
||||
from flask.views import View as ViewAliasInTry
|
||||
except:
|
||||
from flask.views import View as ViewAliasInExcept
|
||||
|
||||
|
||||
if cond:
|
||||
from flask.views import View as clash
|
||||
else:
|
||||
from django.views.generic import View as clash
|
||||
|
||||
if cond:
|
||||
from flask.views import View as clash2
|
||||
else:
|
||||
from django.views.generic import View as clash2
|
||||
print(clash2)
|
||||
|
||||
if cond:
|
||||
from flask.views import View as clash3
|
||||
else:
|
||||
from django.views.generic import View as clash3
|
||||
print(clash3)
|
||||
|
||||
import flask.views as containing_module_alias # $ MISSING
|
||||
# now `find_subclass_test.containing_module_alias.View` is an alias of flask.views.View
|
||||
|
||||
# NOTE: this is not valid code, since View is not a module... but it could be in some cases, like for xml.etree.ElementTree, which is actually not a class but a module 😕
|
||||
import flask.views.View as complete_module_alias
|
||||
print(complete_module_alias)
|
||||
|
||||
import flask.views.View as complete_module_alias_no_use
|
||||
|
||||
|
||||
def wrapper():
|
||||
return View # $ MISSING
|
||||
@@ -0,0 +1 @@
|
||||
semmle-extractor-options: --max-import-depth=0
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
from unknown import * #$ use=moduleImport("unknown")
|
||||
|
||||
# Currently missing, as we do not consider `hello` to be a `LocalSourceNode`, since it has flow
|
||||
# going into it from its corresponding `GlobalSsaVariable`.
|
||||
hello() #$ MISSING: use=moduleImport("unknown").getMember("hello").getReturn()
|
||||
# This used to be missing, as we did not consider `hello` to be a `LocalSourceNode`,
|
||||
# since it has flow going into it from its corresponding `GlobalSsaVariable`.
|
||||
hello() #$ use=moduleImport("unknown").getMember("hello").getReturn()
|
||||
|
||||
# We don't want our analysis to think that either `non_module_member` or `outer_bar` can
|
||||
# come from `from unknown import *`
|
||||
|
||||
Reference in New Issue
Block a user