PostHog client is initialized unconditionally during fish shell completion, adding ~10 seconds to every completion

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

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
fish, python
Ambito
cli, performance

Direzione di ricerca

Inizia tracciando il punto di ingresso del completamento di fish e l'invocazione ripetuta del comando comfy, quindi segui l'avvio di CLI fino al punto in cui viene inizializzato PostHog. Confronta i tempi di completamento con Analytics abilitato e soppresso; il lavoro è completato quando il completamento non esegue più un'inizializzazione non necessaria della telemetria e il ritardo segnalato è ridotto.

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

Descrizione

bug

On my system, each completion invocation takes approximately 10.6 seconds because importing the CLI unconditionally initializes a PostHog background worker and completions invoke the comfy command twice. Suppressing PostHog reduces completion to roughly 0.8 seconds because the CLI is executed twice.

IDK if the fact that I have strict DNS blocking is what’s causing posthog to take the full 5s each time, but it seems possible

Therefore, there appear to be two related performance problems:

  1. Shell completion invokes the entire CLI twice per completion attempt.
  2. CLI startup eagerly initializes telemetry and other command infrastructure that completion does not need.

Analytics are disabled in my configuration, which makes the unconditional PostHog initialization additionally surprising.

Environment

  • comfy-cli: 1.12.0
  • Shell: Fish
  • OS: Linux
  • Analytics disabled in the Comfy configuration
  • DNS-level tracking-domain blocking is enabled

Reproduction

Compare an ordinary invocation of tabbing for a completion in fish shell then:

set -gx POSTHOG_API_KEY

It’s still kinda slow but it’s way more usable when you don’t post your hog each completion (~10s reduced to ~1s)

Lingua principale
Python
Stelle
1k
Fork
176
Merge medio
1g 11h
PR unite (30g)
87

Preparare l'ambiente

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 Comfy-Org/comfy-cli

Tutte le issue di Comfy-Org/comfy-cli

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.