GoogleCloudPlatform / GoogleCloudPlatform/functions-framework-python

Functions defined with `@functions_framework.http` or `@functions_framework.typed` do not support type hints

Offen
#361 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
enhancement P2
Vorherrschende Sprache
Python
Sterne
968
Forks
128
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Simply put, defining a function with the `@functions_framework.http` decorator does not support type hints. With some digging, I stumbled upon the possibility of using `@functions_framework.typed`, but even this does not work, nor is it documented anywhere. Please see:
1. https://github.com/GoogleCloudPlatform/functions-framework-python/pull/208
2. https://github.com/GoogleCloudPlatform/functions-framework-python/issues/290

This is taken from my attempts to create and deploy a function running python version `3.12.x`. There are no error messages indicating that the cause is the type hints, only that the function failed to be ready and accepting of traffic.

I would suggest the following:
1. Type hints be properly supported for Python functions running any compatible version, given they are now standard practice for developers
2. Versions that use type hinting when they shouldn't -- or otherwise cannot be built -- show an appropriate and relevant error message

As for an example, even the most basic functions such as the following will break:

```python
from flask import Request

@functions_framework.http
def main(request: Request):
pass
```

```python
from flask import Request

@functions_framework.typed
def main(request: Request):
pass
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.