@@ -26,19 +26,8 @@ classifiers = [
2626 " Programming Language :: Python :: 3.11" ,
2727 " Programming Language :: Python :: Implementation :: CPython" ,
2828]
29- dependencies = [
30- " databricks-sdk~=0.13.0" ,
31- " PyYAML>=6.0.0,<7.0.0" ,
32- ]
33-
34- [project .optional-dependencies ]
35- test = [
36- " coverage[toml]>=6.5" ,
37- " pytest" ,
38- " pytest-xdist" ,
39- " pytest-cov>=4.0.0,<5.0.0" ,
40- " pytest-mock>=3.0.0,<4.0.0" ,
41- ]
29+ dependencies = [" databricks-sdk~=0.13.0" ,
30+ " PyYAML>=6.0.0,<7.0.0" ]
4231
4332[project .entry-points .databricks ]
4433runtime = " databricks.labs.ucx.runtime:main"
@@ -50,58 +39,49 @@ Source = "https://github.com/databricks/ucx"
5039[tool .hatch .version ]
5140path = " src/databricks/labs/ucx/__about__.py"
5241
53- [tool .hatch .envs .unit ]
42+ [tool .hatch .envs .default ]
5443dependencies = [
55- " databricks-labs-ucx[test]"
44+ " coverage[toml]>=6.5" ,
45+ " pytest" ,
46+ " pytest-xdist" ,
47+ " pytest-cov>=4.0.0,<5.0.0" ,
48+ " pytest-mock>=3.0.0,<4.0.0" ,
49+ " black>=23.1.0" ,
50+ " ruff>=0.0.243" ,
51+ " isort>=2.5.0" ,
5652]
5753
58- [tool .hatch .envs .unit .scripts ]
59- test = " pytest --cov src --cov-report=xml tests/unit"
60- test-cov-report = " pytest --cov src tests/unit --cov-report=html"
54+ python =" 3.10"
6155
62- [tool .hatch .envs .integration ]
63- dependencies = [
64- " databricks-labs-ucx[test]" ,
65- ]
56+ # store virtual env as the child of this folder. Helps VSCode (and PyCharm) to run better
57+ path = " .venv"
6658
67- [tool .hatch .envs .integration .scripts ]
68- test = " pytest --cov src tests/integration"
69- parallel = " pytest -n auto --cov src tests/integration"
70-
71- [tool .hatch .envs .lint ]
72- detached = true
73- dependencies = [
74- " black>=23.1.0" ,
75- " ruff>=0.0.243" ,
76- " isort>=2.5.0"
77- ]
78- [tool .hatch .envs .lint .scripts ]
79- fmt = [
80- " isort ." ,
81- " black ." ,
82- " ruff . --fix" ,
83- ]
84- verify = [
85- " black --check ." ,
86- " isort . --check-only" ,
87- " ruff ." ,
88- ]
59+ [tool .hatch .envs .default .scripts ]
60+ test = " pytest -n auto --cov src --cov-report=xml tests/unit"
61+ coverage = " pytest -n auto --cov src tests/unit --cov-report=html"
62+ integration = " pytest -n 10 --cov src tests/integration"
63+ fmt = [" isort ." ,
64+ " black ." ,
65+ " ruff . --fix" ]
66+ verify = [" black --check ." ,
67+ " isort . --check-only" ,
68+ " ruff ." ]
8969
9070[tool .isort ]
91- skip_glob = [
92- " notebooks/*.py"
93- ]
71+ skip_glob = [" notebooks/*.py" ]
9472profile = " black"
9573
9674[tool .pytest .ini_options ]
9775addopts = " -s -p no:warnings -vv --cache-clear"
76+ cache_dir = " .venv/pytest-cache"
9877
9978[tool .black ]
10079target-version = [" py310" ]
10180line-length = 120
10281skip-string-normalization = true
10382
10483[tool .ruff ]
84+ cache-dir = " .venv/ruff-cache"
10585target-version = " py310"
10686line-length = 120
10787select = [
0 commit comments