GP-6744: Add a type-checking task for Python packages.

This commit is contained in:
Dan
2026-04-22 16:20:38 +00:00
parent ef04a80d91
commit a7b37a14c6
6 changed files with 56 additions and 20 deletions

View File

@@ -41,6 +41,10 @@ tasks.assemblePyPackage {
}
}
tasks.typeCheckPyPackage {
environment("PYTHONPATH", project(":Debugger-rmi-trace").file("build/pypkg/src"))
}
task buildTlb(type: Exec) {
def tmpBatch = file("build/buildTlb.bat")

View File

@@ -26,3 +26,7 @@ dependencies {
// Only for Help :/
api project(':Debugger-rmi-trace')
}
tasks.typeCheckPyPackage {
environment("PYTHONPATH", project(":Debugger-rmi-trace").file("build/pypkg/src"))
}

View File

@@ -26,3 +26,7 @@ dependencies {
// Only for Help :/
api project(':Debugger-rmi-trace')
}
tasks.typeCheckPyPackage {
environment("PYTHONPATH", project(":Debugger-rmi-trace").file("build/pypkg/src"))
}

View File

@@ -27,3 +27,7 @@ dependencies {
api project(':Debugger-rmi-trace')
api project(':Debugger-agent-gdb')
}
tasks.typeCheckPyPackage {
environment("PYTHONPATH", project(":Debugger-rmi-trace").file("build/pypkg/src"))
}

View File

@@ -28,6 +28,6 @@ dependencies {
api project(':Debugger-rmi-trace')
}
tasks.assemblePyPackage {
tasks.typeCheckPyPackage {
environment("PYTHONPATH", project(":Debugger-rmi-trace").file("build/pypkg/src"))
}

View File

@@ -41,6 +41,26 @@ task assemblePyPackage(type: Copy) {
into "build/pypkg/"
}
task typeCheckPyPackage(type: Exec) {
dependsOn assemblePyPackage
inputs.files(assemblePyPackage)
doFirst {
if (rootProject.PYTHON3 == null) {
throw new GradleException("A supported version of Python [${PYTHON_SUPPORTED}] was not found!")
}
file("build/pypkg/src").listFiles().each { pkg ->
if (pkg.isDirectory() && new File(pkg, "__init__.py").isFile()) {
args "-p", pkg.name
}
}
}
workingDir { file("build/pypkg/src") }
commandLine rootProject.PYTHON3
args "-m", "mypy"
}
task buildPyPackage {
dependsOn assemblePyPackage
ext.dist = { file("build/pypkg/dist") }