2025.3, also tested with 2026.1
In plugin.xml of a V2 plugin the IDE complained, that at least one required dependency is needed.
I made the following change, but that promptly broke the plugin because it created a dependency cycle.
If I understand correctly, the modules get an implicit dependency on the parent plugin (dev.j-a.swift@null), which creates the cycle.
Is my setup wrong or is it more likely a bug in the platform?
Change in main plugin.xml:
<!-- added loading="required" -->
<module name="noctule.core.shared" loading="required"/>
The dependencies of noctule.core.shared are:
<dependencies>
<module name="noctule.library.cloner"/>
<module name="noctule.library.telemetry"/>
</dependencies>
Both of these library modules have zero dependencies.
idea.log:
2026-06-16 15:59:09,305 [ 284] INFO - #c.i.i.p.PluginManager - Detected plugin dependencies cycle details (only related dependencies are included):
id = dev.j-a.swift@noctule.core.shared (Noctule, the Swift IDE) depends on:
id = dev.j-a.swift@noctule.library.cloner (Noctule, the Swift IDE)
id = dev.j-a.swift@noctule.library.telemetry (Noctule, the Swift IDE)
id = dev.j-a.swift@noctule.library.cloner (Noctule, the Swift IDE) depends on:
id = dev.j-a.swift@null (Noctule, the Swift IDE)
id = dev.j-a.swift@noctule.library.telemetry (Noctule, the Swift IDE) depends on:
id = dev.j-a.swift@null (Noctule, the Swift IDE)
id = dev.j-a.swift@null (Noctule, the Swift IDE) depends on:
id = dev.j-a.swift@noctule.core.shared (Noctule, the Swift IDE)
``