[Bug] [Safari] Extension conflict on websites with Shopify checkout
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- frontend
Línea de trabajo
Construye y habilita la extensión de Safari DarkReaderBug adjunta; después, reproduce el bloqueo en https://kkandjay.com/ completando el flujo de checkout de Shopify. Empieza siguiendo el observer de adoptedStyleSheets mientras la extensión reducida actualiza una hoja de estilos del Shadow DOM; el trabajo estará terminado cuando el checkout siga respondiendo sin que el proceso Safari Web Content alcance aproximadamente el 100 % de CPU.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Prerequisites
- I searched for any existing report about this bug to avoid opening a duplicate.
- I can reproduce this bug in a new, unmodified web browser profile with Dark Reader installed as the only extension.
- I understand I need to use the Broken Website Report template if this bug I am reporting occurs on a single website.
Bug Description
DarkReader can conflict with other Safari extensions, causing the web page to become unresponsive, on sites with Shopify checkout. This affects my own Safari extension StopTheMadness Pro: https://apps.apple.com/app/stopthemadness-pro/id6471380298
I've created and attached a reduced test case Safari extension to reproduce the issue. The extension creates a new CSSStyleSheet and adds it to the adoptedStyleSheets of the Shadow DOM. It appears that the DarkReader observer for adopted style sheets is running in an infinite loop.
The Shadow DOM in this case is actually the payment buttons, for example, the PayPal button.
By the way, I lied in prerequisites, because I had to: "I can reproduce this bug in a new, unmodified web browser profile with Dark Reader installed as the only extension." Of course since this is an extension conflict, I had to enable a second extension.
Website Address
Steps To Reproduce
- Build and enable the attached Safari extension DarkReaderBug
- Open https://kkandjay.com/
- Add an item to the cart
- Checkout
- Start entering data in the checkout form
Expected Behavior
The web page remains responsive.
Actual Behavior
The web page becomes unresponsive. The Safari Web Content process is using ~100% CPU.
Screenshots
No response
Operating System
macOS 15.7.9
Web Browser name and version
Safari 26.6.1
Dark Reader version
2.1.10
Additional Context
No response
- Lenguaje dominante
- TypeScript
- Estrellas
- 22.4k
- Forks
- 2.7k
- Merge medio
- 1 d 7 h
- PR fusionados (30 d)
- 54
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de darkreader/darkreader
-
Broken Website
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
darkreader/darkreader#15999 · 5 comentarios ·
Los mantenedores suelen responder en 2 días
-
SVG fill attributes are not overridden when enable() runs from a deferred scriptPosiblemente ocupada @KamilDev la tomó hace 123 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
darkreader/darkreader#15570 ·
Los mantenedores suelen responder en 2 días
-
enhancement
Dificultad 1/5 Menos de una hora Aptitud para principiantes 64/100
darkreader/darkreader#13250 ·
Los mantenedores suelen responder en 2 días
-
Broken Website
Dificultad 3/5 Medio día Aptitud para principiantes 56/100
darkreader/darkreader#16085 ·
Los mantenedores suelen responder en 2 días
-
Automation "system color scheme" flips to dark when a Document Picture-in-Picture window opens (Google Meet)Posiblemente ocupada @prostopasta la tomó hace 5 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 35/100
darkreader/darkreader#16056 · 1 comentario ·
Los mantenedores suelen responder en 2 días
Todos los issues de darkreader/darkreader
Issues similares
-
submodule-pointer-regression
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
smith-horn/skillsmith#3061 ·
Los mantenedores suelen responder en 1 día
-
area: ops type: test
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
accensa/x402-facilitator-stellar#559 ·
Los mantenedores suelen responder en 1 día
-
Fix the no-pin ruling in line-drawings: pin a below-the-record stage at the record's chapterAbiertodocumentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
cosimochellini/one-piece-zero-spoiler#551 ·
Los mantenedores suelen responder en 1 día
-
getWatched() omits __proto__ directories when cwd is setPosiblemente ocupada @maxazure la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
-
area:web enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día