Calidad de código · plugin para JetBrains
Go Timer Leak Companion
GratisCode Quality / Logging
Warning on a case <-time.After(...) inside a select block: Go's documented behavior: the Timer created by time.After is not recovered by the garbage collector until it fires, and a select inside any repeatedly-executed loop (the overwhelmingly common place a select appears) creates a new one on every iteration, leaking memory until each one's duration elapses. time.NewTimer(...) plus
La brecha que resuelve
select { case <-time.After(5 * time.Second): ... } inside a for loop compiles fine and reads naturally — it looks like the idiomatic way to add a timeout to a select. It quietly leaks a Timer on every iteration; in a hot loop this is measured in real, documented memory growth (~200 bytes per timer as of Go 1.15, adding up fast at scale).
Datos y precio
- Categoría
- Calidad de código
- Precio
- Gratis
- Plataforma
- IntelliJ-family
- Primera publicación
- 2026-08-27
- ID en Marketplace
- #33876
- Repositorio
go-timer-leak-companion- Crecimiento
- Recién publicado
Plugins relacionados
Todos los plugins de calidad de códigoPreview every refactoring before committing it. Simulates a rename in an isolated, in-memory sandbox (using IntelliJ's own PSI, Find Usages, and refactoring processors, never a custom engine) and shows a full impact report, deterministic validation, and a native side-by-side diff before anything touches a real file.
A cognitive-complexity gutter icon for Java and Kotlin methods/functions: a colored badge with the real number, computed with SonarSource's documented Cognitive Complexity algorithm, never blocking the UI thread.
Shows errors and warnings inline, at the end of the line that has them, instead of only as a gutter icon or a squiggly underline you have to hover to read. One hint per line (most severe diagnostic wins) so it never turns into unreadable clutter.
Gutter icon next to every recognized feature-flag-check call's key literal in Java/Kotlin code (isEnabled("checkout_v2"), variation("checkout_v2", false), and similar), showing how many times that exact key is referenced anywhere else in the open project: helps find orphaned flags (dead code left behind after a rollout completed) without connecting to any provider. 100
Descargas y estrellas al 2026-10-18, actualizadas dos veces al día desde las API de JetBrains Marketplace y GitHub.