microsoft / microsoft/playwright-python
[Bug]: 0.0 is serialized as -0 when passed to evaluate()
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 15k
- Fork
- 1.2k
- Merge medio
- 55m
- PR unite (30g)
- 4
Descrizione
Version
1.62.1
Steps to reproduce
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch()
page = browser.new_page()
result = page.evaluate("(value) => Object.is(value, -0)", 0.0)
print(result)
browser.close()
Expected behavior
Passing Python 0.0 to JavaScript should preserve positive zero.
Object.is(value, -0) should return false.
Actual behavior
Python 0.0 is serialized as JavaScript -0.
Object.is(value, -0) returns true.
Additional context
No response
Environment
- Operating System: macOS Tahoe 26.4.1
- CPU: Apple M1 (arm64)
- Browser: Chromium
- Python Version: Python 3.14.5
- Other info:
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia dal punto di ingresso sync_playwright page.evaluate e riproduci il problema usando l’esempio Python fornito. Traccia come viene serializzato l’argomento 0.0 prima di raggiungere JavaScript, quindi verifica che Object.is(value, -0) restituisca false con il comportamento corretto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- api, testing-qa
- Tipo di issue
- Bug
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Attiva
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 68/100