googleapis / googleapis/google-cloud-python

WriteDisposition derives from object, not Enum

Ouverte
#15,690 1 commentaire 0 réactions 1 personne assignée Réclamée par @chalmerlowe Voir sur GitHub
api: bigquery priority: p3 type: bug
Langage dominant
Python
Étoiles
5.4k
Forks
1.8k
Merge moyen
3 j 4 h
PR mergées (30 j)
122

Description

Unlike many of the other enumerations defined in google/cloud/bigquery/enums.py, `WriteDisposition` derives from `object`, not `enum.Enum` and therefore `WriteDisposition` can't easily be used as a type annotation in method args where you want to set a default disposition.

#### Environment details

- OS type and version: macOS 15.7.3
- Python version: 3.13.2
- pip version: 25.3
- `google-cloud-bigquery` version: 3.40.0

#### Steps to reproduce

1. Define a function which simplifies calls to BQ and takes a WriteDisposition as a parameter
2. Set a default value for the WriteDisposition parameter
3. Fail to type check with `ty`

#### Code example

Something like:
```python
def write_to_bq(write_type: WriteDisposition = WriteDisposition.WRITE_APPEND)
```

Results in an [invalid-argument] type checking error from `ty` with a message like:

```
Expected `WriteDisposition`, found `Unknown | Literal["WRITE_APPEND"]`
```

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.