Use snake_case for method names

This commit is contained in:
rubenwardy
2023-06-19 21:27:49 +01:00
parent 16f93b3e13
commit 45ed12ddf0
53 changed files with 390 additions and 387 deletions

View File

@@ -75,11 +75,11 @@ celery = make_celery(app)
CELERYBEAT_SCHEDULE = {
'topic_list_import': {
'task': 'app.tasks.forumtasks.importTopicList',
'task': 'app.tasks.forumtasks.import_topic_list',
'schedule': crontab(minute=1, hour=1), # 0101
},
'package_score_update': {
'task': 'app.tasks.pkgtasks.updatePackageScores',
'task': 'app.tasks.pkgtasks.update_package_scores',
'schedule': crontab(minute=10, hour=1), # 0110
},
'check_for_updates': {

View File

@@ -23,7 +23,7 @@ from flask_mail import Message
from app import mail
from app.models import Notification, db, EmailSubscription, User
from app.tasks import celery
from app.utils import abs_url_for, abs_url, randomString
from app.utils import abs_url_for, abs_url, random_string
def get_email_subscription(email):
@@ -31,7 +31,7 @@ def get_email_subscription(email):
ret = EmailSubscription.query.filter_by(email=email).first()
if not ret:
ret = EmailSubscription(email)
ret.token = randomString(32)
ret.token = random_string(32)
db.session.add(ret)
db.session.commit()

View File

@@ -23,15 +23,15 @@ from urllib.parse import urljoin
from app.models import User, db, PackageType, ForumTopic
from app.tasks import celery
from app.utils import is_username_valid
from app.utils.phpbbparser import getProfile, getTopicsFromForum
from app.utils.phpbbparser import get_profile, get_topics_from_forum
from .usertasks import set_profile_picture_from_url
@celery.task()
def checkForumAccount(forums_username):
def check_forum_account(forums_username):
print("### Checking " + forums_username, file=sys.stderr)
try:
profile = getProfile("https://forum.minetest.net", forums_username)
profile = get_profile("https://forum.minetest.net", forums_username)
except OSError as e:
print(e, file=sys.stderr)
return
@@ -42,7 +42,7 @@ def checkForumAccount(forums_username):
user = User.query.filter_by(forums_username=forums_username).first()
# Create user
needsSaving = False
needs_saving = False
if user is None:
user = User(forums_username)
user.forums_username = forums_username
@@ -53,14 +53,14 @@ def checkForumAccount(forums_username):
if github_username is not None and github_username.strip() != "":
print("Updated GitHub username for " + user.display_name + " to " + github_username)
user.github_username = github_username
needsSaving = True
needs_saving = True
pic = profile.avatar
if pic and pic.startswith("http"):
pic = None
# Save
if needsSaving:
if needs_saving:
db.session.commit()
if pic:
@@ -74,21 +74,21 @@ def checkForumAccount(forums_username):
print(f"####### Queueing", file=sys.stderr)
set_profile_picture_from_url.delay(user.username, pic)
return needsSaving
return needs_saving
@celery.task()
def checkAllForumAccounts():
def check_all_forum_accounts():
query = User.query.filter(User.forums_username.isnot(None))
for user in query.all():
checkForumAccount(user.forums_username)
check_forum_account(user.forums_username)
regex_tag = re.compile(r"\[([a-z0-9_]+)\]")
BANNED_NAMES = ["mod", "game", "old", "outdated", "wip", "api", "beta", "alpha", "git"]
def getNameFromTaglist(taglist):
def get_name_from_taglist(taglist):
for tag in reversed(regex_tag.findall(taglist)):
if len(tag) < 30 and not tag in BANNED_NAMES and \
not re.match(r"^[a-z]?[0-9]+$", tag):
@@ -100,15 +100,16 @@ def getNameFromTaglist(taglist):
regex_title = re.compile(r"^((?:\[[^\]]+\] *)*)([^\[]+) *((?:\[[^\]]+\] *)*)[^\[]*$")
def parseTitle(title):
def parse_title(title):
m = regex_title.match(title)
if m is None:
print("Invalid title format: " + title)
return title, getNameFromTaglist(title)
return title, get_name_from_taglist(title)
else:
return m.group(2).strip(), getNameFromTaglist(m.group(3))
return m.group(2).strip(), get_name_from_taglist(m.group(3))
def getLinksFromModSearch():
def get_links_from_mod_search():
links = {}
try:
@@ -127,15 +128,16 @@ def getLinksFromModSearch():
return links
@celery.task()
def importTopicList():
links_by_id = getLinksFromModSearch()
def import_topic_list():
links_by_id = get_links_from_mod_search()
info_by_id = {}
getTopicsFromForum(11, out=info_by_id, extra={ 'type': PackageType.MOD, 'wip': False })
getTopicsFromForum(9, out=info_by_id, extra={ 'type': PackageType.MOD, 'wip': True })
getTopicsFromForum(15, out=info_by_id, extra={ 'type': PackageType.GAME, 'wip': False })
getTopicsFromForum(50, out=info_by_id, extra={ 'type': PackageType.GAME, 'wip': True })
get_topics_from_forum(11, out=info_by_id, extra={'type': PackageType.MOD, 'wip': False})
get_topics_from_forum(9, out=info_by_id, extra={'type': PackageType.MOD, 'wip': True})
get_topics_from_forum(15, out=info_by_id, extra={'type': PackageType.GAME, 'wip': False})
get_topics_from_forum(50, out=info_by_id, extra={'type': PackageType.GAME, 'wip': True})
# Caches
username_to_user = {}
@@ -182,7 +184,7 @@ def importTopicList():
db.session.add(topic)
# Parse title
title, name = parseTitle(info["title"])
title, name = parse_title(info["title"])
# Get link
link = links_by_id.get(id)

View File

@@ -30,7 +30,7 @@ from kombu import uuid
from app.models import AuditSeverity, db, NotificationType, PackageRelease, MetaPackage, Dependency, PackageType, \
MinetestRelease, Package, PackageState, PackageScreenshot, PackageUpdateTrigger, PackageUpdateConfig
from app.tasks import celery, TaskError
from app.utils import randomString, post_bot_message, addSystemNotification, addSystemAuditLog, get_games_from_csv
from app.utils import random_string, post_bot_message, add_system_notification, add_system_audit_log, get_games_from_csv
from app.utils.git import clone_repo, get_latest_tag, get_latest_commit, get_temp_dir
from .minetestcheck import build_tree, MinetestCheckError, ContentType
from app import app
@@ -41,7 +41,7 @@ from app.utils.image import get_image_size
@celery.task()
def getMeta(urlstr, author):
def get_meta(urlstr, author):
with clone_repo(urlstr, recursive=True) as repo:
try:
tree = build_tree(repo.working_tree_dir, author=author, repo=urlstr)
@@ -82,13 +82,13 @@ def getMeta(urlstr, author):
@celery.task()
def updateAllGameSupport():
def update_all_game_support():
resolver = GameSupportResolver(db.session)
resolver.init_all()
db.session.commit()
def postReleaseCheckUpdate(self, release: PackageRelease, path):
def post_release_check_update(self, release: PackageRelease, path):
try:
tree = build_tree(path, expected_type=ContentType[release.package.type.name],
author=release.package.author.username, name=release.package.name)
@@ -97,14 +97,14 @@ def postReleaseCheckUpdate(self, release: PackageRelease, path):
raise MinetestCheckError(f"Expected {tree.relative} to have technical name {release.package.name}, instead has name {tree.name}")
cache = {}
def getMetaPackages(names):
def get_meta_packages(names):
return [ MetaPackage.GetOrCreate(x, cache) for x in names ]
provides = tree.get_mod_names()
package = release.package
package.provides.clear()
package.provides.extend(getMetaPackages(tree.get_mod_names()))
package.provides.extend(get_meta_packages(tree.get_mod_names()))
# Delete all mod name dependencies
package.dependencies.filter(Dependency.meta_package != None).delete()
@@ -124,10 +124,10 @@ def postReleaseCheckUpdate(self, release: PackageRelease, path):
raise MinetestCheckError("Game has unresolved hard dependencies: " + deps)
# Add dependencies
for meta in getMetaPackages(depends):
for meta in get_meta_packages(depends):
db.session.add(Dependency(package, meta=meta, optional=False))
for meta in getMetaPackages(optional_depends):
for meta in get_meta_packages(optional_depends):
db.session.add(Dependency(package, meta=meta, optional=True))
# Update min/max
@@ -191,7 +191,7 @@ def postReleaseCheckUpdate(self, release: PackageRelease, path):
@celery.task(bind=True)
def checkZipRelease(self, id, path):
def check_zip_release(self, id, path):
release = PackageRelease.query.get(id)
if release is None:
raise TaskError("No such release!")
@@ -202,7 +202,7 @@ def checkZipRelease(self, id, path):
with ZipFile(path, 'r') as zip_ref:
zip_ref.extractall(temp)
postReleaseCheckUpdate(self, release, temp)
post_release_check_update(self, release, temp)
release.task_id = None
release.approve(release.package.author)
@@ -210,7 +210,7 @@ def checkZipRelease(self, id, path):
@celery.task(bind=True)
def makeVCSRelease(self, id, branch):
def make_vcs_release(self, id, branch):
release = PackageRelease.query.get(id)
if release is None:
raise TaskError("No such release!")
@@ -218,9 +218,9 @@ def makeVCSRelease(self, id, branch):
raise TaskError("No package attached to release")
with clone_repo(release.package.repo, ref=branch, recursive=True) as repo:
postReleaseCheckUpdate(self, release, repo.working_tree_dir)
post_release_check_update(self, release, repo.working_tree_dir)
filename = randomString(10) + ".zip"
filename = random_string(10) + ".zip"
destPath = os.path.join(app.config["UPLOAD_DIR"], filename)
assert(not os.path.isfile(destPath))
@@ -238,7 +238,7 @@ def makeVCSRelease(self, id, branch):
@celery.task()
def importRepoScreenshot(id):
def import_repo_screenshot(id):
package = Package.query.get(id)
if package is None or package.state == PackageState.DELETED:
raise Exception("Unexpected none package")
@@ -248,7 +248,7 @@ def importRepoScreenshot(id):
for ext in ["png", "jpg", "jpeg"]:
sourcePath = repo.working_tree_dir + "/screenshot." + ext
if os.path.isfile(sourcePath):
filename = randomString(10) + "." + ext
filename = random_string(10) + "." + ext
destPath = os.path.join(app.config["UPLOAD_DIR"], filename)
shutil.copyfile(sourcePath, destPath)
@@ -313,11 +313,11 @@ def check_update_config_impl(package):
db.session.add(rel)
msg = "Created release {} (Git Update Detection)".format(rel.title)
addSystemAuditLog(AuditSeverity.NORMAL, msg, package.get_url("packages.view"), package)
add_system_audit_log(AuditSeverity.NORMAL, msg, package.get_url("packages.view"), package)
db.session.commit()
makeVCSRelease.apply_async((rel.id, commit), task_id=rel.task_id)
make_vcs_release.apply_async((rel.id, commit), task_id=rel.task_id)
elif config.outdated_at is None:
config.set_outdated()
@@ -338,8 +338,8 @@ def check_update_config_impl(package):
.format(tag, msg_last)
for user in package.maintainers:
addSystemNotification(user, NotificationType.BOT,
msg, url_for("todo.view_user", username=user.username, _external=False), package)
add_system_notification(user, NotificationType.BOT,
msg, url_for("todo.view_user", username=user.username, _external=False), package)
config.last_commit = commit
config.last_tag = tag

View File

@@ -19,7 +19,7 @@ from app.models import Package, db
from app.tasks import celery
@celery.task()
def updatePackageScores():
def update_package_scores():
Package.query.update({ "score_downloads": Package.score_downloads * 0.95 })
db.session.commit()

View File

@@ -23,7 +23,7 @@ from sqlalchemy import or_, and_
from app import app
from app.models import User, db, UserRank, ThreadReply, Package
from app.utils import randomString
from app.utils import random_string
from app.utils.models import create_session
from app.tasks import celery, TaskError
@@ -76,7 +76,7 @@ def set_profile_picture_from_url(username: str, url: str):
else:
raise TaskError(f"Unacceptable content-type: {content_type}")
filename = randomString(10) + "." + ext
filename = random_string(10) + "." + ext
filepath = os.path.join(app.config["UPLOAD_DIR"], filename)
with open(filepath, "wb") as f:
size = 0