[setuptools packaging] access modules via imports (#1969)

This commit is contained in:
radfish 2019-04-15 06:31:33 -04:00 committed by ZeroNet
parent 6d8f55cf75
commit f6e3a74567
23 changed files with 96 additions and 80 deletions

View file

@ -25,7 +25,8 @@ class ChartCollector(object):
def getCollectors(self):
collectors = {}
file_server = sys.modules["main"].file_server
import main
file_server = main.file_server
sites = file_server.sites
if not sites:
return collectors
@ -100,7 +101,8 @@ class ChartCollector(object):
return site_collectors
def getUniquePeers(self):
sites = sys.modules["main"].file_server.sites
import main
sites = main.file_server.sites
return set(itertools.chain.from_iterable(
[site.peers.keys() for site in sites.values()]
))
@ -168,7 +170,8 @@ class ChartCollector(object):
def collector(self):
collectors = self.getCollectors()
site_collectors = self.getSiteCollectors()
sites = sys.modules["main"].file_server.sites
import main
sites = main.file_server.sites
i = 0
while 1:
self.collectGlobal(collectors, self.last_values)

View file

@ -1,5 +1,5 @@
from Config import config
from Db import Db
from Db.Db import Db
import time

View file

@ -2,7 +2,7 @@ import time
import re
from Plugin import PluginManager
from Db import DbQuery
from Db.DbQuery import DbQuery
from Debug import Debug

View file

@ -8,6 +8,7 @@ from Plugin import PluginManager
from Config import config
from util import helper
from Debug import Debug
from Db import Db
@PluginManager.registerTo("UiRequest")
@ -40,8 +41,8 @@ class UiRequestPlugin(object):
import gc
import sys
from Ui import UiRequest
from Db import Db
from Crypt import CryptConnection
import main
hpy = None
@ -58,7 +59,6 @@ class UiRequestPlugin(object):
return
s = time.time()
main = sys.modules["main"]
# Style
yield """
@ -142,7 +142,8 @@ class UiRequestPlugin(object):
# Trackers
yield "<br><br><b>Trackers:</b><br>"
yield "<table class='trackers'><tr> <th>address</th> <th>request</th> <th>successive errors</th> <th>last_request</th></tr>"
for tracker_address, tracker_stat in sorted(sys.modules["Site.SiteAnnouncer"].global_stats.items()):
from Site import SiteAnnouncer # importing at the top of the file breaks plugins
for tracker_address, tracker_stat in sorted(SiteAnnouncer.global_stats.items()):
yield self.formatTableRow([
("%s", tracker_address),
("%s", tracker_stat["num_request"]),
@ -173,7 +174,7 @@ class UiRequestPlugin(object):
# Db
yield "<br><br><b>Db</b>:<br>"
for db in sys.modules["Db.Db"].opened_dbs:
for db in Db.opened_dbs:
tables = [row["name"] for row in db.execute("SELECT name FROM sqlite_master WHERE type = 'table'").fetchall()]
table_rows = {}
for table in tables:
@ -341,7 +342,7 @@ class UiRequestPlugin(object):
for obj in objs:
yield " - %.1fkb: %s<br>" % (self.getObjSize(obj, hpy), html.escape(repr(obj)))
from Site import Site
from Site.Site import Site
objs = [obj for obj in gc.get_objects() if isinstance(obj, Site)]
yield "<br>Sites (%s):<br>" % len(objs)
for obj in objs:
@ -636,7 +637,6 @@ class UiRequestPlugin(object):
assert data == data_unpacked, "%s != %s" % (data_unpacked, data)
# Db
from Db import Db
import sqlite3
yield "<br>Db: (version: %s, API: %s)<br>" % (sqlite3.sqlite_version, sqlite3.version)
@ -668,12 +668,12 @@ class UiRequestPlugin(object):
with benchmark("Open x 10", 0.13):
for i in range(10):
db = Db(schema, "%s/benchmark.db" % config.data_dir)
db = Db.Db(schema, "%s/benchmark.db" % config.data_dir)
db.checkTables()
db.close()
yield "."
db = Db(schema, "%s/benchmark.db" % config.data_dir)
db = Db.Db(schema, "%s/benchmark.db" % config.data_dir)
db.checkTables()
import json

View file

@ -19,8 +19,9 @@ class ActionsPlugin(object):
global notificationicon, winfolders
from .lib import notificationicon, winfolders
import gevent.threadpool
import main
self.main = sys.modules["main"]
self.main = main
fs_encoding = sys.getfilesystemencoding()

View file

@ -5,6 +5,7 @@ import json
from Config import config
from Plugin import PluginManager
from Crypt import CryptBitcoin
from User import UserManager
from . import UserPlugin
try:
@ -16,7 +17,7 @@ except Exception as err:
@PluginManager.registerTo("UiRequest")
class UiRequestPlugin(object):
def __init__(self, *args, **kwargs):
self.user_manager = sys.modules["User.UserManager"].user_manager
self.user_manager = UserManager.user_manager
super(UiRequestPlugin, self).__init__(*args, **kwargs)
# Create new user and inject user welcome message if necessary
@ -135,7 +136,7 @@ class UiWebsocketPlugin(object):
script += "$('#button_notification').on('click', function() { zeroframe.cmd(\"userLoginForm\", []); });"
self.cmd("injectScript", script)
# Delete from user_manager
user_manager = sys.modules["User.UserManager"].user_manager
user_manager = UserManager.user_manager
if self.user.master_address in user_manager.users:
if not config.multiuser_local:
del user_manager.users[self.user.master_address]
@ -149,7 +150,7 @@ class UiWebsocketPlugin(object):
# Login form submit
def responseUserLogin(self, master_seed):
user_manager = sys.modules["User.UserManager"].user_manager
user_manager = UserManager.user_manager
user = user_manager.get(CryptBitcoin.privatekeyToAddress(master_seed))
if not user:
user = user_manager.create(master_seed=master_seed)