Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

signature tests for floor_divide and remainder divide by 0

Aperta
#170 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python
Ambito
testing

Direzione di ricerca

Inizia individuando i test della signature relativi a _test_uninspectable_func e i casi per remainder e floor_divide. Riproduci gli input segnalati con valori torch.tensor ed esamina array_api_compat/torch/_aliases.py:75. Il lavoro è completato quando i test pertinenti gestiscono esplicitamente il comportamento della divisione per zero senza un errore di test imprevisto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

medium priority

This is a problem for torch, which raises ZeroDivisionError in this case (note that the spec leaves integer division by 0 unspecified).

For example:

x1 = tensor(0, dtype=torch.uint8), x2 = tensor(0, dtype=torch.uint8), kwargs = {}

    @wraps(f)
    def _f(x1, x2, /, **kwargs):
        x1, x2 = _fix_promotion(x1, x2)
>       return f(x1, x2, **kwargs)
E       RuntimeError: ZeroDivisionError
E       Falsifying example: _test_uninspectable_func(
E           data=data(...),
E           func_name='remainder',
E           func=remainder,
E           stub_sig=<Signature (x1: ~array, x2: ~array, /) -> ~array>,
E           array=None,
E       )
E       Draw 1 (x1): tensor(0, dtype=torch.uint8)
E       Draw 2 (x2): tensor(0, dtype=torch.uint8)
E       trying remainder(tensor(0, dtype=torch.uint8), tensor(0, dtype=torch.uint8))

../array-api-compat/array_api_compat/torch/_aliases.py:75: RuntimeError

And similarly for floor_divide.

Lingua principale
Python
Stelle
74
Fork
54
Merge medio
4h 35m
PR unite (30g)
4

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di data-apis/array-api-tests

Tutte le issue di data-apis/array-api-tests

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.