[setuptools packaging] access modules via imports (#1969)
This commit is contained in:
parent
6d8f55cf75
commit
f6e3a74567
23 changed files with 96 additions and 80 deletions
|
@ -745,8 +745,8 @@ class UiRequest(object):
|
|||
# Debug last error
|
||||
def actionDebug(self):
|
||||
# Raise last error from DebugHook
|
||||
import sys
|
||||
last_error = sys.modules["main"].DebugHook.last_error
|
||||
import main
|
||||
last_error = main.DebugHook.last_error
|
||||
if last_error:
|
||||
raise last_error[0](last_error[1]).with_traceback(last_error[2])
|
||||
else:
|
||||
|
|
|
@ -34,16 +34,16 @@ class UiWSGIHandler(WSGIHandler):
|
|||
except Exception as err:
|
||||
logging.error("UiWSGIHandler websocket error: %s" % Debug.formatException(err))
|
||||
if config.debug: # Allow websocket errors to appear on /Debug
|
||||
import sys
|
||||
sys.modules["main"].DebugHook.handleError()
|
||||
import main
|
||||
main.DebugHook.handleError()
|
||||
else: # Standard HTTP request
|
||||
try:
|
||||
super(UiWSGIHandler, self).run_application()
|
||||
except Exception as err:
|
||||
logging.error("UiWSGIHandler error: %s" % Debug.formatException(err))
|
||||
if config.debug: # Allow websocket errors to appear on /Debug
|
||||
import sys
|
||||
sys.modules["main"].DebugHook.handleError()
|
||||
import main
|
||||
main.DebugHook.handleError()
|
||||
|
||||
def handle(self):
|
||||
# Save socket to be able to close them properly on exit
|
||||
|
@ -160,7 +160,8 @@ class UiServer:
|
|||
self.server.serve_forever()
|
||||
except Exception as err:
|
||||
self.log.error("Web interface bind error, must be running already, exiting.... %s" % err)
|
||||
sys.modules["main"].file_server.stop()
|
||||
import main
|
||||
main.file_server.stop()
|
||||
self.log.debug("Stopped.")
|
||||
|
||||
def stop(self):
|
||||
|
|
|
@ -50,7 +50,8 @@ class UiWebsocket(object):
|
|||
if self.site.address == config.homepage and not self.site.page_requested:
|
||||
# Add open fileserver port message or closed port error to homepage at first request after start
|
||||
self.site.page_requested = True # Dont add connection notification anymore
|
||||
file_server = sys.modules["main"].file_server
|
||||
import main
|
||||
file_server = main.file_server
|
||||
if not file_server.port_opened or file_server.tor_manager.start_onions is None:
|
||||
self.site.page_requested = False # Not ready yet, check next time
|
||||
else:
|
||||
|
@ -84,7 +85,8 @@ class UiWebsocket(object):
|
|||
self.handleRequest(req)
|
||||
except Exception as err:
|
||||
if config.debug: # Allow websocket errors to appear on /Debug
|
||||
sys.modules["main"].DebugHook.handleError()
|
||||
import main
|
||||
main.DebugHook.handleError()
|
||||
self.log.error("WebSocket handleRequest error: %s \n %s" % (Debug.formatException(err), message))
|
||||
if not self.hasPlugin("Multiuser"):
|
||||
self.cmd("error", "Internal error: %s" % Debug.formatException(err, "html"))
|
||||
|
@ -105,7 +107,8 @@ class UiWebsocket(object):
|
|||
"Please check your configuration.")
|
||||
])
|
||||
|
||||
file_server = sys.modules["main"].file_server
|
||||
import main
|
||||
file_server = main.file_server
|
||||
if any(file_server.port_opened.values()):
|
||||
self.site.notifications.append([
|
||||
"done",
|
||||
|
@ -233,7 +236,8 @@ class UiWebsocket(object):
|
|||
self.response(args[0], result)
|
||||
except Exception as err:
|
||||
if config.debug: # Allow websocket errors to appear on /Debug
|
||||
sys.modules["main"].DebugHook.handleError()
|
||||
import main
|
||||
main.DebugHook.handleError()
|
||||
self.log.error("WebSocket handleRequest error: %s" % Debug.formatException(err))
|
||||
self.cmd("error", "Internal error: %s" % Debug.formatException(err, "html"))
|
||||
|
||||
|
@ -318,7 +322,8 @@ class UiWebsocket(object):
|
|||
return ret
|
||||
|
||||
def formatServerInfo(self):
|
||||
file_server = sys.modules["main"].file_server
|
||||
import main
|
||||
file_server = main.file_server
|
||||
if file_server.port_opened == {}:
|
||||
ip_external = None
|
||||
else:
|
||||
|
@ -548,7 +553,8 @@ class UiWebsocket(object):
|
|||
self.response(to, "ok")
|
||||
else:
|
||||
if len(site.peers) == 0:
|
||||
if any(sys.modules["main"].file_server.port_opened.values()) or sys.modules["main"].file_server.tor_manager.start_onions:
|
||||
import main
|
||||
if any(main.file_server.port_opened.values()) or main.file_server.tor_manager.start_onions:
|
||||
if notification:
|
||||
self.cmd("notification", ["info", _["No peers found, but your content is ready to access."]])
|
||||
if callback:
|
||||
|
@ -1106,10 +1112,11 @@ class UiWebsocket(object):
|
|||
)
|
||||
websocket.cmd("updating")
|
||||
|
||||
sys.modules["main"].update_after_shutdown = True
|
||||
import main
|
||||
main.update_after_shutdown = True
|
||||
SiteManager.site_manager.save()
|
||||
sys.modules["main"].file_server.stop()
|
||||
sys.modules["main"].ui_server.stop()
|
||||
main.file_server.stop()
|
||||
main.ui_server.stop()
|
||||
|
||||
self.cmd(
|
||||
"confirm",
|
||||
|
@ -1118,15 +1125,17 @@ class UiWebsocket(object):
|
|||
)
|
||||
|
||||
def actionServerPortcheck(self, to):
|
||||
file_server = sys.modules["main"].file_server
|
||||
import main
|
||||
file_server = main.file_server
|
||||
file_server.portCheck()
|
||||
self.response(to, file_server.port_opened)
|
||||
|
||||
def actionServerShutdown(self, to, restart=False):
|
||||
import main
|
||||
if restart:
|
||||
sys.modules["main"].restart_after_shutdown = True
|
||||
sys.modules["main"].file_server.stop()
|
||||
sys.modules["main"].ui_server.stop()
|
||||
main.restart_after_shutdown = True
|
||||
main.file_server.stop()
|
||||
main.ui_server.stop()
|
||||
|
||||
def actionServerShowdirectory(self, to, directory="backup", inner_path=""):
|
||||
if self.request.env["REMOTE_ADDR"] != "127.0.0.1":
|
||||
|
@ -1182,7 +1191,8 @@ class UiWebsocket(object):
|
|||
value = False
|
||||
else:
|
||||
value = True
|
||||
tor_manager = sys.modules["main"].file_server.tor_manager
|
||||
import main
|
||||
tor_manager = main.file_server.tor_manager
|
||||
tor_manager.request("SETCONF UseBridges=%i" % value)
|
||||
|
||||
if key == "trackers_file":
|
||||
|
@ -1192,6 +1202,6 @@ class UiWebsocket(object):
|
|||
logging.getLogger('').setLevel(logging.getLevelName(config.log_level))
|
||||
|
||||
if key == "ip_external":
|
||||
gevent.spawn(sys.modules["main"].file_server.portCheck)
|
||||
gevent.spawn(main.file_server.portCheck)
|
||||
|
||||
self.response(to, "ok")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue