Mosaik 3.2.0 released
The mosaik team is thrilled to introduce the latest release, mosaik 3.2. Now, let’s explore the new features.
One notable addition is the incorporation of a visualization tool to simplify understanding the debug information:
Among others, we included a dataflow graph, that shows the direction of the dataflow between simulators and if the connection is time-shifted/weak.
The execution graph shows the order in which the simulators are executed.
The execution time graph shows the execution time of the different simulators and you can also plot execution time per simulator.
We have an additional enhancement for Windows users: Starting now, you can open a new console window for simulators, providing a more comprehensive overview of the simulation process.
On another note, we made the decision to shift from SimPy to asyncio, primarily because of its more robust and active development. With this change, errors connected to a maximum packet size for messages between simulators should be fixed. We paid off a technical debt that we have carried for a long time.
In addition we released the mosaik-api-v3 in a seperate package. This will enable users to have simulators using different versions of the mosaik-api in the same virtual environment in the future. With this change we want to make it possible to continue the development of mosaik and its API without causing the users breaking changes with a new API release. The plan is that you can stay on your API version as long as the current mosaik version supports it and can develop new adapters with newer API versions or update your existing adapters one by one.
We also have some minor changes.
- We solved a bug related to incorrect triggering in certain cases.
- We lifted the restriction that only one weak connection per cicle is allowed. You can no w have as many weak connections as you want.
An overview of all changes, can be found in the issues in GitLab.
Have fun with the new version! If you see more potential to improve mosaik or find a bug, feel free to create an issue on GitLab.