style: run pre-commit

This commit is contained in:
张泊明518370910136 2024-06-05 06:24:40 -04:00
parent a169a8b61c
commit 109d26eb6e
GPG Key ID: CA088E6D9284F870
4 changed files with 22 additions and 18 deletions

View File

@ -34,9 +34,7 @@ def add_all_canvas_students_to_teams(team_names: List[str]) -> None:
"create-personal-repos", "create-personal-repos",
help="create personal repos on gitea for all canvas students", help="create personal repos on gitea for all canvas students",
) )
def create_personal_repos_for_all_canvas_students( def create_personal_repos_for_all_canvas_students(suffix: str = Option("")) -> None:
suffix: str = Option("")
) -> None:
tea.pot.create_personal_repos_for_all_canvas_students(suffix) tea.pot.create_personal_repos_for_all_canvas_students(suffix)
@ -63,9 +61,13 @@ def clone_all_repos() -> None:
def create_issue_for_repos( def create_issue_for_repos(
repo_names: List[str], repo_names: List[str],
title: str, title: str,
body: str = Argument(..., help="issue body, or, if --from-file is set, filepath to issue body"), body: str = Argument(
..., help="issue body, or, if --from-file is set, filepath to issue body"
),
from_file: bool = Option(False, "--file/--body"), from_file: bool = Option(False, "--file/--body"),
use_regex: bool = Option(False, "--regex", help="repo_names takes list of regexes if set"), use_regex: bool = Option(
False, "--regex", help="repo_names takes list of regexes if set"
),
) -> None: ) -> None:
tea.pot.create_issue_for_repos(repo_names, title, body, from_file, use_regex) tea.pot.create_issue_for_repos(repo_names, title, body, from_file, use_regex)
@ -151,7 +153,7 @@ def upload_assignment_grades(assignments_dir: Path, assignment_name: str) -> Non
def create_channels_on_mm( def create_channels_on_mm(
prefix: str = Option(""), prefix: str = Option(""),
suffix: str = Option(""), suffix: str = Option(""),
invite_teaching_team: bool = Option(False) invite_teaching_team: bool = Option(False),
) -> None: ) -> None:
groups = { groups = {
group_name: members group_name: members

View File

@ -5,7 +5,7 @@ from typing import Any, Callable, Dict, List, Optional, TypeVar
from joint_teapot.config import settings from joint_teapot.config import settings
from joint_teapot.utils.logger import logger from joint_teapot.utils.logger import logger
from joint_teapot.utils.main import first, default_repo_name_convertor from joint_teapot.utils.main import default_repo_name_convertor, first
from joint_teapot.workers import Canvas, Git, Gitea, Mattermost from joint_teapot.workers import Canvas, Git, Gitea, Mattermost
from joint_teapot.workers.joj import JOJ from joint_teapot.workers.joj import JOJ
@ -86,10 +86,12 @@ class Teapot:
def add_all_canvas_students_to_teams(self, team_names: List[str]) -> None: def add_all_canvas_students_to_teams(self, team_names: List[str]) -> None:
return self.gitea.add_canvas_students_to_teams(self.canvas.students, team_names) return self.gitea.add_canvas_students_to_teams(self.canvas.students, team_names)
def create_personal_repos_for_all_canvas_students(self, suffix: str = "") -> List[str]: def create_personal_repos_for_all_canvas_students(
self, suffix: str = ""
) -> List[str]:
return self.gitea.create_personal_repos_for_canvas_students( return self.gitea.create_personal_repos_for_canvas_students(
self.canvas.students, self.canvas.students,
lambda user: default_repo_name_convertor(user) + suffix lambda user: default_repo_name_convertor(user) + suffix,
) )
def create_teams_and_repos_by_canvas_groups( def create_teams_and_repos_by_canvas_groups(
@ -141,18 +143,15 @@ class Teapot:
if use_regex: if use_regex:
all_repos = self.gitea.get_all_repo_names() all_repos = self.gitea.get_all_repo_names()
for pattern in repo_names: for pattern in repo_names:
affected_repos.extend([ affected_repos.extend(
repo [repo for repo in all_repos if re.search(pattern, repo) is not None]
for repo in all_repos )
if re.search(pattern, repo) is not None
])
else: else:
affected_repos = repo_names affected_repos = repo_names
for repo_name in affected_repos: for repo_name in affected_repos:
self.gitea.create_issue(repo_name, title, content) self.gitea.create_issue(repo_name, title, content)
def create_milestone_for_repos( def create_milestone_for_repos(
self, repo_names: List[str], title: str, description: str, due_on: datetime self, repo_names: List[str], title: str, description: str, due_on: datetime
) -> None: ) -> None:

View File

@ -40,7 +40,10 @@ class Mattermost:
return return
def create_channels_for_groups( def create_channels_for_groups(
self, groups: Dict[str, List[str]], suffix: str = "", invite_teaching_team: bool = False self,
groups: Dict[str, List[str]],
suffix: str = "",
invite_teaching_team: bool = False,
) -> None: ) -> None:
for group_name, members in groups.items(): for group_name, members in groups.items():
channel_name = group_name + suffix channel_name = group_name + suffix

View File

@ -10,7 +10,7 @@ def get_version(package: str) -> str:
Return package version as listed in `__version__` in `__init__.py`. Return package version as listed in `__version__` in `__init__.py`.
""" """
path = os.path.join(package, "__init__.py") path = os.path.join(package, "__init__.py")
main_py = open(path, "r", encoding="utf8").read() main_py = open(path, encoding="utf8").read()
match = re.search("__version__ = ['\"]([^'\"]+)['\"]", main_py) match = re.search("__version__ = ['\"]([^'\"]+)['\"]", main_py)
if match is None: if match is None:
return "0.0.0" return "0.0.0"
@ -21,7 +21,7 @@ def get_long_description() -> str:
""" """
Return the README. Return the README.
""" """
return open("README.md", "r", encoding="utf8").read() return open("README.md", encoding="utf8").read()
def get_install_requires() -> List[str]: def get_install_requires() -> List[str]: