Skip to content

Commit 5c6edc6

Browse files
f
1 parent fae909f commit 5c6edc6

14 files changed

+69
-98
lines changed

ForgejoRepoAPI.py

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,12 @@
1-
from interface_wrapper import (
2-
logging,
3-
IRepositoryAPI,
4-
Repository,
5-
Commit,
6-
Branch,
7-
User,
8-
Contributor,
9-
Issue,
10-
PullRequest,
11-
WikiPage,
12-
Comment,
13-
Invite,
14-
)
151
import base64
162
import sys
17-
from pyforgejo import PyforgejoApi
3+
184
import isodate
5+
from pyforgejo import PyforgejoApi
6+
7+
from interface_wrapper import (Branch, Comment, Commit, Contributor, Invite,
8+
IRepositoryAPI, Issue, PullRequest, Repository,
9+
User, WikiPage, logging)
1910

2011

2112
class ForgejoRepoAPI(IRepositoryAPI):

GitHubRepoAPI.py

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,6 @@
1-
from interface_wrapper import (
2-
logging,
3-
Repository,
4-
Contributor,
5-
Commit,
6-
Issue,
7-
PullRequest,
8-
WikiPage,
9-
Branch,
10-
IRepositoryAPI,
11-
User,
12-
Comment,
13-
Invite,
14-
)
1+
from interface_wrapper import (Branch, Comment, Commit, Contributor, Invite,
2+
IRepositoryAPI, Issue, PullRequest, Repository,
3+
User, WikiPage, logging)
154

165

176
class GitHubRepoAPI(IRepositoryAPI):

commits_parser.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,11 @@
1-
from dataclasses import dataclass, asdict
2-
import pytz
1+
from dataclasses import asdict, dataclass
32
from time import sleep
43

5-
from utils import logger
6-
from interface_wrapper import IRepositoryAPI, Repository
7-
8-
EMPTY_FIELD = 'Empty field'
9-
TIMEDELTA = 0.05
10-
TIMEZONE = 'Europe/Moscow'
4+
import pytz
115

12-
GOOGLE_MAX_CELL_LEN = 50000
6+
from constants import EMPTY_FIELD, GOOGLE_MAX_CELL_LEN, TIMEDELTA, TIMEZONE
7+
from interface_wrapper import IRepositoryAPI, Repository
8+
from utils import logger
139

1410

1511
@dataclass(kw_only=True, frozen=True)

constants.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
EMPTY_FIELD = 'Empty field'
2+
TIMEDELTA = 0.05
3+
TIMEZONE = 'Europe/Moscow'
4+
GOOGLE_MAX_CELL_LEN = 50000
5+
TITLE_LEN = 80
6+
MIN_SIDE_PADDING = 4
7+
SIDE_WHITE_SPACES = 1
8+
WIKI_FIELDNAMES = [
9+
'repository name',
10+
'author name',
11+
'author login',
12+
'datetime',
13+
'page',
14+
'action',
15+
'revision id',
16+
'added lines',
17+
'deleted lines',
18+
]

contributors_parser.py

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
1-
from dataclasses import dataclass, asdict
2-
from typing import Generator
1+
from dataclasses import asdict, dataclass
32
from time import sleep
3+
from typing import Generator
44

5-
from utils import logger
5+
from constants import EMPTY_FIELD, TIMEDELTA, TIMEZONE
66
from interface_wrapper import IRepositoryAPI, Repository
7-
8-
EMPTY_FIELD = 'Empty field'
9-
TIMEDELTA = 0.05
10-
TIMEZONE = 'Europe/Moscow'
7+
from utils import logger
118

129

1310
@dataclass(kw_only=True, frozen=True)

export_sheets.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import pygsheets
21
import pandas as pd
2+
import pygsheets
33

44
INT_MASS = [{"one": 1, "two": 2, "what?": 3}]
55

git_logger.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from interface_wrapper import RepositoryFactory, IRepositoryAPI
21
from time import sleep
32

4-
TIMEDELTA = 0.05
5-
TIMEZONE = 'Europe/Moscow'
3+
from constants import TIMEDELTA, TIMEZONE
4+
from interface_wrapper import IRepositoryAPI, RepositoryFactory
65

76

87
def login(source, token, base_url):

interface_wrapper.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1+
import logging
12
from abc import ABC, abstractmethod
2-
from datetime import datetime
33
from dataclasses import dataclass
4-
import logging
4+
from datetime import datetime
55

66
from github import Github
77
from pyforgejo import PyforgejoApi
@@ -178,8 +178,8 @@ class RepositoryFactory:
178178
def create_api(
179179
source: str, token: str, base_url: str | None = None
180180
) -> IRepositoryAPI:
181-
from GitHubRepoAPI import GitHubRepoAPI
182181
from ForgejoRepoAPI import ForgejoRepoAPI
182+
from GitHubRepoAPI import GitHubRepoAPI
183183

184184
if source == 'github':
185185
return GitHubRepoAPI(Github(token))

invites_parser.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
from dataclasses import dataclass, asdict
1+
from dataclasses import asdict, dataclass
22
from time import sleep
3-
from utils import logger
4-
from interface_wrapper import IRepositoryAPI, Repository
5-
63

7-
TIMEDELTA = 0.05
4+
from constants import TIMEDELTA
5+
from interface_wrapper import IRepositoryAPI, Repository
6+
from utils import logger
87

98

109
@dataclass(kw_only=True, frozen=True)

issues_parser.py

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,14 @@
1-
from dataclasses import dataclass, asdict
1+
import json
2+
from dataclasses import asdict, dataclass
23
from time import sleep
3-
from typing import Optional
44

55
import pytz
66
import requests
7-
import json
87

9-
from utils import logger
8+
from constants import EMPTY_FIELD, TIMEDELTA, TIMEZONE
109
from git_logger import get_assignee_story
1110
from interface_wrapper import IRepositoryAPI, Repository
12-
13-
EMPTY_FIELD = 'Empty field'
14-
TIMEDELTA = 0.05
15-
TIMEZONE = 'Europe/Moscow'
11+
from utils import logger
1612

1713

1814
@dataclass(kw_only=True, frozen=True)
@@ -26,10 +22,10 @@ class IssueData:
2622
creator_name: str = ''
2723
creator_login: str = ''
2824
creator_email: str = ''
29-
closed_at: Optional[str] = None
30-
closer_name: Optional[str] = None
31-
closer_login: Optional[str] = None
32-
closer_email: Optional[str] = None
25+
closed_at: str | None = None
26+
closer_name: str | None = None
27+
closer_login: str | None = None
28+
closer_email: str | None = None
3329
assignee_story: str = ''
3430
connected_pull_requests: str = ''
3531
labels: str = ''

0 commit comments

Comments
 (0)