-
Notifications
You must be signed in to change notification settings - Fork 315
chore: avoid pytype error caused by attrs==21.1.0 #656
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
# An indirect dependecy attrs==21.1.0 breaks the check, and installing a less | ||
# recent version avoids the error until a possibly better fix is found. | ||
# https://github.com/googleapis/python-bigquery/issues/655 | ||
session.install("attrs==20.3.0") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this also be set in setup.py? Presumably with <=
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For that matter, if it was set there, then we wouldn't need the setting here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since attrs
has quite a user base and is thoroughly tested, the error is most likely a false positive by pytype
, thus I wouldn't artificially restrict the supported version range.
This workaround is primarily to unblock #653, which fixes the current issue with autosynth PRs (re-formatting the code with a different style, causing the CI checks to fail + noise changes).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK. I'd love to get a knowledge dump from you on pytype
. :)
AFAIK, our code doesn't use attr
directly.
It seems like you should be able to just tell pytype
to ignore 3rd-party modules/packages, but I don' see a way to do that. Apparently, pytype
can use a configuration file, but they aren't documented AFAICT.
It seems it should be possible to exclude attr
using -x
, but I haven't figure out how.
pytype
is barely documented afaict.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, that would also be my preference to silence that false positive without monkey-patching the dependency or by silencing all 3rd party modules. I think I'll create an issue to re-visit this workaround in the future.
PR checklist:
Fixes #655.