diff --git a/files/classes/group.py b/files/classes/group.py
index bb6824544..525e607f2 100644
--- a/files/classes/group.py
+++ b/files/classes/group.py
@@ -36,7 +36,7 @@ class Group(Base):
@property
@lazy
def member_ids(self):
- return {x.user_id for x in self.memberships if x.approved_utc}
+ return set(x.user_id for x in self.memberships if x.approved_utc)
@property
@lazy
diff --git a/files/classes/user.py b/files/classes/user.py
index 57295162d..b2126c2fe 100644
--- a/files/classes/user.py
+++ b/files/classes/user.py
@@ -614,8 +614,8 @@ class User(Base):
@property
@lazy
def all_twoway_blocks(self):
- return {x[0] for x in g.db.query(UserBlock.target_id).filter_by(user_id=self.id).all() + \
- g.db.query(UserBlock.user_id).filter_by(target_id=self.id).all()}
+ return set([x[0] for x in g.db.query(UserBlock.target_id).filter_by(user_id=self.id).all() + \
+ g.db.query(UserBlock.user_id).filter_by(target_id=self.id).all()])
def validate_2fa(self, token):
@@ -1109,7 +1109,7 @@ class User(Base):
@property
@lazy
def muters(self):
- return {[0] for x in g.db.query(UserMute.user_id).filter_by(target_id=self.id)}
+ return set(x[0] for x in g.db.query(UserMute.user_id).filter_by(target_id=self.id))
def get_relationship_count(self, relationship_cls):
diff --git a/files/helpers/alerts.py b/files/helpers/alerts.py
index 9aca117df..345c28cce 100644
--- a/files/helpers/alerts.py
+++ b/files/helpers/alerts.py
@@ -154,10 +154,10 @@ def NOTIFY_USERS(text, v, oldtext=None, ghost=False, obj=None, followers_ping=Tr
if word in text:
notify_users.add(id)
- names = {m.group(1) for m in mention_regex.finditer(text)}
+ names = set(m.group(1) for m in mention_regex.finditer(text))
if oldtext:
- oldnames = {m.group(1) for m in mention_regex.finditer(oldtext)}
+ oldnames = set(m.group(1) for m in mention_regex.finditer(oldtext))
names = names - oldnames
user_ids = get_users(names, ids_only=True, graceful=True)
@@ -193,22 +193,22 @@ def NOTIFY_USERS(text, v, oldtext=None, ghost=False, obj=None, followers_ping=Tr
return 'everyone'
elif i.group(1) == 'jannies':
group = None
- member_ids = {[0] for x in g.db.query(User.id).filter(User.admin_level > 0, User.id != AEVANN_ID)}
+ member_ids = set(x[0] for x in g.db.query(User.id).filter(User.admin_level > 0, User.id != AEVANN_ID))
elif i.group(1) == 'holejannies':
if not get_obj_hole(obj):
abort(403, "!holejannies can only be used inside holes!")
group = None
- member_ids = {[0] for x in g.db.query(Mod.user_id).filter_by(hole=obj.hole)}
+ member_ids = set(x[0] for x in g.db.query(Mod.user_id).filter_by(hole=obj.hole))
elif i.group(1) == 'followers':
if not followers_ping:
abort(403, f"You can't use !followers in posts!")
group = None
- member_ids = {[0] for x in g.db.query(Follow.user_id).filter_by(target_id=v.id)}
+ member_ids = set(x[0] for x in g.db.query(Follow.user_id).filter_by(target_id=v.id))
elif i.group(1) == 'commenters':
if not commenters_ping_post_id:
abort(403, "You can only use !commenters in comments made under posts!")
group = None
- member_ids = {[0] for x in g.db.query(User.id).join(Comment, Comment.author_id == User.id).filter(Comment.parent_post == commenters_ping_post_id)} - {v.id}
+ member_ids = set(x[0] for x in g.db.query(User.id).join(Comment, Comment.author_id == User.id).filter(Comment.parent_post == commenters_ping_post_id)) - {v.id}
else:
group = g.db.get(Group, i.group(1))
if not group: continue
@@ -242,7 +242,7 @@ def NOTIFY_USERS(text, v, oldtext=None, ghost=False, obj=None, followers_ping=Tr
abort(403, "You can only notify a maximum of 400 users.")
if v.shadowbanned or (obj and obj.is_banned):
- notify_users = {x[0] for x in g.db.query(User.id).filter(User.id.in_(notify_users), User.admin_level >= PERMS['USER_SHADOWBAN']).all()}
+ notify_users = set(x[0] for x in g.db.query(User.id).filter(User.id.in_(notify_users), User.admin_level >= PERMS['USER_SHADOWBAN']).all())
return notify_users - BOT_IDs - {v.id, 0} - v.all_twoway_blocks - v.muters
diff --git a/files/helpers/config/const.py b/files/helpers/config/const.py
index ea373f158..49b0223dc 100644
--- a/files/helpers/config/const.py
+++ b/files/helpers/config/const.py
@@ -1166,7 +1166,7 @@ from sqlalchemy.orm import scoped_session, sessionmaker
engine = create_engine(environ.get("DATABASE_URL").strip(), connect_args={"options": "-c statement_timeout=10000 -c idle_in_transaction_session_timeout=40000"})
db_session = scoped_session(sessionmaker(bind=engine, autoflush=False))
-approved_embed_hosts_for_csp = ' '.join({x.split('/')[0] for x in approved_embed_hosts})
+approved_embed_hosts_for_csp = ' '.join(set(x.split('/')[0] for x in approved_embed_hosts))
csp = f"default-src 'none'; frame-ancestors 'none'; form-action 'self'; manifest-src 'self'; worker-src 'self'; base-uri 'self'; font-src 'self'; style-src-elem 'self' rdrama.net watchpeopledie.tv; style-src-attr 'unsafe-inline'; style-src 'self' 'unsafe-inline'; script-src-elem 'self' challenges.cloudflare.com static.cloudflareinsights.com; script-src-attr 'none'; script-src 'self' challenges.cloudflare.com static.cloudflareinsights.com; frame-src challenges.cloudflare.com cdpn.io platform.twitter.com rumble.com player.twitch.tv; connect-src 'self' videos.watchpeopledie.tv; img-src {approved_embed_hosts_for_csp} data:; media-src {approved_embed_hosts_for_csp};"
if not IS_LOCALHOST:
csp += ' upgrade-insecure-requests;'
diff --git a/files/helpers/cron.py b/files/helpers/cron.py
index 8477af851..8f51450b8 100644
--- a/files/helpers/cron.py
+++ b/files/helpers/cron.py
@@ -246,7 +246,7 @@ def _leaderboard_task():
def _process_timer(attr, badge_ids, text, extra_attrs={}):
now = time.time()
users = g.db.query(User).options(load_only(User.id)).filter(1 < attr, attr < now)
- uids = {x.id for x in users}
+ uids = set(x.id for x in users)
#set user attributes
attr = str(attr).split('.')[1]
diff --git a/files/helpers/get.py b/files/helpers/get.py
index 252514495..5cf9c9f86 100644
--- a/files/helpers/get.py
+++ b/files/helpers/get.py
@@ -100,7 +100,7 @@ def get_account(id, v=None, graceful=False, include_blocks=False):
def get_accounts_dict(ids, v=None, graceful=False):
if not ids: return {}
try:
- ids = {int(id) for id in ids}
+ ids = set(int(id) for id in ids)
except:
if graceful: return None
abort(400, "User IDs need to be an integer.")
diff --git a/files/helpers/sanitize.py b/files/helpers/sanitize.py
index 5431b3e90..533348625 100644
--- a/files/helpers/sanitize.py
+++ b/files/helpers/sanitize.py
@@ -363,7 +363,7 @@ def sanitize(sanitized, golden=True, limit_pings=0, showmore=False, count_emojis
sanitized = reddit_mention_regex.sub(r'\1/\2', sanitized)
sanitized = hole_mention_regex.sub(r'/\1', sanitized)
- names = {m.group(1) for m in mention_regex.finditer(sanitized)}
+ names = set(m.group(1) for m in mention_regex.finditer(sanitized))
if limit_pings and len(names) > limit_pings and v.admin_level < PERMS['POST_COMMENT_INFINITE_PINGS']:
return error("Max ping limit is 5 for comments and 50 for posts!")
diff --git a/files/routes/holes.py b/files/routes/holes.py
index 39178b7b3..99257d307 100644
--- a/files/routes/holes.py
+++ b/files/routes/holes.py
@@ -984,7 +984,7 @@ def hole_log(v, hole):
if mod_id:
actions = actions.filter_by(user_id=mod_id)
- kinds = {x.kind for x in actions}
+ kinds = set(x.kind for x in actions)
if kind: kinds.add(kind)
types2 = {}
for k,val in types.items():
diff --git a/files/routes/posts.py b/files/routes/posts.py
index 8de6b9936..834c25a57 100644
--- a/files/routes/posts.py
+++ b/files/routes/posts.py
@@ -216,7 +216,7 @@ def post_id(pid, v, anything=None, hole=None):
def view_more(v, pid, sort, offset):
p = get_post(pid, v=v)
- try: ids = {int(x) for x in request.values.get("ids").split(',')}
+ try: ids = set(int(x) for x in request.values.get("ids").split(','))
except: abort(400)
if v:
diff --git a/files/routes/routehelpers.py b/files/routes/routehelpers.py
index 53a629ff3..bc6a8fb7a 100644
--- a/files/routes/routehelpers.py
+++ b/files/routes/routehelpers.py
@@ -44,7 +44,7 @@ def get_alt_graph_ids(uid):
)
alt_graph_cte = alt_graph_cte.union(alt_graph_cte_inner)
- return {x[0] for x in g.db.query(User.id).filter(User.id == alt_graph_cte.c.user_id, User.id != uid)}
+ return set(x[0] for x in g.db.query(User.id).filter(User.id == alt_graph_cte.c.user_id, User.id != uid))
def get_alt_graph(uid):
alt_ids = get_alt_graph_ids(uid)
@@ -74,7 +74,7 @@ def check_for_alts(current, include_current_session=False):
if session.get("GLOBAL"):
return
- past_accs = {session.get("history", [])} if include_current_session else set()
+ past_accs = set(session.get("history", [])) if include_current_session else set()
if current.email and current.email_verified:
more_ids = [x[0] for x in g.db.query(User.id).filter(
diff --git a/files/routes/static.py b/files/routes/static.py
index 119814de8..487f994b3 100644
--- a/files/routes/static.py
+++ b/files/routes/static.py
@@ -217,7 +217,7 @@ def log(v):
actions = actions.filter(ModAction.kind.notin_(MODACTION_PRIVILEGED__TYPES))
if admin_id:
actions = actions.filter_by(user_id=admin_id)
- kinds = {x.kind for x in actions}
+ kinds = set(x.kind for x in actions)
kinds.add(kind)
types2 = {}
for k,val in types.items():