I’m working on an IntelliJ plugin and noticed that the com.intellij.openapi.progress.ProgressIndicator interface is marked as obsolete in the latest SDK. I rely on it for tracking progress, cancellation, and switching between determinate and indeterminate states during background tasks.
Is there an officially supported replacement or recommended approach for handling progress reporting and cancellation in newer IntelliJ Platform versions?
Any guidance or documentation reference would be much appreciated. Thanks!
its javadoc says to see com.intellij.openapi.progress.util.AbstractProgressIndicatorBase, which says to use the experimental (!) com.intellij.platform.util.progress.ProgressPipe.
BTW, ProgressIndicator is still not marked as Deprecated or Obsolete (to avoid excessive highlighting. I don’t know if this means we’ll have more time to migrate our code…). So, for now, I would say we can stick to the good old ProgressIndicator, and see what happens with ProgressPipe in a near future.
One can use it further, no worries. If you write new code and can employ coroutines then you should use withBackgroundProgress, withModalProgress and friends.
Thanks for the clarification regarding ProgressIndicator . I understand it’s still usable, but I’m considering using the newer coroutine-based APIs like withBackgroundProgress and withModalProgress as you suggested.
To ensure a smooth migration and avoid regressions, could you help clarify:
Do these newer APIs fully replace the capabilities of ProgressIndicator ?