-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathpyproject.toml
166 lines (149 loc) · 4.58 KB
/
pyproject.toml
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
[project]
authors = [
{name = "Kariba Labs"},
]
license = {text = "Apache-2.0"}
requires-python = "<3.13,<4.0,>=3.12"
dependencies = [
"arrow<2.0.0,>=1.3.0",
"boltons<25.0.0,>=24.0.0",
"click<9.0.0,>=8.1.7",
"clickhouse-connect<1.0.0,>=0.7.16",
"cloud-sql-python-connector[pg8000]<2.0.0,>=1.6.0",
"dagster<2.0.0,>=1.8.6",
"dagster-dbt<1.0.0,>=0.24.0",
"dagster-embedded-elt<1.0.0,>=0.24.0",
"dagster-gcp<1.0.0,>=0.24.0",
"dagster-polars<1.0.0,>=0.24.0",
"dagster-postgres<1.0.0,>=0.24.0",
"dagster-webserver<2.0.0,>=1.7.16",
"dask[distributed]<2025.0.0,>=2024.4.2",
"dask-kubernetes<2025.0.0,>=2024.4.2",
"dbt-bigquery<2.0.0,>=1.7.0",
"dbt-core<2.0.0,>=1.8.2",
"discord-webhook<2.0.0,>=1.3.1",
"dlt<2.0.0,>=1.3.0",
"duckdb<2.0.0,>=1.1.0",
"gcsfs<2025.0.0,>=2024.6.1",
"google-api-python-client<3.0.0,>=2.116.0",
"google-cloud-bigquery<4.0.0,>=3.17.1",
"google-cloud-bigquery-datatransfer<4.0.0,>=3.15.3",
"google-cloud-resource-manager<2.0.0,>=1.12.3",
"google-cloud-secret-manager<3.0.0,>=2.20.0",
"google-cloud-service-management<2.0.0,>=1.8.3",
"google-cloud-service-usage<2.0.0,>=1.10.3",
"google-cloud-storage<3.0.0,>=2.14.0",
"lz4<5.0.0,>=4.3.3",
"oss-directory<1.0.0,>=0.2.1",
"pendulum<4.0.0,>=3.0.0",
"polars<2.0.0,>=1.5.0",
"pytest<9.0.0,>=8.2.1",
"python-dotenv<2.0.0,>=1.0.1",
"requests<3.0.0,>=2.31.0",
"ruamel-yaml<1.0.0,>=0.18.6",
"ruff<1.0.0,>=0.4.10",
"sqlalchemy<3.0.0,>=2.0.25",
"textual<1.0.0,>=0.52.1",
"redis<6.0.0,>=5.0.7",
"githubkit<1.0.0,>=0.12.4",
"sqlmesh[trino]<1.0.0,>=0.141.1",
"dagster-duckdb<1.0.0,>=0.24.0",
"dagster-duckdb-polars<1.0.0,>=0.24.0",
"google-cloud-bigquery-storage<3.0.0,>=2.25.0",
"dagster-sqlmesh==0.6.0",
"google-auth<3.0.0,>=2.34.0",
"pillow<11.0.0,>=10.4.0",
"dagster-k8s<1.0.0,>=0.24.6",
"pyiceberg[hive,s3fs]<1.0.0,>=0.8.1",
"connectorx<1.0.0,>=0.4.0",
"bokeh<4.0.0,>=3.6.1",
"fastapi[standard]<1.0.0,>=0.115.6",
"pyee<13.0.0,>=12.1.1",
"aiotrino<1.0.0,>=0.2.3",
"pytest-asyncio<1.0.0,>=0.24.0",
"isort<6.0.0,>=5.13.2",
"uvicorn[standard]<1.0.0,>=0.32.1",
"websockets<15.0,>=14.1",
"pydantic-settings<3.0.0,>=2.7.0",
"openrank-sdk<1.0.0,>=0.4.0",
"pandas<3.0.0,>=2.2.3",
"docker<8.0.0,>=7.1.0",
"gitpython<4.0.0,>=3.1.44",
"minio<8.0.0,>=7.2.15",
"colorlog<7.0.0,>=6.9.0",
"pyarrow-stubs<18.0,>=17.16",
"gcloud-aio-storage<10.0.0,>=9.3.0",
]
name = "oso"
version = "1.0.0"
description = "Impact measurement for open source software"
readme = "README.md"
[project.urls]
homepage = "https://www.opensource.observer"
repository = "/~https://github.com/opensource-observer/oso"
documentation = "https://docs.opensource.observer/"
[project.scripts]
bq2cloudsql = "bq2cloudsql.script:run"
oso_lets_go = "oso_lets_go.wizard:run"
oso = "oso_lets_go.cli:cli"
[dependency-groups]
dev = [
"dagster-webserver<2.0.0,>=1.7.2",
"ipython<9.0.0,>=8.21.0",
"shandy-sqlfmt[jinjafmt]<1.0.0,>=0.21.1",
"sqlfluff~=3.2.5",
"sqlfluff-templater-dbt~=3.2.5",
"isort<6.0.0,>=5.13.2",
]
[tool.uv.sources]
pyoso = { workspace = true }
[tool.uv.workspace]
members = ["warehouse/pyoso"]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = [ "warehouse/bq2cloudsql/", "warehouse/oso_lets_go/", "warehouse/common", "warehouse/metrics_tools", "ops/opsscripts/"]
[tool.sqlfluff]
max_line_length = 80
[tool.sqlfluff.core]
templater = "dbt"
[tool.sqlfluff.indentation]
indent_unit = "space"
tab_space_size = 2
[tool.sqlfluff.templater.jinja]
load_macros_from_path = "warehouse/dbt/macros/"
apply_dbt_builtins = true
library_path = "warehouse/common/dbtlintmock"
[tool.sqlfluff.templater.dbt]
project_dir = "."
target = "playground"
[tool.dagster]
module_name = "oso_dagster.definitions"
[tool.pyright]
pythonVersion = "3.12"
typeCheckingMode = "standard"
ignore = [
"warehouse/bq2cloudsql",
"warehouse/meltano-setup",
"warehouse/oso_lets_go",
"warehouse/pyoso",
"warehouse/oso_dagster/dlt_sources/sql_database",
"scripts/dbt_doc_gen",
]
[tool.ruff]
exclude = [
"warehouse/bq2cloudsql",
"warehouse/meltano-setup",
"warehouse/oso_lets_go",
"warehouse/oso_dagster/dlt_sources",
"warehouse/oso_dagster/dlt_sources/sql_database/**/*.py",
"warehouse/oso_dagster/dlt_sources/sql_database/*.py",
]
[tool.ruff.lint]
exclude = [
"warehouse/oso_dagster/dlt_sources/sql_database/**/*.py",
"warehouse/oso_dagster/dlt_sources/sql_database/*.py",
]
[tool.isort]
profile = "black"