You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Run the tool (with pre-commit) with the configuration above, then revert the data.py file, unit tests can pass as usual.
Ok, I then tried one by one against the changes (made to the data.py file by this tool) and found that only the insert of from __future__ import annotations statement will actually triggered the error.
(puntgun-3.10) \code\python\puntgun>pdm test
ImportError while loading conftest 'E:\code\python\puntgun\tests\conftest.py'.
tests\conftest.py:9: in <module>
from puntgun.rules.config_parser import ConfigParser
puntgun\rules\config_parser.py:93: in <module>
import_rule_classes()
puntgun\rules\config_parser.py:32: in import_rule_classes
importlib.import_module(f"{base_module_name}.{module_name}")
puntgun\rules\user\action_rules.py:3: in <module>
from puntgun.client import NeedClientMixin
puntgun\client.py:15: in <module>
from puntgun.rules.data import Media, Place, Poll, Tweet, User
puntgun\rules\data.py:217: in <module>
class Tweet(BaseModel):
puntgun\rules\data.py:228: in Tweet
author: User | None = User()
pydantic\main.py:342: in pydantic.main.BaseModel.__init__
???
E pydantic.error_wrappers.ValidationError: 1 validation error for User
E pinned_tweet
E field required (type=value_error.missing)
I think it would be better to change the logic of exclude class configuration to "exclude the file where the class is located"? Although there is already a configuration to exclude files, but the configuration to exclude special classes is more flexible than to exclude files?
It up to you, dear maintainer, thank you very much for your work and quick response to the needs. ♥
The text was updated successfully, but these errors were encountered:
The "bug" reproducting branch:
https://github.com/boholder/puntgun/commits/test-fix-tool
Env( boholder/puntgun@7ba9738 ):
pyproject.toml
:Run the tool (with pre-commit) with the configuration above, then revert the
data.py
file, unit tests can pass as usual.Ok, I then tried one by one against the changes (made to the
data.py
file by this tool) and found that only the insert offrom __future__ import annotations
statement will actually triggered the error.Without this line (tests pass):
boholder/puntgun@1e85bb9
With this line (tests fail):
boholder/puntgun@005e180
I think it would be better to change the logic of
exclude class
configuration to "exclude the file where the class is located"? Although there is already a configuration to exclude files, but the configuration to exclude special classes is more flexible than to exclude files?It up to you, dear maintainer, thank you very much for your work and quick response to the needs. ♥
The text was updated successfully, but these errors were encountered: