@@ -5,28 +5,65 @@ build-backend = "setuptools.build_meta"
5
5
[tool .setuptools_scm ]
6
6
write_to = " dvc_gs/_dvc_gs_version.py"
7
7
8
- [tool .black ]
9
- line-length = 79
10
- include = ' \.pyi?$'
11
- exclude = '''
12
- /(
13
- \.eggs
14
- | \.git
15
- | \.hg
16
- | \.mypy_cache
17
- | \.tox
18
- | \.venv
19
- | _build
20
- | buck-out
21
- | build
22
- | dist
23
- )/
24
- '''
25
-
26
- [tool .isort ]
27
- profile = " black"
28
- known_first_party = [" dvc_gs" ]
29
- line_length = 79
8
+ [project ]
9
+ name = " dvc-gs"
10
+ description = " gs plugin for dvc"
11
+ readme = " README.rst"
12
+ keywords = [
13
+ " dvc" ,
14
+ " gs" ,
15
+ ]
16
+ license = { text = " Apache License 2.0" }
17
+ maintainers = [{
name =
" Iterative" ,
email =
" [email protected] " }]
18
+ authors = [{
name =
" Iterative" ,
email =
" [email protected] " }]
19
+ requires-python = " >=3.9"
20
+ classifiers = [
21
+ " Development Status :: 4 - Beta" ,
22
+ " Programming Language :: Python :: 3" ,
23
+ " Programming Language :: Python :: 3.9" ,
24
+ " Programming Language :: Python :: 3.10" ,
25
+ " Programming Language :: Python :: 3.11" ,
26
+ " Programming Language :: Python :: 3.12" ,
27
+ ]
28
+ dynamic = [" version" ]
29
+ dependencies = [
30
+ " dvc" ,
31
+ " gcsfs>=2022.11.0" ,
32
+ ]
33
+
34
+ [project .optional-dependencies ]
35
+ tests = [
36
+ " wheel==0.37.0" ,
37
+ " dvc[testing]" ,
38
+ # Test requirements
39
+ " pytest==7.1.2" ,
40
+ " pytest-cov==3.0.0" ,
41
+ " pytest-xdist==2.4.0" ,
42
+ " pytest-mock==3.6.1" ,
43
+ " pytest-lazy-fixture==0.6.3" ,
44
+ " pytest-servers[gcs]>=0.3.0" ,
45
+ " flaky==3.7.0" ,
46
+ " mock==4.0.3" ,
47
+ " wget==3.2" ,
48
+ " filelock==3.3.2" ,
49
+ " xmltodict==0.12.0" ,
50
+ # required by collective.checkdocs
51
+ " Pygments==2.10.0" ,
52
+ " collective.checkdocs==0.2" ,
53
+ " pydocstyle==6.1.1" ,
54
+ # type-checking
55
+ " mypy==0.981" ,
56
+ " types-requests==2.25.11" ,
57
+ " types-tabulate==0.8.3" ,
58
+ " types-toml==0.10.1" ,
59
+ # optional dependencies
60
+ ' pywin32>=225; sys_platform == "win32"' ,
61
+ " google-cloud-storage>=2.7.0" ,
62
+ ]
63
+
64
+ [project .urls ]
65
+ Documentation = " https://dvc.org/doc"
66
+ Source = " https://github.com/iterative/dvc-gs"
30
67
31
68
[tool .pytest .ini_options ]
32
69
log_level = " debug"
@@ -51,28 +88,46 @@ warn_redundant_casts = true
51
88
warn_unreachable = true
52
89
files = [" dvc_gs" ]
53
90
54
- [tool .pylint .master ]
55
- extension-pkg-whitelist = [" pygit2" ]
56
- init-hook = " import sys; sys.path.append(str('tests'))"
57
-
58
- [tool .pylint .message_control ]
59
- disable = [
60
- " format" , " refactoring" , " spelling" , " design" ,
61
- " invalid-name" , " duplicate-code" , " fixme" ,
62
- " unused-wildcard-import" , " cyclic-import" , " wrong-import-order" ,
63
- " wrong-import-position" , " ungrouped-imports" , " multiple-imports" ,
64
- " logging-format-interpolation" , " logging-fstring-interpolation" ,
65
- " missing-function-docstring" , " missing-module-docstring" ,
66
- " missing-class-docstring" , " raise-missing-from" , " import-outside-toplevel" ,
91
+ [tool .ruff ]
92
+ output-format = " full"
93
+ show-fixes = true
94
+
95
+ [tool .ruff .lint ]
96
+ ignore = [
97
+ " N818" , " S101" , " ISC001" , " PT004" , " PT007" , " RET502" , " RET503" , " SIM105" , " SIM108" , " SIM117" ,
98
+ " TRY003" , " TRY300" , " PLR2004" , " PLW2901" , " LOG007" ,
67
99
]
68
- enable = [" c-extension-no-member" , " no-else-return" ]
100
+ select = [
101
+ " F" , " E" , " W" , " C90" , " I" , " N" , " UP" , " YTT" , " ASYNC" , " S" , " BLE" , " B" , " A" , " C4" , " T10" ,
102
+ " EXE" , " ISC" , " ICN" , " G" , " INP" , " PIE" , " T20" , " PYI" , " PT" , " Q" , " RSE" , " RET" ,
103
+ " SLOT" , " SIM" , " TID" , " TCH" , " ARG" , " PGH" , " PLC" , " PLE" , " PLR" , " PLW" , " TRY" ,
104
+ " FLY" , " PERF101" , " LOG" , " RUF" , " RUF022" , " RUF023" , " RUF024" , " RUF025" , " RUF026" ,
105
+ ]
106
+ preview = true
107
+ explicit-preview-rules = true
108
+
109
+ [tool .ruff .lint .flake8-pytest-style ]
110
+ fixture-parentheses = false
111
+ mark-parentheses = false
112
+ parametrize-names-type = " csv"
113
+ raises-extend-require-match-for = [" dvc.exceptions.DvcException" ]
114
+
115
+ [tool .ruff .lint .flake8-tidy-imports ]
116
+
117
+ [tool .ruff .lint .flake8-type-checking ]
118
+ strict = true
119
+
120
+ [tool .ruff .lint .flake8-unused-arguments ]
121
+ ignore-variadic-names = true
122
+
123
+ [tool .ruff .lint .isort ]
124
+ known-first-party = [" dvc" , " dvc_data" , " dvc_objects" ]
125
+
126
+ [tool .ruff .lint .pep8-naming ]
127
+ extend-ignore-names = [" M" , " SCM" ]
69
128
70
- [tool .pylint .typecheck ]
71
- generated-members = [" pytest.lazy_fixture" , " logging.TRACE" , " logger.trace" , " sys.getwindowsversion" , " argparse.Namespace" ]
72
- ignored-classes = [" Dvcfile" ]
73
- ignored-modules = [" azure" ]
74
- signature-mutators = [" funcy.decorators.decorator" ]
129
+ [tool .ruff .lint .pylint ]
130
+ max-args = 10
75
131
76
- [tool .pylint .variables ]
77
- dummy-variables-rgx = " _+$|(_[a-zA-Z0-9_]*[a-zA-Z0-9]+?$)|dummy|^ignored_|^unused_"
78
- ignored-argument-names = " _.*|^ignored_|^unused_|args|kwargs"
132
+ [tool .ruff .lint .per-file-ignores ]
133
+ "dvc_gs/tests/**" = [" S" , " ARG001" , " ARG002" , " TRY002" , " TRY301" ]
0 commit comments