@@ -36,6 +36,11 @@ dependencies = [
3636[project .optional-dependencies ]
3737aws = [" s3fs" ]
3838azure = [" adlfs" ]
39+ check = [
40+ " pre-commit" ,
41+ " pyright==1.1.372" , # Pinned; manually sync with .github/workflows/code-checks.yml
42+ " types-appdirs" ,
43+ ]
3944doc = [
4045 " ipykernel" ,
4146 " ipython<=8.12" ,
@@ -85,6 +90,31 @@ testpaths = ["pins"]
8590addopts = " --doctest-modules"
8691doctest_optionflags = " NORMALIZE_WHITESPACE"
8792
93+ [tool .pyright ]
94+ include = [" pins" ]
95+ exclude = [" **/__pycache__" ]
96+ ignore = [" pins/tests" ]
97+ pythonVersion = " 3.12" # Use the maximum version supported by python-pins
98+ pythonPlatform = " Linux"
99+
100+ # Tracking compliance with these rules at https://github.com/rstudio/pins-python/issues/272
101+ reportArgumentType = false
102+ reportAssignmentType = false
103+ reportAttributeAccessIssue = false
104+ reportCallIssue = false
105+ reportGeneralTypeIssues = false
106+ reportIncompatibleMethodOverride = false
107+ reportIncompatibleVariableOverride = false
108+ reportIndexIssue = false
109+ reportMissingImports = false
110+ reportMissingTypeStubs = false
111+ reportOptionalIterable = false
112+ reportOptionalMemberAccess = false
113+ reportOptionalSubscript = false
114+ reportPossiblyUnboundVariable = false
115+ reportReturnType = false
116+ reportUnusedExpression = false
117+
88118[tool .ruff ]
89119line-length = 90
90120extend-exclude = [" docs" ]
0 commit comments