We have support for loading custom modules for scoring mechanisms, rankers etc from compstates. Currently these are imported in the same environment as all the rest of the code, including slightly surprising modifications to sys.path.
Should/could we consider some kind of isolation - multiprocessing, subprocesses, or subinterpeters perhaps - to give these a more predictable environment, contain any leakage of changes to interpreter globals, and make it easier to clean up after a compstate is unloaded?
(From a discussion with @PeterJCLaw)
We have support for loading custom modules for scoring mechanisms, rankers etc from compstates. Currently these are imported in the same environment as all the rest of the code, including slightly surprising modifications to
sys.path.Should/could we consider some kind of isolation - multiprocessing, subprocesses, or subinterpeters perhaps - to give these a more predictable environment, contain any leakage of changes to interpreter globals, and make it easier to clean up after a compstate is unloaded?
(From a discussion with @PeterJCLaw)