mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-07 09:31:35 +08:00
first commit
This commit is contained in:
60
third_party/pybind11/tools/make_changelog.py
vendored
Normal file
60
third_party/pybind11/tools/make_changelog.py
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import re
|
||||
|
||||
import ghapi.all
|
||||
from rich import print
|
||||
from rich.syntax import Syntax
|
||||
|
||||
ENTRY = re.compile(
|
||||
r"""
|
||||
Suggested \s changelog \s entry:
|
||||
.*
|
||||
```rst
|
||||
\s*
|
||||
(.*?)
|
||||
\s*
|
||||
```
|
||||
""",
|
||||
re.DOTALL | re.VERBOSE, )
|
||||
|
||||
print()
|
||||
|
||||
api = ghapi.all.GhApi(owner="pybind", repo="pybind11")
|
||||
|
||||
issues_pages = ghapi.page.paged(
|
||||
api.issues.list_for_repo, labels="needs changelog", state="closed")
|
||||
issues = (issue for page in issues_pages for issue in page)
|
||||
missing = []
|
||||
|
||||
for issue in issues:
|
||||
changelog = ENTRY.findall(issue.body)
|
||||
if changelog:
|
||||
(msg, ) = changelog
|
||||
if not msg.startswith("* "):
|
||||
msg = "* " + msg
|
||||
if not msg.endswith("."):
|
||||
msg += "."
|
||||
|
||||
msg += f"\n `#{issue.number} <{issue.html_url}>`_"
|
||||
|
||||
print(Syntax(msg, "rst", theme="ansi_light", word_wrap=True))
|
||||
print()
|
||||
|
||||
else:
|
||||
missing.append(issue)
|
||||
|
||||
if missing:
|
||||
print()
|
||||
print("[blue]" + "-" * 30)
|
||||
print()
|
||||
|
||||
for issue in missing:
|
||||
print(f"[red bold]Missing:[/red bold][red] {issue.title}")
|
||||
print(f"[red] {issue.html_url}\n")
|
||||
|
||||
print("[bold]Template:\n")
|
||||
msg = "## Suggested changelog entry:\n\n```rst\n\n```"
|
||||
print(Syntax(msg, "md", theme="ansi_light"))
|
||||
|
||||
print()
|
Reference in New Issue
Block a user