googleapis / googleapis/google-api-python-client
Disable prettyPrint by default for Google Sheets API responses
- Lenguaje dominante
- Python
- Estrellas
- 8.9k
- Forks
- 2.6k
- Merge medio
- 2 d 28 min
- PR fusionados (30 d)
- 17
Descripción
Large Google Sheets API responses are currently pretty-printed by default. For machine-to-machine use, the additional whitespace and line breaks provide no benefit while increasing response size and I/O. When processing large responses, this can also contribute to unnecessary memory usage.
**Describe the solution you'd like**
Change the default value of `prettyPrint` from `true` to `false` for the Sheets API discovery document
and send `prettyPrint=false` unless the caller says otherwise.
**Describe alternatives you've considered**
The current workaround is to explicitly pass `prettyPrint=False` to every request. This works, but requires application code to opt out of an unnecessary default and is easy to miss, especially in codebases making many Sheets API requests.
Another option would be to modify the client code to inject `prettyPrint=False`, but changing the API discovery document's default seems simpler and more consistent with the intended API behavior.
Additional context
This is particularly relevant for applications processing large Sheets responses programmatically. Avoiding pretty printing would reduce the amount of data transferred and processed, as well as the memory required to hold the response in memory. For large responses, this can also help reduce peak process RSS.
As a bonus, this would make the default more appropriate for API clients, where responses are consumed programmatically rather than displayed directly to users.
Guía de contribución
Línea de trabajo
Locate the Sheets API discovery document in the repository and search for the prettyPrint parameter and its default. Change the documented default to false while preserving an explicit caller value, then run the relevant test suite or discovery-document tests to verify requests use prettyPrint=false by default.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- api
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 68/100