-
Notifications
You must be signed in to change notification settings - Fork 37
Expand file tree
/
Copy pathpyproject.toml
More file actions
117 lines (107 loc) · 3.42 KB
/
Copy pathpyproject.toml
File metadata and controls
117 lines (107 loc) · 3.42 KB
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
[project]
name = "cognite-sdk"
version = "8.10.0"
description = "Cognite Python SDK"
readme = "README.md"
authors = [
{name = "Erlend Vollset", email = "erlend.vollset@cognite.com"},
{name = "Håkon Treider", email = "hakon.treider@cognite.com"},
{name = "Anders Albert", email = "anders.albert@cognite.com"}
]
license = "Apache-2.0"
license-files = ["LICENSE"]
requires-python = ">= 3.10, <4"
dependencies = [
"httpx (>=0, <1)",
"msal (>=1.31, <2)",
"authlib (>=1, <2)",
"protobuf >=4",
"packaging >=20",
"pip >=20", # make optional once poetry doesn't auto-remove it on "simple install"
"typing_extensions >=4",
# Windows does not have a ANSI database and need tzdata...:
"tzdata >=2024.1; sys_platform == 'win32' or sys_platform=='emscripten'"
]
[project.optional-dependencies]
numpy = [
"numpy (>=1.25, <2.3); python_version == '3.10'",
"numpy >=1.25; python_version > '3.10'"
] # poetry 2.4.1 does not correctly limit numpy 2.2 to only python 3.10
sympy = ["sympy"]
pandas = ["pandas >=2.1"]
geo = [
"geopandas >=0.14",
"shapely >=1.7.0"
]
yaml = ["PyYAML (>=6, <7)"]
all = [
"numpy (>=1.25, <2.3); python_version == '3.10'",
"numpy >=1.25; python_version > '3.10'",
"sympy",
"pandas >=2.1",
"geopandas >=0.14",
"shapely >=1.7.0",
"PyYAML (>=6, <7)",
]
[dependency-groups]
dev = [
"pytest >=7",
"pytest-cov (>=3, <7)", # pytest-cov 7+ has issues with coverage measurement
"coverage (>=7, <7.11)", # 7.11+ has issues with editable installs in parallel test execution
"pytest-rerunfailures >=10",
"pytest-xdist >=2",
"twine >=4.0.1",
"pre-commit >=3",
"toml (>=0, <1)",
"python-dotenv (>=1, <2)",
"mypy (>=1, <2)",
"types-urllib3 (>=1.26.16, <2)",
"types-requests (>=2.28.1, <3)",
"types-backports (>=0, <1)",
"types-protobuf (>=4.22.0.2, <5)",
"types-PyYAML (>=6, <7)",
"packaging >=23",
"IPython >=7.0.0", # Used in docstring examples
"PyYAML (>=6, <7)",
"pytest-icdiff", # Used for better diffs in pytest
"types-simplejson >=3.19.0.20240801",
"types-pytz (>=2025.2.0.20250516, <2026)",
"tenacity (>=9.1.2, <10)",
"ruff ==0.13.2",
"pytest-httpx >=0.35",
"types-authlib (>=1.6.2.20250825, <2)",
"anyio (>=4.11.0, <5)",
"testbook (>=0.4.2, <0.5)",
"ipykernel (>=7.2.0, <8)"
]
docs = [
"sphinx ==8.1.*", # Increase when Python 3.10 support is dropped
"sphinx-rtd-theme >=1",
"sphinx-copybutton (>=0.5.2, <0.6)",
"sphinx-autosummary-accessors (>=2025.3.1, <2026)"
]
[project.urls]
Documentation = "https://cognite-sdk-python.readthedocs-hosted.com"
[tool.ruff]
line-length = 120
target-version = "py310"
exclude = ["cognite/client/_proto"]
[tool.ruff.lint]
# See https://beta.ruff.rs/docs/rules for an overview of ruff rules
ignore = ["E731", "E501", "W605", "RUF059"]
select = ["E", "W", "F", "I", "T", "RUF", "TID", "UP", "TC005"]
fixable = ["E", "W", "F", "I", "T", "RUF", "TID", "UP", "TC005"]
# These are used by pydoclint and we don't want 100 warnings:
external = ["DOC"]
[tool.ruff.lint.per-file-ignores]
# let scripts use print statements
"scripts/*" = ["T201"]
[tool.ruff.format]
# format code examples in docstrings to avoid users scrolling horizontally
docstring-code-format = true
docstring-code-line-length = 85
[tool.poetry]
packages = [{ include="cognite", from="." }]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"