MagicStack / MagicStack/py-pgproto
Unable to build on Python 3.12
Personne n'a encore pris cette issue.
- Langage dominant
- Cython
- Étoiles
- 38
- Forks
- 21
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
Getting a lot of these errors when trying to build https://github.com/MagicStack/asyncpg on Python 3.12:
```
asyncpg/pgproto/pgproto.c:40800:55: error: no member named 'ob_digit' in 'struct _longobject'
const digit* digits = ((PyLongObject*)x)->ob_digit;
~~~~~~~~~~~~~~~~~~ ^
asyncpg/pgproto/pgproto.c:40855:55: error: no member named 'ob_digit' in 'struct _longobject'
const digit* digits = ((PyLongObject*)x)->ob_digit;
~~~~~~~~~~~~~~~~~~ ^
asyncpg/pgproto/pgproto.c:41034:55: error: no member named 'ob_digit' in 'struct _longobject'
const digit* digits = ((PyLongObject*)x)->ob_digit;
~~~~~~~~~~~~~~~~~~ ^
```
I believe this can be solved by converting `((PyLongObject*)x)->ob_digit` to `((PyLongObject*)x)->long_value->ob_digit`
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par les erreurs de compilation de Python 3.12 dans asyncpg/pgproto/pgproto.c, en particulier les lignes qui accèdent à PyLongObject.ob_digit. Comparez l’accès signalé avec la modification proposée long_value->ob_digit, puis reconstruisez py-pgproto avec Python 3.12 et confirmez que ces erreurs sont résolues.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- c, python
- Domaine
- databases
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 38/100