Ideally, user should be able to download the OpenRVDAS code and run a basic listener without having to install other modules. Currently, some components like LogfileReader import some non-default modules (like parse), which throw errors when they're imported by Listener.
Either make those imports conditional inside the component where they're used (so import parse only gets called if someone instantiates a LogfileReader) or embed the import in a try...except block and record whether the import succeeded, so you can complain if it failed and they try to use the class that depends on it.
Ideally, user should be able to download the OpenRVDAS code and run a basic listener without having to install other modules. Currently, some components like LogfileReader import some non-default modules (like parse), which throw errors when they're imported by Listener.
Either make those imports conditional inside the component where they're used (so
import parse
only gets called if someone instantiates a LogfileReader) or embed the import in atry...except
block and record whether the import succeeded, so you can complain if it failed and they try to use the class that depends on it.