1
1
[build-system ]
2
- requires = [" setuptools" ]
3
2
build-backend = " setuptools.build_meta"
3
+ requires = [" setuptools>=54.0.0" , " wheel" , " pip>=21.0.0" ]
4
4
5
- [project ]
6
- name = " smoke-test"
7
- version = " 0.0.0"
8
- description = " "
9
- authors = [
10
- {
name =
" Acryl Data" ,
email =
" [email protected] " },
5
+ [tool .ruff ]
6
+ line-length = 88
7
+ target-version = " py38"
8
+ exclude = [
9
+ " .git" ,
10
+ " venv" ,
11
+ " .tox" ,
12
+ " __pycache__" ,
11
13
]
12
- requires-python = " >=3.9"
13
-
14
14
15
- [tool .black ]
16
- extend-exclude = '''
17
- # A regex preceded with ^/ will apply only to files and directories
18
- # in the root of the project.
19
- tmp
20
- venv
21
- '''
22
- include = ' \.pyi?$'
23
- target-version = [' py310' ]
15
+ [tool .ruff .format ]
16
+ quote-style = " double"
17
+ indent-style = " space"
18
+ skip-magic-trailing-comma = false
19
+ line-ending = " auto"
24
20
25
- [tool .isort ]
26
- profile = ' black'
21
+ [tool .ruff .lint .isort ]
22
+ combine-as-imports = true
23
+ known-first-party = [" datahub" ]
24
+ extra-standard-library = [" __future__" ]
25
+ section-order = [" future" , " standard-library" , " third-party" , " first-party" , " local-folder" ]
26
+ force-sort-within-sections = false
27
+ force-wrap-aliases = false
28
+ split-on-trailing-comma = false
29
+ order-by-type = true
30
+ relative-imports-order = " closest-to-furthest"
31
+ force-single-line = false
32
+ single-line-exclusions = [" typing" ]
33
+ length-sort = false
34
+ from-first = false
35
+ required-imports = []
36
+ classes = [" typing" ]
27
37
28
- [tool .ruff ]
38
+ [tool .ruff .lint ]
39
+ extend-select = [
40
+ " B" , # flake8-bugbear
41
+ " C90" , # mccabe complexity
42
+ " E" , # pycodestyle errors
43
+ " F" , # pyflakes
44
+ " G010" , # logging.warn -> logging.warning
45
+ " I" , # isort
46
+ " TID" , # flake8-tidy-imports
47
+ " RUF100" , # unused-noqa
48
+ ]
29
49
ignore = [
30
- ' E501' , # Ignore line length, since black handles that.
31
- ' D203' , # Ignore 1 blank line required before class docstring.
50
+ " E501" , # Line length violations (handled by formatter)
32
51
]
33
52
34
- [tool .mypy ]
35
- exclude = " ^(venv/|build/|dist/)"
36
- ignore_missing_imports = true
37
- namespace_packages = false
38
- check_untyped_defs = true
39
- disallow_untyped_decorators = true
40
- warn_unused_configs = true
41
- # eventually we'd like to enable these
42
- disallow_incomplete_defs = false
43
- disallow_untyped_defs = false
53
+ [tool .ruff .lint .mccabe ]
54
+ max-complexity = 15
55
+
56
+ [tool .ruff .lint .flake8-tidy-imports ]
57
+ ban-relative-imports = " all"
44
58
45
- [tool .pyright ]
46
- extraPaths = [' tests ' ]
59
+ [tool .ruff . lint . per-file-ignores ]
60
+ "__init__.py" = [" F401 " ]
0 commit comments