|
1 | 1 | """ |
2 | 2 | This scripts populates tox.ini automatically using release data from PYPI. |
3 | | -
|
4 | | -To add a new test target: |
5 | | -- add it to a group in GROUPs |
6 | | -- add it to DEPENDENCIES |
7 | 3 | """ |
8 | 4 |
|
9 | 5 | import functools |
|
21 | 17 | from sentry_sdk.integrations import _MIN_VERSIONS |
22 | 18 |
|
23 | 19 | from dependencies import DEPENDENCIES |
| 20 | +from scripts.split_tox_gh_actions.split_tox_gh_actions import GROUPS |
24 | 21 |
|
25 | | -# TODO: |
26 | | -# - put GROUPS someplace where both this script and split_tox_actions can use it |
27 | | -# - (optional) order by alphabet, not group then alphabet |
28 | 22 |
|
29 | 23 | # Only consider package versions going back this far |
30 | 24 | CUTOFF = datetime.now() - timedelta(days=365 * 5) |
|
40 | 34 | PYPI_VERSION_URL = "https://pypi.python.org/pypi/{project}/{version}/json" |
41 | 35 | CLASSIFIER_PREFIX = "Programming Language :: Python :: " |
42 | 36 |
|
43 | | -GROUPS = { |
44 | | - "Common": [ |
45 | | - "common", |
46 | | - ], |
47 | | - "AI": [ |
48 | | - "anthropic", |
49 | | - "cohere", |
50 | | - "langchain", |
51 | | - "langchain_notiktoken", |
52 | | - "openai", |
53 | | - "openai_notiktoken", |
54 | | - "huggingface_hub", |
55 | | - ], |
56 | | - "AWS": [ |
57 | | - # this is separate from Cloud Computing because only this one test suite |
58 | | - # needs to run with access to GitHub secrets |
59 | | - "aws_lambda", |
60 | | - ], |
61 | | - "Cloud": [ |
62 | | - "boto3", |
63 | | - "chalice", |
64 | | - "cloud_resource_context", |
65 | | - "gcp", |
66 | | - ], |
67 | | - "DBs": [ |
68 | | - "asyncpg", |
69 | | - "clickhouse_driver", |
70 | | - "pymongo", |
71 | | - "redis", |
72 | | - "redis_py_cluster_legacy", |
73 | | - "sqlalchemy", |
74 | | - ], |
75 | | - "Flags": [ |
76 | | - "launchdarkly", |
77 | | - "openfeature", |
78 | | - "unleash", |
79 | | - ], |
80 | | - "GraphQL": [ |
81 | | - "ariadne", |
82 | | - "gql", |
83 | | - "graphene", |
84 | | - "strawberry", |
85 | | - ], |
86 | | - "Network": [ |
87 | | - "gevent", |
88 | | - "grpc", |
89 | | - "httpx", |
90 | | - "requests", |
91 | | - ], |
92 | | - "Tasks": [ |
93 | | - "arq", |
94 | | - "beam", |
95 | | - "celery", |
96 | | - "dramatiq", |
97 | | - "huey", |
98 | | - "ray", |
99 | | - "rq", |
100 | | - "spark", |
101 | | - ], |
102 | | - "Web 1": [ |
103 | | - "django", |
104 | | - "flask", |
105 | | - "starlette", |
106 | | - "fastapi", |
107 | | - ], |
108 | | - "Web 2": [ |
109 | | - "aiohttp", |
110 | | - "asgi", |
111 | | - "bottle", |
112 | | - "falcon", |
113 | | - "litestar", |
114 | | - "pyramid", |
115 | | - "quart", |
116 | | - "sanic", |
117 | | - "starlite", |
118 | | - "tornado", |
119 | | - ], |
120 | | - "Misc": [ |
121 | | - "loguru", |
122 | | - "opentelemetry", |
123 | | - "potel", |
124 | | - "pure_eval", |
125 | | - "trytond", |
126 | | - "typer", |
127 | | - ], |
128 | | -} |
129 | 37 |
|
130 | 38 | IGNORE = { |
131 | 39 | # Do not try auto-generating the tox entries for these. They will be |
132 | 40 | # hardcoded in tox.ini. |
| 41 | + # |
| 42 | + # This set should be getting smaller over time as we migrate more test |
| 43 | + # suites over to this script. Some entries will probably stay forever |
| 44 | + # as they don't fit the mold (e.g. common, asgi). |
| 45 | + "aiohttp", |
| 46 | + "anthropic", |
| 47 | + "ariadne", |
| 48 | + "arq", |
133 | 49 | "asgi", |
| 50 | + "asyncpg", |
134 | 51 | "aws_lambda", |
135 | | - "cloud_resource_context", |
| 52 | + "beam", |
| 53 | + "boto3", |
| 54 | + "bottle", |
| 55 | + "celery", |
| 56 | + "chalice", |
| 57 | + "clickhouse_driver", |
| 58 | + "cohere", |
136 | 59 | "common", |
| 60 | + "cloud_resource_context", |
| 61 | + "django", |
| 62 | + "dramatiq", |
| 63 | + "falcon", |
| 64 | + "fastapi", |
| 65 | + "flask", |
137 | 66 | "gcp", |
138 | 67 | "gevent", |
| 68 | + "gql", |
| 69 | + "graphene", |
| 70 | + "grpc", |
| 71 | + "httpx", |
| 72 | + "huey", |
| 73 | + "huggingface_hub", |
| 74 | + "langchain", |
| 75 | + "langchain_notiktoken", |
| 76 | + "litestar", |
| 77 | + "loguru", |
| 78 | + "openai", |
| 79 | + "openai_notiktoken", |
| 80 | + "openfeature", |
| 81 | + "launchdarkly", |
| 82 | + "opentelemetry", |
139 | 83 | "potel", |
| 84 | + "pure_eval", |
| 85 | + "pymongo", |
| 86 | + "pyramid", |
| 87 | + "quart", |
| 88 | + "ray", |
| 89 | + "redis", |
| 90 | + "redis_py_cluster_legacy", |
| 91 | + "requests", |
| 92 | + "rq", |
| 93 | + "sanic", |
| 94 | + "spark", |
| 95 | + "starlette", |
| 96 | + "starlite", |
| 97 | + "sqlalchemy", |
| 98 | + "strawberry", |
| 99 | + "tornado", |
| 100 | + "trytond", |
| 101 | + "typer", |
| 102 | + "unleash", |
140 | 103 | } |
141 | 104 |
|
142 | 105 |
|
|
0 commit comments