From 9b94e524bb5f1d43ab579ae9ca8f07282edfa1da Mon Sep 17 00:00:00 2001 From: justcool393 Date: Sat, 25 Feb 2023 12:43:01 -0600 Subject: [PATCH] fix `MovedIn20Warning` shouldn't actually cause any issues currently since SQLAlchemy is (to my annoyance) import *ed everywhere but. --- files/__main__.py | 3 --- files/classes/alts.py | 2 +- files/classes/award.py | 2 +- files/classes/badges.py | 2 +- files/classes/base.py | 3 +++ files/classes/clients.py | 2 +- files/classes/comment.py | 3 ++- files/classes/domains.py | 2 +- files/classes/exiles.py | 2 +- files/classes/flags.py | 2 +- files/classes/follows.py | 2 +- files/classes/marsey.py | 2 +- files/classes/mod.py | 2 +- files/classes/mod_logs.py | 2 +- files/classes/notifications.py | 2 +- files/classes/saves.py | 2 +- files/classes/sub.py | 2 +- files/classes/sub_block.py | 2 +- files/classes/submission.py | 3 ++- files/classes/subscriptions.py | 2 +- files/classes/user.py | 1 + files/classes/userblock.py | 2 +- files/classes/usernotes.py | 4 ++-- files/classes/views.py | 2 +- files/classes/volunteer_janitor.py | 2 +- files/classes/votes.py | 2 +- migrations/env.py | 2 +- readme.md | 2 +- 28 files changed, 32 insertions(+), 29 deletions(-) create mode 100644 files/classes/base.py diff --git a/files/__main__.py b/files/__main__.py index 32a7c0ba2..ba89a85ce 100644 --- a/files/__main__.py +++ b/files/__main__.py @@ -11,7 +11,6 @@ from flask_limiter import Limiter from flask_compress import Compress from flask_mail import Mail import flask_profiler -from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker, scoped_session from sqlalchemy import * import gevent @@ -150,8 +149,6 @@ limiter = Limiter( enabled=app.config['RATE_LIMITER_ENABLED'], ) -Base = declarative_base() - engine = create_engine(app.config['DATABASE_URL']) db_session = scoped_session(sessionmaker(bind=engine, autoflush=False)) diff --git a/files/classes/alts.py b/files/classes/alts.py index d84a45403..1c4fed299 100644 --- a/files/classes/alts.py +++ b/files/classes/alts.py @@ -1,5 +1,5 @@ from sqlalchemy import * -from files.__main__ import Base +from files.classes.base import Base class Alt(Base): diff --git a/files/classes/award.py b/files/classes/award.py index b3c9a660e..0d28bdad5 100644 --- a/files/classes/award.py +++ b/files/classes/award.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from os import environ from files.helpers.lazy import lazy from files.helpers.const import * diff --git a/files/classes/badges.py b/files/classes/badges.py index 41c76d3dc..76d5966d7 100644 --- a/files/classes/badges.py +++ b/files/classes/badges.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base, app +from files.classes.base import Base from os import environ from files.helpers.lazy import lazy from files.helpers.const import * diff --git a/files/classes/base.py b/files/classes/base.py new file mode 100644 index 000000000..59be70308 --- /dev/null +++ b/files/classes/base.py @@ -0,0 +1,3 @@ +from sqlalchemy.orm import declarative_base + +Base = declarative_base() diff --git a/files/classes/clients.py b/files/classes/clients.py index 731c4b785..bdbf108d8 100644 --- a/files/classes/clients.py +++ b/files/classes/clients.py @@ -3,7 +3,7 @@ from sqlalchemy import * from sqlalchemy.orm import relationship from .submission import Submission from .comment import Comment -from files.__main__ import Base +from files.classes.base import Base from files.helpers.lazy import lazy from files.helpers.const import * import time diff --git a/files/classes/comment.py b/files/classes/comment.py index 88f5df1db..0aceb7dcb 100644 --- a/files/classes/comment.py +++ b/files/classes/comment.py @@ -6,7 +6,8 @@ from urllib.parse import urlencode, urlparse, parse_qs from flask import * from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base, app +from files.classes.base import Base +from files.__main__ import app from files.classes.votes import CommentVote from files.helpers.const import * from files.helpers.content import moderated_body diff --git a/files/classes/domains.py b/files/classes/domains.py index f9acb7b32..abce5ff5e 100644 --- a/files/classes/domains.py +++ b/files/classes/domains.py @@ -1,5 +1,5 @@ from sqlalchemy import * -from files.__main__ import Base +from files.classes.base import Base class BannedDomain(Base): diff --git a/files/classes/exiles.py b/files/classes/exiles.py index f02da7133..20efd4f50 100644 --- a/files/classes/exiles.py +++ b/files/classes/exiles.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base class Exile(Base): diff --git a/files/classes/flags.py b/files/classes/flags.py index 12804d7a0..5893d627c 100644 --- a/files/classes/flags.py +++ b/files/classes/flags.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from files.helpers.lazy import lazy from files.helpers.const import * import time diff --git a/files/classes/follows.py b/files/classes/follows.py index c372adafb..9215200b9 100644 --- a/files/classes/follows.py +++ b/files/classes/follows.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base import time class Follow(Base): diff --git a/files/classes/marsey.py b/files/classes/marsey.py index 4aba397f9..06edcc208 100644 --- a/files/classes/marsey.py +++ b/files/classes/marsey.py @@ -1,5 +1,5 @@ from sqlalchemy import * -from files.__main__ import Base +from files.classes.base import Base class Marsey(Base): __tablename__ = "marseys" diff --git a/files/classes/mod.py b/files/classes/mod.py index fb8812a95..e13fee4f4 100644 --- a/files/classes/mod.py +++ b/files/classes/mod.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from files.helpers.lazy import * import time diff --git a/files/classes/mod_logs.py b/files/classes/mod_logs.py index 278a1a5ed..e21e3685b 100644 --- a/files/classes/mod_logs.py +++ b/files/classes/mod_logs.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base import time from files.helpers.lazy import lazy from os import environ diff --git a/files/classes/notifications.py b/files/classes/notifications.py index a8a190513..fb414b067 100644 --- a/files/classes/notifications.py +++ b/files/classes/notifications.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base import time class Notification(Base): diff --git a/files/classes/saves.py b/files/classes/saves.py index 1e89898b6..0880553b7 100644 --- a/files/classes/saves.py +++ b/files/classes/saves.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base class SaveRelationship(Base): diff --git a/files/classes/sub.py b/files/classes/sub.py index 04780cfda..f45535881 100644 --- a/files/classes/sub.py +++ b/files/classes/sub.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from files.helpers.lazy import lazy from os import environ from .sub_block import * diff --git a/files/classes/sub_block.py b/files/classes/sub_block.py index 9a41b0664..d4a621ec6 100644 --- a/files/classes/sub_block.py +++ b/files/classes/sub_block.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base class SubBlock(Base): diff --git a/files/classes/submission.py b/files/classes/submission.py index b8abd7464..bf1e8faa9 100644 --- a/files/classes/submission.py +++ b/files/classes/submission.py @@ -7,7 +7,8 @@ from urllib.parse import urlparse from flask import render_template from sqlalchemy import * from sqlalchemy.orm import relationship, deferred -from files.__main__ import Base, app +from files.classes.base import Base +from files.__main__ import app from files.helpers.const import * from files.helpers.content import moderated_body from files.helpers.lazy import lazy diff --git a/files/classes/subscriptions.py b/files/classes/subscriptions.py index 72a58a104..d25091a3e 100644 --- a/files/classes/subscriptions.py +++ b/files/classes/subscriptions.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base class Subscription(Base): __tablename__ = "subscriptions" diff --git a/files/classes/user.py b/files/classes/user.py index edfccfb1b..776b21599 100644 --- a/files/classes/user.py +++ b/files/classes/user.py @@ -1,6 +1,7 @@ from sqlalchemy.orm import deferred, aliased from secrets import token_hex import pyotp +from files.classes.base import Base from files.helpers.media import * from files.helpers.const import * from .alts import Alt diff --git a/files/classes/userblock.py b/files/classes/userblock.py index f9e3cb8b6..435062392 100644 --- a/files/classes/userblock.py +++ b/files/classes/userblock.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base class UserBlock(Base): diff --git a/files/classes/usernotes.py b/files/classes/usernotes.py index 665691d72..7ca7e5c38 100644 --- a/files/classes/usernotes.py +++ b/files/classes/usernotes.py @@ -2,7 +2,7 @@ import time from flask import * from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from files.helpers.const import * from enum import Enum from sqlalchemy import Enum as EnumType @@ -63,4 +63,4 @@ class UserNote(Base): 'tag': self.tag.value } - return data \ No newline at end of file + return data diff --git a/files/classes/views.py b/files/classes/views.py index 29a206577..8f2df926e 100644 --- a/files/classes/views.py +++ b/files/classes/views.py @@ -1,6 +1,6 @@ from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from files.helpers.lazy import * import time diff --git a/files/classes/volunteer_janitor.py b/files/classes/volunteer_janitor.py index aa2e07417..cacb10755 100644 --- a/files/classes/volunteer_janitor.py +++ b/files/classes/volunteer_janitor.py @@ -1,6 +1,6 @@ import enum -from files.__main__ import Base +from files.classes.base import Base from sqlalchemy import * from sqlalchemy.orm import relationship diff --git a/files/classes/votes.py b/files/classes/votes.py index 1112d01b6..07ea0744f 100644 --- a/files/classes/votes.py +++ b/files/classes/votes.py @@ -1,7 +1,7 @@ from flask import * from sqlalchemy import * from sqlalchemy.orm import relationship -from files.__main__ import Base +from files.classes.base import Base from files.helpers.lazy import lazy import time diff --git a/migrations/env.py b/migrations/env.py index e23a1cc4c..21a05d5e4 100644 --- a/migrations/env.py +++ b/migrations/env.py @@ -22,7 +22,7 @@ logger = logging.getLogger('alembic.env') # add your model's MetaData object here # for 'autogenerate' support -from files.__main__ import Base +from files.classes.base import Base target_metadata = Base.metadata config.set_main_option( diff --git a/readme.md b/readme.md index 40a920dac..9a40b41c1 100644 --- a/readme.md +++ b/readme.md @@ -53,7 +53,7 @@ As an example, let's say we want to add a column `is_flagged` to the `comments` 1. Update the `Comment` model in `files/classes/comment.py` ```python - from files.__main__ import Base + from files.classes.base import Base class Comment(Base): __tablename__ = "comments" id = Column(Integer, primary_key=True)