2 min Devops

Wel de lusten, niet de lasten van monorepos met Workspaces van Jetbrains

Wel de lusten, niet de lasten van monorepos met Workspaces van Jetbrains

JetBrains heeft eindelijk een langverwachte functie geïmplementeerd in zijn IntelliJ IDEA IDE, een omgeving die vooral in gebruik is voor Java- en Kotlin-development. De functie heet Multi-Project Workspaces en maakt het mogelijk om, zoals de naam al verklapt, meerdere projecten uit verschillende repositories samen te beheren.

De functie komt 13 jaar nadat gebruikers het verzoek voor het eerst neerlegden bij Jetbrains. Hoewel de plugin momenteel alleen beschikbaar is voor IntelliJ IDEA, zegt JetBrains van plan te zijn deze uit te breiden naar andere IDE’s zoals PyCharm en Android Studio. In de eigen uitleg maakt Jetbrains duidelijk dat een Workspace geen projecten of softwareproducten vervangt, maar fungeert als bureaubblad voor het managen van projecten. Het bedrijf noemt het een ‘container’, en even verderop in de documentatie een ‘collectie’.

Multi-Project Workspace is beschikbaar als plugin en biedt volgens Jetbrains de voordelen van een monorepo zonder de nadelen. Workspaces stellen ontwikkelaars in staat om naar meerdere projecten te verwijzen binnen één omgeving met behoud van hun onafhankelijkheid, in tegenstelling tot traditionele monorepos, die last kunnen hebben van prestatie- en coördinatieproblemen door hun alles-in-één structuur. Wanneer één project in een monorepo stuk is, is de gehele monorepo stuk. Dergelijke issues worden voorkomen met deze aanpak.

Nog volop werk aan de winkel

Voorbehoud is dat de plugin nog een werk-in-uitvoering is. Huidige beperkingen zijn onder andere de noodzaak voor nieuwe run-configuraties voor elk geïmporteerd project en het ontbreken van support voor het hernoemen van projecten. Ook is er momenteel nog geen synchronisatie van instellingen tussen projecten en Workspaces. JetBrains is van plan om Workspaces uiteindelijk te promoveren tot een kernfunctie in al zijn IDE’s. Het bedrijf belooft verbeteringen zoals naadloos debuggen in projecten en integratie met versiebeheersystemen.

De plugin mag zich al verheugen in positieve feedback van developers, hoewel volgens Devclass velen staan te popelen tot het moment dat deze beschikbaar komt in andere JetBrains IDE’s. JetBrains zegt zich bewust te zijn van die vraag, maar wil eerst de kinderziektes uit de functionaliteit hebben voordat het op grotere schaal wordt geïmplementeerd.

Lees ook: JetBrains brengt 2024.2-updates naar alle IDE’s