flutter / flutter/flutter-intellij

Plugin leaks memory due to using Project as a root disposable

Open
#6,076 1 comment 0 reactions 0 assignees View on GitHub
P1 tech debt
Dominant language
Java
Stars
2k
Forks
356
Avg merge
1d 11h
Merged PRs (30d)
27

Description

https://plugins.jetbrains.com/docs/intellij/disposers.html#the-disposer-singleton
"Even though Application and Project implement Disposable, they must NEVER be used as parent disposables in plugin code. Disposables registered using those objects as parents will not be disposed when the plugin is unloaded, leading to memory leaks."

We couple many disposables in the plugin to the project.
This will cause problems if we want to make the plugin reloadble without a restart and maybe other memory leaks.

Contributor guide

Open the contributing guide

Research direction

Start with the linked IntelliJ disposer documentation, then locate the plugin disposables that are coupled to the project. Inventory those registrations and verify that plugin unload disposes them without retaining project-owned objects; the issue does not name specific files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.