Extensions lifecycle is managed by the IntelliJ Platform. Using Kotlin objects for extension registration may cause creation of unnecessary extension instances and make plugin unloading impossible.
Extension registration:
<annotator language="myLang" implementationClass="com.example.MyAnnotator"/>
Extension implementation:
// bad: object MyAnnotator : Annotator { ... } // good: class MyAnnotator : Annotator { ... }
New in 2023.1