forked from snowflakedb/snowflake-cli
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pyproject.toml
133 lines (112 loc) · 3.39 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
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "snowflake-cli-labs"
authors = [{ name = "Snowflake Inc." }]
license = { file = "LICENSE" }
dynamic = ["version"]
requires-python = ">=3.8"
description = "Snowflake CLI"
readme = "README.md"
dependencies = [
"jinja2==3.1.3",
"pluggy==1.4.0",
"PyYAML==6.0.1",
"rich==13.7.1",
"requests==2.31.0",
"requirements-parser==0.5.0",
"setuptools==69.1.1",
"snowflake-connector-python[secure-local-storage]==3.7.1",
"tomlkit==0.12.3",
"typer==0.9.0",
"urllib3>=1.21.1,<2.3",
"GitPython==3.1.42",
"pydantic==2.6.4"
]
classifiers = [
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: SQL",
"Topic :: Database",
]
[project.optional-dependencies]
development = [
"coverage==7.4.4",
"pre-commit>=3.5.0",
"pytest==8.1.1",
"pytest-randomly==3.15.0",
"syrupy==4.6.1",
]
[project.urls]
"Source code" = "https://github.com/Snowflake-Labs/snowcli"
"Bug Tracker" = "https://github.com/Snowflake-Labs/snowcli/issues"
[project.scripts]
snow = "snowflake.cli.app.__main__:main"
[tool.coverage.report]
exclude_also = ["@(abc\\.)?abstractmethod", "@(abc\\.)?abstractproperty"]
[tool.hatch.version]
path = "src/snowflake/cli/__about__.py"
[tool.hatch.build.targets.sdist]
exclude = ["/.github"]
[tool.hatch.build.targets.wheel]
packages = ["src/snowflake"]
[tool.hatch.envs.default]
features = ["development"]
[tool.hatch.envs.default.scripts]
test = ["pytest --snapshot-warn-unused tests/"]
test-cov = [
"coverage run --source=snowflake.cli --module pytest --snapshot-warn-unused tests/ ",
"coverage run --source=snowflake.cli --module pytest -m loaded_modules --snapshot-warn-unused tests/ ",
"coverage report",
]
[tool.hatch.envs.e2e]
template = "e2e"
features = ["development"]
[tool.hatch.envs.e2e.scripts]
test = ["pytest -m e2e --snapshot-warn-unused --durations=0"]
[tool.hatch.envs.performance]
template = "performance"
features = ["development"]
[tool.hatch.envs.performance.scripts]
test = ["pytest -m performance"]
[tool.hatch.envs.integration]
template = "integration"
pre-install-commands = [
"pip install test_external_plugins/snowpark_hello_single_command",
"pip install test_external_plugins/multilingual_hello_command_group",
]
features = ["development"]
[tool.hatch.envs.integration.scripts]
test = ["pytest -m integration --snapshot-warn-unused"]
[[tool.hatch.envs.local.matrix]]
python = ["3.8", "3.9", "3.10", "3.11", "3.12"]
[tool.coverage.run]
source = ["snowflake.cli"]
[tool.ruff]
line-length = 88
[tool.ruff.lint]
select = [
"N",
"I", # isort
"G", # flake8-logging-format
"N", # pep8 naming
"A", # flake 8 builtins
"TID252", # relative imports
"SLF", # Accessing private methods
"F401", # unused imports
"F403", # star imports
]
[tool.pytest.ini_options]
addopts = "-m 'not integration and not performance and not e2e and not spcs and not loaded_modules'"
markers = [
"integration: mark test as integration test",
"performance: mark test as performance test",
"e2e: mark test to execute on SnowCLI installed in fresh virtual environment",
"loaded_modules: checks loaded modules",
]