Skip to content

Commit 7ac331c

Browse files
committed
Add pyright
1 parent eeb60d3 commit 7ac331c

File tree

3 files changed

+29
-17
lines changed

3 files changed

+29
-17
lines changed

poetry.lock

Lines changed: 22 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyproject.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ mkdocstrings = {version = "^0.27.0", python = ">=3.10", extras = ["python"]}
4040
# The Ruff version is pinned. To update it, also update it in .pre-commit-config.yaml
4141
ruff = { version = "~0.9.3" }
4242
ipykernel = "^6.29.5"
43+
pyright = "^1.1.392"
4344

4445
[tool.poetry.group.test.dependencies]
4546
poethepoet = ">=0.9.0"
@@ -86,9 +87,9 @@ addopts = "-p no:warnings"
8687
cmd = "pytest"
8788
help = "Run tests"
8889

89-
[tool.poe.tasks.types]
90-
cmd = "mypy src --ignore-missing-imports"
91-
help = "Check types with mypy"
90+
[tool.poe.tasks.typecheck]
91+
cmd = "pyright src"
92+
help = "Typecheck the code with Pyright"
9293

9394
[tool.poe.tasks.format]
9495
sequence = ["_format", "_sort-imports"]

src/betterproto2/__init__.py

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1214,19 +1214,9 @@ def to_pydict(self, casing: Casing = Casing.CAMEL, include_default_values: bool
12141214
cased_name = casing(field_name).rstrip("_") # type: ignore
12151215
if meta.proto_type == TYPE_MESSAGE:
12161216
if isinstance(value, datetime):
1217-
if (
1218-
value != DATETIME_ZERO
1219-
or include_default_values
1220-
or self._include_default_value_for_oneof(field_name=field_name, meta=meta)
1221-
):
1222-
output[cased_name] = value
1217+
output[cased_name] = value
12231218
elif isinstance(value, timedelta):
1224-
if (
1225-
value != timedelta(0)
1226-
or include_default_values
1227-
or self._include_default_value_for_oneof(field_name=field_name, meta=meta)
1228-
):
1229-
output[cased_name] = value
1219+
output[cased_name] = value
12301220
elif meta.wraps:
12311221
if value is not None or include_default_values:
12321222
output[cased_name] = value
@@ -1344,7 +1334,7 @@ def _validate_field_groups(cls, values):
13441334

13451335

13461336
try:
1347-
import betterproto2_rust_codec
1337+
import betterproto2_rust_codec # pyright: ignore[reportMissingImports]
13481338
except ModuleNotFoundError:
13491339
pass
13501340
else:

0 commit comments

Comments
 (0)