RFC - definition of a runner class using as much of the existing code as possible#404
RFC - definition of a runner class using as much of the existing code as possible#404syntron wants to merge 131 commits intoOpenModelica:masterfrom
Conversation
* rename ModelicaSystemCmd => ModelExecutionCmd * rename OMCSessionRunData => ModelExecutionData * create class ModelExecutionException * move some code: * OMCSession.omc_run_data_update() => merge into ModelExecutionCmd.define() * OMCSession.run_model_executable() => ModelExecutionData.run()
…delExecutionException
* this prepares a version of OMCSession which is independend of OMC as these functions where the last two which needed sendExpression() in basic ModelicaSystem functionality
* store data as numpy.float64 - allows to define None values * split get*() function into Initial values and Final values
…tinuous data handling
…delExecutionException
…mmand) the following classes are not changed - these are obsolete: - OMCSessionZMQ - OMCSessionCmd
Sorry I haven't got time to look into this yet. |
yes - this is the plan; the one RFC is way too big / too much changes to get an easy overview ... |
|
Summary of the changes in these RFC; the elements will be provided as single PRs. Basic concept / plan:
This means for some period of time, the new interface and the compatibility layer can exist in parallel (versions Steps for the implementation (see PRs below):
I tried to order the PRs based on the steps (A) to (H) but some will be out of order. If the PRs are merged, please try PRs based on this RFC (using the branch name in my fork syntron:OMPython as reference; I will use this comment to link the PRs step by step): (step A)
(step B)
(step C)
(step D)
(step E)
(step F)
=> status syntron_RFC step G & H are still to be reordered |
|
PRs of step A: (A001) simplify_workflow_Test - PR #411 moved to the end / rebase needed: The final state can be found at https://github.com/syntron/OMPython/tree/mergeA |
Content (lots of changes / these will be splitted into several PRs if the general approach is approved):
Compared to PR #401 this solution:
|instead ofUnionFurther changes could do additional modifications such that the 3rd party packages (ZMQ) are not needed at all in the runner code path.
All tests are running without error / tested in https://github.com/syntron/OMPython/actions/runs/20865402893
Please comment!