Move all code that is used by both client and server to a new base sub-package (addresses part of #45). If I didn't miss anything, base doesn't depend on any outside modules and client only imports from itself and from base.
The remaining modules are going to be moved to a server sub-package but I defer this to a separate PR to keep diffs managable.
While moving add_cmd_line_params, I saw that it uses exec() to modify the base_dict. It's probably not really a problem here, but I have some aversion to exec(), especially when it is fed with user-input. So I rewrote that function to avoid exec() and while doing so also made it a bit more robust and improved error messages.
Move all code that is used by both client and server to a new
base
sub-package (addresses part of #45). If I didn't miss anything,base
doesn't depend on any outside modules andclient
only imports from itself and frombase
. The remaining modules are going to be moved to aserver
sub-package but I defer this to a separate PR to keep diffs managable.While moving
add_cmd_line_params
, I saw that it usesexec()
to modify the base_dict. It's probably not really a problem here, but I have some aversion toexec()
, especially when it is fed with user-input. So I rewrote that function to avoidexec()
and while doing so also made it a bit more robust and improved error messages.