From bb46ee7fc1242d3a942b018fc7d604c1be62bd29 Mon Sep 17 00:00:00 2001 From: Fabian Dill Date: Mon, 17 Oct 2022 01:08:31 +0200 Subject: [PATCH] WebHost: optimize imports --- WebHost.py | 1 - WebHostLib/__init__.py | 6 +++--- WebHostLib/api/__init__.py | 4 ++-- WebHostLib/api/generate.py | 5 ++--- WebHostLib/api/user.py | 3 ++- WebHostLib/autolauncher.py | 16 ++++++++-------- WebHostLib/check.py | 2 +- WebHostLib/customserver.py | 5 +++-- WebHostLib/downloads.py | 2 +- WebHostLib/generate.py | 18 +++++++++--------- WebHostLib/landing.py | 8 ++++++-- WebHostLib/misc.py | 3 ++- WebHostLib/models.py | 2 +- WebHostLib/options.py | 11 ++++++----- WebHostLib/stats.py | 4 ++-- WebHostLib/tracker.py | 12 ++++++------ WebHostLib/upload.py | 14 +++++++------- 17 files changed, 61 insertions(+), 55 deletions(-) diff --git a/WebHost.py b/WebHost.py index 4c07e8b1..ce8443db 100644 --- a/WebHost.py +++ b/WebHost.py @@ -1,5 +1,4 @@ import os -import sys import multiprocessing import logging import typing diff --git a/WebHostLib/__init__.py b/WebHostLib/__init__.py index f9c49c5a..c979b400 100644 --- a/WebHostLib/__init__.py +++ b/WebHostLib/__init__.py @@ -1,12 +1,12 @@ -import os -import uuid import base64 +import os import socket +import uuid -from pony.flask import Pony from flask import Flask from flask_caching import Cache from flask_compress import Compress +from pony.flask import Pony from werkzeug.routing import BaseConverter from Utils import title_sorted diff --git a/WebHostLib/api/__init__.py b/WebHostLib/api/__init__.py index 80c60a09..bac25255 100644 --- a/WebHostLib/api/__init__.py +++ b/WebHostLib/api/__init__.py @@ -1,11 +1,11 @@ """API endpoints package.""" -from uuid import UUID from typing import List, Tuple +from uuid import UUID from flask import Blueprint, abort -from ..models import Room, Seed from .. import cache +from ..models import Room, Seed api_endpoints = Blueprint('api', __name__, url_prefix="/api") diff --git a/WebHostLib/api/generate.py b/WebHostLib/api/generate.py index 45cca66e..0f090039 100644 --- a/WebHostLib/api/generate.py +++ b/WebHostLib/api/generate.py @@ -1,16 +1,15 @@ import json import pickle - from uuid import UUID -from . import api_endpoints from flask import request, session, url_for from pony.orm import commit from WebHostLib import app -from WebHostLib.models import Generation, STATE_QUEUED, Seed, STATE_ERROR from WebHostLib.check import get_yaml_data, roll_options from WebHostLib.generate import get_meta +from WebHostLib.models import Generation, STATE_QUEUED, Seed, STATE_ERROR +from . import api_endpoints @api_endpoints.route('/generate', methods=['POST']) diff --git a/WebHostLib/api/user.py b/WebHostLib/api/user.py index 5c563daf..116d3afa 100644 --- a/WebHostLib/api/user.py +++ b/WebHostLib/api/user.py @@ -1,6 +1,7 @@ from flask import session, jsonify +from pony.orm import select -from WebHostLib.models import * +from WebHostLib.models import Room, Seed from . import api_endpoints, get_players diff --git a/WebHostLib/autolauncher.py b/WebHostLib/autolauncher.py index 77445ead..8de73ba1 100644 --- a/WebHostLib/autolauncher.py +++ b/WebHostLib/autolauncher.py @@ -1,14 +1,14 @@ from __future__ import annotations -import logging -import json -import multiprocessing -import threading -from datetime import timedelta, datetime -import sys -import typing -import time +import json +import logging +import multiprocessing import os +import sys +import threading +import time +import typing +from datetime import timedelta, datetime from pony.orm import db_session, select, commit diff --git a/WebHostLib/check.py b/WebHostLib/check.py index a4e2f518..cd45dff4 100644 --- a/WebHostLib/check.py +++ b/WebHostLib/check.py @@ -1,7 +1,7 @@ import zipfile from typing import * -from flask import request, flash, redirect, url_for, session, render_template +from flask import request, flash, redirect, url_for, render_template from WebHostLib import app diff --git a/WebHostLib/customserver.py b/WebHostLib/customserver.py index 6272633f..59eb1d3d 100644 --- a/WebHostLib/customserver.py +++ b/WebHostLib/customserver.py @@ -10,13 +10,14 @@ import random import socket import threading import time + import websockets +from pony.orm import db_session, commit, select import Utils -from .models import db_session, Room, select, commit, Command, db - from MultiServer import Context, server, auto_shutdown, ServerCommandProcessor, ClientMessageProcessor from Utils import get_public_ipv4, get_public_ipv6, restricted_loads, cache_argsless +from .models import Room, Command, db class CustomClientMessageProcessor(ClientMessageProcessor): diff --git a/WebHostLib/downloads.py b/WebHostLib/downloads.py index 0386d1b0..eba0c265 100644 --- a/WebHostLib/downloads.py +++ b/WebHostLib/downloads.py @@ -1,5 +1,5 @@ -import zipfile import json +import zipfile from io import BytesIO from flask import send_file, Response, render_template diff --git a/WebHostLib/generate.py b/WebHostLib/generate.py index 15067e13..a9b1cb76 100644 --- a/WebHostLib/generate.py +++ b/WebHostLib/generate.py @@ -1,23 +1,23 @@ -import os -import tempfile -import random import json +import os +import pickle +import random +import tempfile import zipfile from collections import Counter from typing import Dict, Optional, Any -from Utils import __version__ from flask import request, flash, redirect, url_for, session, render_template +from pony.orm import commit, db_session -from worlds.alttp.EntranceRandomizer import parse_arguments -from Main import main as ERmain from BaseClasses import seeddigits, get_seed from Generate import handle_name, PlandoSettings -import pickle - -from .models import Generation, STATE_ERROR, STATE_QUEUED, commit, db_session, Seed, UUID +from Main import main as ERmain +from Utils import __version__ from WebHostLib import app +from worlds.alttp.EntranceRandomizer import parse_arguments from .check import get_yaml_data, roll_options +from .models import Generation, STATE_ERROR, STATE_QUEUED, Seed, UUID from .upload import upload_zip_to_db diff --git a/WebHostLib/landing.py b/WebHostLib/landing.py index 377758ed..14e90cc2 100644 --- a/WebHostLib/landing.py +++ b/WebHostLib/landing.py @@ -1,7 +1,11 @@ +from datetime import timedelta, datetime + from flask import render_template +from pony.orm import count + from WebHostLib import app, cache -from .models import * -from datetime import timedelta +from .models import Room, Seed + @app.route('/', methods=['GET', 'POST']) @cache.cached(timeout=300) # cache has to appear under app route for caching to work diff --git a/WebHostLib/misc.py b/WebHostLib/misc.py index 6978e27c..f78ec392 100644 --- a/WebHostLib/misc.py +++ b/WebHostLib/misc.py @@ -3,10 +3,11 @@ import os import jinja2.exceptions from flask import request, redirect, url_for, render_template, Response, session, abort, send_from_directory +from pony.orm import count, commit, db_session -from .models import count, Seed, commit, Room, db_session, Command, UUID, uuid4 from worlds.AutoWorld import AutoWorldRegister from . import app, cache +from .models import Seed, Room, Command, UUID, uuid4 def get_world_theme(game_name: str): diff --git a/WebHostLib/models.py b/WebHostLib/models.py index 70f0318f..0dc67a51 100644 --- a/WebHostLib/models.py +++ b/WebHostLib/models.py @@ -1,6 +1,6 @@ from datetime import datetime from uuid import UUID, uuid4 -from pony.orm import * +from pony.orm import Database, PrimaryKey, Required, Set, Optional, buffer, LongStr db = Database() diff --git a/WebHostLib/options.py b/WebHostLib/options.py index db1e57fd..fc13e2c2 100644 --- a/WebHostLib/options.py +++ b/WebHostLib/options.py @@ -1,13 +1,14 @@ +import json import logging import os -from Utils import __version__, local_path -from jinja2 import Template -import yaml -import json import typing -from worlds.AutoWorld import AutoWorldRegister +import yaml +from jinja2 import Template + import Options +from Utils import __version__, local_path +from worlds.AutoWorld import AutoWorldRegister handled_in_js = {"start_inventory", "local_items", "non_local_items", "start_hints", "start_location_hints", "exclude_locations"} diff --git a/WebHostLib/stats.py b/WebHostLib/stats.py index 54f5e598..e30ac820 100644 --- a/WebHostLib/stats.py +++ b/WebHostLib/stats.py @@ -1,14 +1,14 @@ +import typing from collections import Counter, defaultdict from colorsys import hsv_to_rgb from datetime import datetime, timedelta, date from math import tau -import typing +from bokeh.colors import RGB from bokeh.embed import components from bokeh.models import HoverTool from bokeh.plotting import figure, ColumnDataSource from bokeh.resources import INLINE -from bokeh.colors import RGB from flask import render_template from pony.orm import select diff --git a/WebHostLib/tracker.py b/WebHostLib/tracker.py index 8bbf7465..c28fb84e 100644 --- a/WebHostLib/tracker.py +++ b/WebHostLib/tracker.py @@ -1,19 +1,19 @@ import collections +import datetime import typing from typing import Counter, Optional, Dict, Any, Tuple +from uuid import UUID from flask import render_template from werkzeug.exceptions import abort -import datetime -from uuid import UUID +from MultiServer import Context +from NetUtils import SlotType +from Utils import restricted_loads +from worlds import lookup_any_item_id_to_name, lookup_any_location_id_to_name from worlds.alttp import Items from . import app, cache from .models import Room -from Utils import restricted_loads -from worlds import lookup_any_item_id_to_name, lookup_any_location_id_to_name -from MultiServer import Context -from NetUtils import SlotType alttp_icons = { "Blue Shield": r"https://www.zeldadungeon.net/wiki/images/8/85/Fighters-Shield.png", diff --git a/WebHostLib/upload.py b/WebHostLib/upload.py index 173411bb..22e1353f 100644 --- a/WebHostLib/upload.py +++ b/WebHostLib/upload.py @@ -1,19 +1,19 @@ -import typing -import zipfile -import json import base64 -import MultiServer +import json +import typing import uuid +import zipfile from io import BytesIO from flask import request, flash, redirect, url_for, session, render_template from pony.orm import flush, select -from . import app -from .models import Seed, Room, Slot +import MultiServer +from NetUtils import NetworkSlot, SlotType from Utils import VersionException, __version__ from worlds.Files import AutoPatchRegister -from NetUtils import NetworkSlot, SlotType +from . import app +from .models import Seed, Room, Slot banned_zip_contents = (".sfc",)