Skip to content

Commit

Permalink
Python: add type hinting to python code.
Browse files Browse the repository at this point in the history
Types are checked using mypy.

Fixes #10394.
  • Loading branch information
kriben committed Aug 9, 2023
1 parent d36bf92 commit 954b60c
Show file tree
Hide file tree
Showing 31 changed files with 529 additions and 293 deletions.
12 changes: 6 additions & 6 deletions .github/workflows/AppFwkUnitTest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ jobs:
run: |
execute_process(
COMMAND cmake
-S Fwk/AppFwk
-S Fwk
-B cmakebuild
-G Ninja
RESULT_VARIABLE result
Expand All @@ -70,13 +70,13 @@ jobs:
- name: Run Unit Tests
shell: bash
run: |
cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/cafPdmCore_UnitTests
cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/cafPdmXml_UnitTests
cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/cafProjectDataModel_UnitTests
cmakebuild/cafPdmScripting/cafPdmScripting_UnitTests/cafPdmScripting_UnitTests
cmakebuild/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/cafPdmCore_UnitTests
cmakebuild/AppFwk/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/cafPdmXml_UnitTests
cmakebuild/AppFwk/cafProjectDataModel/cafProjectDataModel_UnitTests/cafProjectDataModel_UnitTests
cmakebuild/AppFwk/cafPdmScripting/cafPdmScripting_UnitTests/cafPdmScripting_UnitTests
- name: Run Unit Tests Windows (does not work on Linux)
if: contains( matrix.os, 'windows')
shell: bash
run: |
cmakebuild/cafUserInterface/cafUserInterface_UnitTests/cafUserInterface_UnitTests
cmakebuild/AppFwk/cafUserInterface/cafUserInterface_UnitTests/cafUserInterface_UnitTests
8 changes: 8 additions & 0 deletions .github/workflows/ResInsightWithCache.yml
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,14 @@ jobs:
run: |
cmakebuild/ApplicationExeCode/ResInsight --unittest
- name: (Python) Check types using mypy
if: matrix.config.build-python-module
shell: bash
run: |
${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} -m pip install mypy types-protobuf
cd GrpcInterface/Python/rips
${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} -m mypy *.py generated/generated_classes.py
- name: Run pytest
if: matrix.config.build-python-module
env:
Expand Down
8 changes: 4 additions & 4 deletions ApplicationLibCode/Adm/RiaVersionInfo.py.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@
# Python version of RiaVersionInfo.h
# Just sets version constants

RESINSIGHT_MAJOR_VERSION = "@RESINSIGHT_MAJOR_VERSION@"
RESINSIGHT_MINOR_VERSION = "@RESINSIGHT_MINOR_VERSION@"
RESINSIGHT_PATCH_VERSION = "@RESINSIGHT_PATCH_VERSION@"
RESINSIGHT_MAJOR_VERSION : str = "@RESINSIGHT_MAJOR_VERSION@"
RESINSIGHT_MINOR_VERSION : str = "@RESINSIGHT_MINOR_VERSION@"
RESINSIGHT_PATCH_VERSION : str = "@RESINSIGHT_PATCH_VERSION@"

PYTHON_GRPC_PROTOC_VERSION = "@PYTHON_GRPC_PROTOC_VERSION@"
PYTHON_GRPC_PROTOC_VERSION : str = "@PYTHON_GRPC_PROTOC_VERSION@"
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "RicVec3dPickEventHandler.h"

#include "cafCmdFeatureManager.h"
#include "cafPdmObjectScriptingCapability.h"
#include "cafPdmUiPickableLineEditor.h"
#include "cafPdmUiPushButtonEditor.h"
#include "cafPdmUiTextEditor.h"
Expand All @@ -44,7 +45,7 @@ CAF_PDM_SOURCE_INIT( RimTextAnnotation, "RimTextAnnotation" );
//--------------------------------------------------------------------------------------------------
RimTextAnnotation::RimTextAnnotation()
{
CAF_PDM_InitObject( "TextAnnotation", ":/TextAnnotation16x16.png" );
CAF_PDM_InitScriptableObject( "TextAnnotation", ":/TextAnnotation16x16.png" );
setUi3dEditorTypeName( RicTextAnnotation3dEditor::uiEditorTypeName() );

CAF_PDM_InitField( &m_anchorPointXyd, "AnchorPointXyd", Vec3d::ZERO, "Anchor Point" );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
#include "RimWellPath.h"
#include "RimWellPathValve.h"

#include "cafPdmObjectScriptingCapability.h"
#include "cafPdmUiDateEditor.h"
#include "cafPdmUiDoubleSliderEditor.h"

Expand All @@ -42,7 +43,7 @@ CAF_PDM_SOURCE_INIT( RimPerforationInterval, "Perforation" );
//--------------------------------------------------------------------------------------------------
RimPerforationInterval::RimPerforationInterval()
{
CAF_PDM_InitObject( "Perforation", ":/PerforationInterval16x16.png" );
CAF_PDM_InitScriptableObject( "Perforation", ":/PerforationInterval16x16.png" );

CAF_PDM_InitField( &m_startMD, "StartMeasuredDepth", 0.0, "Start MD" );
CAF_PDM_InitField( &m_endMD, "EndMeasuredDepth", 0.0, "End MD" );
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#include "RimWellPath.h"
#include "RimWellPathFractureCollection.h"

#include "cafPdmObjectScriptingCapability.h"
#include "cafPdmUiDoubleSliderEditor.h"

CAF_PDM_SOURCE_INIT( RimWellPathFracture, "WellPathFracture" );
Expand All @@ -35,7 +36,7 @@ CAF_PDM_SOURCE_INIT( RimWellPathFracture, "WellPathFracture" );
//--------------------------------------------------------------------------------------------------
RimWellPathFracture::RimWellPathFracture()
{
CAF_PDM_InitObject( "Fracture", ":/FractureSymbol16x16.png" );
CAF_PDM_InitScriptableObject( "Fracture", ":/FractureSymbol16x16.png" );

CAF_PDM_InitField( &m_measuredDepth, "MeasuredDepth", 0.0f, "Measured Depth Location" );
m_measuredDepth.uiCapability()->setUiEditorTypeName( caf::PdmUiDoubleSliderEditor::uiEditorTypeName() );
Expand Down
3 changes: 2 additions & 1 deletion ApplicationLibCode/ProjectDataModel/RimColorLegend.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
#include "RimColorLegendItem.h"

#include "cafPdmFieldReorderCapability.h"
#include "cafPdmObjectScriptingCapability.h"

#include <algorithm>

Expand All @@ -34,7 +35,7 @@ CAF_PDM_SOURCE_INIT( RimColorLegend, "ColorLegend" );
//--------------------------------------------------------------------------------------------------
RimColorLegend::RimColorLegend()
{
CAF_PDM_InitObject( "ColorLegend", ":/Legend.png" );
CAF_PDM_InitScriptableObject( "ColorLegend", ":/Legend.png" );

CAF_PDM_InitField( &m_colorLegendName, "ColorLegendName", QString( "" ), "Color Legend Name" );

Expand Down
3 changes: 2 additions & 1 deletion ApplicationLibCode/ProjectDataModel/RimRoffCase.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
#include "RimEclipseInputPropertyCollection.h"
#include "RimReservoirCellResultsStorage.h"

#include "cafPdmObjectScriptingCapability.h"
#include "cafProgressInfo.h"

#include <QDir>
Expand All @@ -46,7 +47,7 @@ CAF_PDM_SOURCE_INIT( RimRoffCase, "RimRoffCase" );
RimRoffCase::RimRoffCase()
: RimEclipseCase()
{
CAF_PDM_InitObject( "RimRoffCase", ":/EclipseInput48x48.png" );
CAF_PDM_InitScriptableObject( "RimRoffCase", ":/EclipseInput48x48.png" );
}

//--------------------------------------------------------------------------------------------------
Expand Down
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -703,7 +703,6 @@ add_subdirectory(Fwk/AppFwk/cafPdmCvf)
add_subdirectory(Fwk/AppFwk/CommonCode)
add_subdirectory(Fwk/AppFwk/cafVizExtensions)

option(CAF_CVF_SCRIPTING "" ON)
add_subdirectory(Fwk/AppFwk/cafPdmScripting)
add_subdirectory(Fwk/AppFwk/cafCommandFeatures)

Expand Down
16 changes: 3 additions & 13 deletions Fwk/AppFwk/cafPdmScripting/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
project(cafPdmScripting)

option(CAF_CVF_SCRIPTING "Enable CVF-data support in Scripting" OFF)

# Unity Build
if(CAF_ENABLE_UNITY_BUILD)
message("Cmake Unity build is enabled on : ${PROJECT_NAME}")
Expand Down Expand Up @@ -30,21 +28,13 @@ set(PROJECT_FILES
cafPdmMarkdownGenerator.cpp
cafPdmMarkdownBuilder.h
cafPdmMarkdownBuilder.cpp
)

set(CAF_LIBS cafProjectDataModel)

if(CAF_CVF_SCRIPTING)
list(
APPEND
PROJECT_FILES
cafPdmFieldScriptingCapabilityCvfColor3.h
cafPdmFieldScriptingCapabilityCvfColor3.cpp
cafPdmFieldScriptingCapabilityCvfVec3d.h
cafPdmFieldScriptingCapabilityCvfVec3d.cpp
)
list(APPEND CAF_LIBS cafPdmCvf)
endif()
)

set(CAF_LIBS cafProjectDataModel cafPdmCvf)

add_library(${PROJECT_NAME} ${PROJECT_FILES})

Expand Down
Loading

0 comments on commit 954b60c

Please sign in to comment.