Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
altlinux-packages-bot
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kirill Unitsaev
altlinux-packages-bot
Commits
81595ad4
Verified
Commit
81595ad4
authored
Jul 18, 2025
by
Kirill Unitsaev
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mews.bugs: improve text formatting
parent
7e4f6a26
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
34 additions
and
36 deletions
+34
-36
methods.py
src/altrepo/parser/methods.py
+1
-1
models.py
src/altrepo/parser/models.py
+1
-0
bugs.py
src/altrepo/parser/news/bugs.py
+3
-1
bugs.py
src/services/news/bugs.py
+29
-34
No files found.
src/altrepo/parser/methods.py
View file @
81595ad4
...
...
@@ -27,7 +27,7 @@ class NewsInfo:
if
not
url
:
return
None
html
=
await
self
.
client
.
get
(
url
,
"koi8-r"
)
return
await
bugs_parser
(
html
)
return
await
bugs_parser
(
html
,
url
)
async
def
sisyphus
(
self
)
->
models
.
PackagesModel
|
None
:
url
=
(
await
self
.
news_urls
())
.
sisyphus
...
...
src/altrepo/parser/models.py
View file @
81595ad4
...
...
@@ -17,6 +17,7 @@ class BugsElementModel(BaseModel):
class
BugsModel
(
BaseModel
):
url
:
str
quickly_resolved
:
List
[
BugsElementModel
]
|
None
=
None
new
:
List
[
BugsElementModel
]
|
None
=
None
old
:
List
[
BugsElementModel
]
|
None
=
None
...
...
src/altrepo/parser/news/bugs.py
View file @
81595ad4
...
...
@@ -4,7 +4,7 @@ import re
from
..
import
models
async
def
bugs_parser
(
html
:
str
):
async
def
bugs_parser
(
html
:
str
,
url
:
str
):
soup
=
BeautifulSoup
(
html
,
"html.parser"
)
pre_tag
=
soup
.
find
(
"pre"
)
if
not
pre_tag
:
...
...
@@ -58,6 +58,8 @@ async def bugs_parser(html: str):
if
current_bug
and
section_name
:
current_bug
[
"summary"
]
=
description_buffer
.
strip
()
data
.
setdefault
(
section_name
,
[])
.
append
(
current_bug
)
data
[
"url"
]
=
url
return
models
.
BugsModel
(
**
data
)
...
...
src/services/news/bugs.py
View file @
81595ad4
...
...
@@ -9,43 +9,38 @@ repo = PACKAGES_URL.format(repo="sisyphus")
async
def
format_bugs
(
bugs
:
BugsModel
):
bug_message
=
""
if
bugs
.
quickly_resolved
:
bug_message
+=
"Быстрозакрытые:
\n
"
for
bug
in
bugs
.
quickly_resolved
:
bug_message
+=
await
_format_bug
(
bug
)
if
bugs
.
new
:
bug_message
+=
"Новые:
\n
"
for
bug
in
bugs
.
new
:
bug_message
+=
await
_format_bug
(
bug
)
if
bugs
.
old
:
bug_message
+=
"Устаревшие:
\n
"
for
bug
in
bugs
.
old
:
bug_message
+=
await
_format_bug
(
bug
)
if
bugs
.
resolved
:
bug_message
+=
"Закрытые:
\n
"
for
bug
in
bugs
.
resolved
:
bug_message
+=
await
_format_bug
(
bug
)
if
bugs
.
reopened
:
bug_message
+=
"Переоткрытые:
\n
"
for
bug
in
bugs
.
reopened
:
bug_message
+=
await
_format_bug
(
bug
)
if
bugs
.
random
:
bug_message
+=
"Рандомные:
\n
"
for
bug
in
bugs
.
random
:
bug_message
+=
await
_format_bug
(
bug
)
bug_message
+=
"Сформировано при помощи "
+
HTMLFormatter
(
bold
(
link
(
"https://t.me/altlinux_packages_bot"
,
text
=
"ALT Packages Bot"
)))
bug_message
=
HTMLFormatter
(
bold
(
"Новости Багзиллы
\n\n
"
))
categories
=
[
(
"Быстрозакрытые"
,
bugs
.
quickly_resolved
),
(
"Новые"
,
bugs
.
new
),
(
"Устаревшие"
,
bugs
.
old
),
(
"Закрытые"
,
bugs
.
resolved
),
(
"Переоткрытые"
,
bugs
.
reopened
),
(
"Рандомные"
,
bugs
.
random
),
]
for
title
,
bug_list
in
categories
:
if
bug_list
:
bug_message
+=
f
"{title}:
\n
"
for
bug
in
bug_list
:
bug_message
+=
await
_format_bug
(
bug
)
bug_message
+=
(
HTMLFormatter
(
bold
(
"Сделаем Багзиллу чище!
\n
"
))
+
"— Приглашаем активных участников к проверке багов на воспроизводимость.
\n\n
"
)
bug_message
+=
(
"Источник: "
+
HTMLFormatter
(
link
(
bugs
.
url
,
text
=
"sisyphus-cybertalk"
))
+
"
\n\n
#Репорты
\n\n
"
"Сформировано при помощи "
+
HTMLFormatter
(
bold
(
link
(
"https://t.me/altlinux_packages_bot"
,
text
=
"ALT Packages Bot"
)))
)
return
bug_message
async
def
_format_bug
(
bug
:
BugsElementModel
):
message
=
HTMLFormatter
(
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment