-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathgenerate.py
executable file
·41 lines (33 loc) · 949 Bytes
/
generate.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env -S uv run --script
# /// script
# requires-python = ">=3.13"
# dependencies = [
# "pre-commit==4.2.0",
# "pytz==2025.2",
# "requests==2.32.3",
# "requests-cache==1.2.1",
# ]
# ///
from svg_wheel import generate_svg_wheel
from utils import (
annotate_wheels,
get_top_packages,
remove_irrelevant_packages,
save_to_file,
)
TO_CHART = 360
def main(to_chart: int = TO_CHART) -> None:
packages = remove_irrelevant_packages(get_top_packages(), to_chart)
annotate_wheels(packages)
save_to_file(packages, "results.json")
generate_svg_wheel(packages, to_chart)
if __name__ == "__main__":
import argparse
parser = argparse.ArgumentParser(
formatter_class=argparse.ArgumentDefaultsHelpFormatter
)
parser.add_argument(
"-n", "--number", type=int, default=TO_CHART, help="number of packages to chart"
)
args = parser.parse_args()
main(args.number)