Skip to content
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

feat: add type hint for public methods #445

Closed

Conversation

HemangChothani
Copy link
Contributor

Fixes #157

@HemangChothani HemangChothani requested review from tswast and a team December 22, 2020 08:02
@google-cla google-cla bot added the cla: yes This human has signed the Contributor License Agreement. label Dec 22, 2020
@product-auto-label product-auto-label bot added the api: bigquery Issues related to the googleapis/python-bigquery API. label Dec 22, 2020
google/cloud/bigquery_v2/
output = .pytype/
# Workaround for https://github.com/google/pytype/issues/150
disable = pyi-error
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file is synthtool generated so changes are not allowed here, but for the reference and pass current tests changed the current file.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

google/pytype#150 is marked as closed. Can you provide a little more context as to why this is needed?

@HemangChothani HemangChothani requested a review from a team as a code owner December 22, 2020 10:23
@HemangChothani HemangChothani requested review from busunkim96 and removed request for a team December 22, 2020 10:23
@HemangChothani HemangChothani added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Dec 22, 2020
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Dec 22, 2020
Copy link
Contributor

@tswast tswast left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good, thanks! A few questions.

@@ -75,6 +75,18 @@
from google.cloud.bigquery.table import TableReference
from google.cloud.bigquery.table import RowIterator

# Types needed only for Type Hints
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any reason to keep these in a separate location from the other imports. Let's put them in their respective groups.

max_creation_time=None,
):
project: str = None,
parent_job: Union[_AsyncJob, str] = None,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

parent_job is only relevant for queries, so I think we can put QueryJob here and avoid the use of a private type.

table: Union[Table, TableReference, str],
rows: Union[Sequence[Tuple], Sequence[Dict]],
selected_fields: Sequence[SchemaField] = None,
**kwargs: dict,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why dict here and Dict below?

table: Union[Table, TableReference],
permissions: Sequence[str],
retry: retries.Retry = DEFAULT_RETRY,
timeout: float = None,
):
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking at the system tests, I believe the output for this method id Dict

self.assertEqual(set(response["permissions"]), set(permissions))

@plamut
Copy link
Contributor

plamut commented Jan 21, 2021

Bump, just checking the status of this?

Generally speaking, though, type hints would be welcome, even though static type checks have not been added to Kokoro (yet).

@plamut
Copy link
Contributor

plamut commented Apr 15, 2021

Superseded by #613.

(will also address the comments there)

@plamut plamut closed this Apr 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: bigquery Issues related to the googleapis/python-bigquery API. cla: yes This human has signed the Contributor License Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

feat: add type hints to methods
4 participants