Moptipy

Latest version: v0.9.136

Safety actively analyzes 683530 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 33

0.9.117

Python 3.12 uses multi-threading.
The parallel experiment execution via forking cannot be made to work properly, as it may lead to deadlocks and other issues in Python 3.12 due to the multi-threading.
We can also not use the `spawn` or `forkserver` contexts to create new processes, because they require that every shared data must be pickled.
Unfortunately, lambdas, which we basically use everywhere to create instance and algorithm objects in the experiment execution, cannot be pickled.
There is just no way to make this work.
Thus, I removed it entirely.
If we want parallel experiments, we just have to execute the experiment program multiple times in parallel.
This seems to be the safest method.

We also stepped to pycommons 0.8.45, which offers improved static testing and also uses the newest pylint version.
By applying this also to the `tests` folder, lots of additional issues were found and removed.

0.9.116

We wanted to use "spawn" as multiprocessing context, because "fork" is deprecated.
However, "spawn" cannot be used as it cannot pickle lambdas and almost all of our experiments use lambdas to generate algorithms and instances.
Without changing almost all code for experiment generation, right now, "spawn" is not usable.
In the long-term future, we will have to change the experiment generation facility entirely, probably to launch the python interpreter with the same command line arguments as the original process but with using only 1 CPU core or something.
This will have several other implications that need to be dealt with.
But it cannot be done now.

0.9.115

0.9.113

fixed bug that leads to division by zero if total_fes == 2 in _check_max_time_millis

0.9.112

using new version of pycommons and dependency stepping

0.9.111

Path filtering allows us to skip specific paths during log parsing.

Page 4 of 33

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.