openapi-generators / openapi-generators/openapi-python-client
Union[Unset, datetime.date] is not allowed in header
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Python
- Estrellas
- 2k
- Forks
- 293
- Merge medio
- 34 min
- PR fusionados (30 d)
- 1
Descripción
Describe the bug
The parameter name='IF-MODIFIED-SINCE' produces an error 'Union[Unset, datetime.date] is not allowed in header', which prevents the endpoint from being generated.
OpenAPI Spec File
https://docs.developers.clio.com/openapi.json
Desktop (please complete the following information):
- OS: macOS 13.4.1
- Python Version: 3.12
- openapi-python-client version: 0.15.2
Additional context
The parameter schema is:
"schema": {
"type": "string", (the format in "YYYY-MM-DD")
"format": "date" (the format defined by full-date in RFC3339)
}
The client generator is attempting to map this schema to a Python Union type, the union of Unset and datetime.date, which is not allowed or fitting in a HTTP header. Maybe string dates need to be transformed to datetime objects and vice versa? Or the date could be converted to a string before setting the header? At least that's my limited understanding of the situation.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
No se nombran archivos del repositorio ni pruebas. Empieza reproduciendo la generación con la especificación OpenAPI enlazada y siguiendo el procesamiento del parámetro de cabecera IF-MODIFIED-SINCE; inspecciona cómo se representan las fechas como strings en las cabeceras generadas. Se considera terminado cuando el endpoint se genera correctamente sin el error Union[Unset, datetime.date], con una representación probada para la cabecera de fecha.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- api, tooling
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 42/100