firebase-admin-python icon indicating copy to clipboard operation
firebase-admin-python copied to clipboard

[FR] Add return type annotations for public functions (firestore.client(), storage.bucket(), etc)

Open guneemwelloeux opened this issue 1 year ago • 5 comments

Is your feature request related to a problem? Please describe. VSCode can use Python type annotations to provide a much better experience, and allow completion.

Describe the solution you'd like function signatures should return a return type, to allow completions. For example, in firestore.py def client() -> google.cloud.firestore.Client would allow completion on client().collection("something"), etc.

Describe alternatives you've considered As a workaround, I'm using the following today:

from firebase_admin import firestore
from google.cloud.firestore import Client as FirestoreClient # importing the return type of firestore.client()
db: FirestoreClient = firestore.client() # Adding an annotation to my db variable, to enable completion and syntax checking

Additional context Using the latest VSCode, with the Pylance extension.

guneemwelloeux avatar Jul 15 '22 13:07 guneemwelloeux

I couldn't figure out how to label this issue, so I've labeled it for a human to triage. Hang tight.

google-oss-bot avatar Jul 15 '22 13:07 google-oss-bot

Thank you @guneemwelloeux for filing this feature request. We have started adding type hints to new code (ex: #621) and will eventually add type hints to existing code in the future. In the meantime, if you or anyone in the community would like to send a PR we are glad to take a look. Thank you!

lahirumaramba avatar Jul 15 '22 14:07 lahirumaramba

@lahirumaramba , Would you please assign me to this issue?

mohitCodepy avatar Feb 22 '23 04:02 mohitCodepy

@lahirumaramba , Just for more clearity on the issue, Is there any way where I can connect with you guys directly because I'm highly interested to contribute here?

mohitCodepy avatar Mar 21 '23 10:03 mohitCodepy

Hi @mohitCodepy Thank you for your interests in contributing to the codebase! Please refer to https://github.com/firebase/firebase-admin-python/blob/master/CONTRIBUTING.md for more information about how you can contribute to this project. You will need to fork the repo, make the changes, and submit a pull request. We would be happy to review any PRs.

lahirumaramba avatar Mar 22 '23 21:03 lahirumaramba