feat(db-dtypes): support pandas 3.1.0 and update extension compliance tests

Ouverte
#18,528 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
52/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
Active
Stack technique
numpy, pandas, python
Domaine
data, testing-qa

Piste de recherche

Start in tests/compliance/ and inspect the JSONArray and TimeArray compliance coverage, then review packages/db-dtypes/setup.py for the pandas version bound. Run the compliance tests against pandas 3.1.0 and check fillna, comparisons, reductions, warnings, and test_map behavior. Done means the compliance tests pass and the pandas upper bound is updated after compatibility is confirmed.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Description

(introduced in pandas 3.1.0rc0) includes changes to pandas' internal ExtensionArray compliance test base classes and reduction semantics.

Areas to address:
  1. Private import removal: Replace from pandas.compat.numpy import np_version_gt2 in tests/compliance/ with a dynamic version check against NumPy (packaging.version.parse(np.__version__) >= Version('2')).
  2. JSONArray & TimeArray compliance: Update JSONArray and TimeArray methods to conform to pandas 3.1 ExtensionArray behaviors:
    • ExtensionArray.fillna dict filling semantics.
    • Comparison and reduction return dtypes and Pandas4Warning deprecation warnings.
    • test_map return types.
  3. Upper bound relaxation: Relax pandas < 3.1.0 back to pandas < 4.0.0 in packages/db-dtypes/setup.py once fully compliant.
Langage dominant
Python
Étoiles
5.4k
Forks
1.8k
Merge moyen
2 j 7 h
PR mergées (30 j)
173

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de googleapis/google-cloud-python

Toutes les issues de googleapis/google-cloud-python

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

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