Roadmap
Ce qui est livré dans Nucleus 2.0 et 2.1, les modules prévus pour 2.2 et 2.3, et les pistes à l'étude.
Nucleus 2.0 fournit la base runtime et packaging. Les releases suivantes ajoutent des modules d'intégration OS pour des fonctions que les apps desktop JVM atteignent autrement via du JavaScript ou du code natif écrit à la main. Cette page liste ce qui est livré, ce qui est prévu, et ce qui reste spéculatif.
Livré en 2.0
- Point d'entrée unifié
nucleusApplication { }— single-instance, deep links, AOT, init GraalVM, priming AutoLaunch, AUMID Windows — tout automatique. - Backend Tao — Wayland natif, multi-touch, pression et tilt du stylet, popups natifs,
NativeViewembarqué, drag-and-drop avec diagnostics. - 18 formats de packaging depuis un seul DSL Gradle.
updater-runtime— auto-update compatible electron-builder, canaux, détection post-update.- GraalVM Native Image — pipeline de packaging bout-en-bout (DMG, NSIS, DEB), analyseur statique de réflexion, métadonnées de reachability par bibliothèque.
- Liquid Glass macOS au SDK 26 — le patching
vtoolfait fonctionner n'importe quel JDK. - 40+ modules runtime : notifications, system tray, hotkeys globaux, contrôles média, progression taskbar, energy manager, system info, scheduler, autolaunch, dark mode, couleur système, SSL natif, HTTP natif, watcher de système de fichiers, fenêtres décorées avec quatre toolkits.
Livré en 2.1
Outillage et native image, pas de nouveaux modules runtime :
- Oracle GraalVM est désormais la toolchain recommandée et par défaut. Nucleus la télécharge et la met en cache automatiquement, et le backend Tao (par défaut) compile les images natives avec — ce qui débloque les fonctionnalités avancées d'image native sur lesquelles Nucleus s'appuie : Profile-Guided Optimization,
-O3, et les profils inférés par ML que les éditions Community n'offrent pas. Oracle GraalVM est l'édition auparavant appelée Enterprise. Seul le backend AWT, déprécié, nécessite encore une installation locale de BellSoft Liberica NIK, pour le support AWT/Swing en image native. - Compose Hot Reload — fonctionne out of the box. Appliquez le plugin
org.jetbrains.compose.hot-reloadet lancezhotRun; Nucleus résout le point d'entrée depuisnucleus.application.mainClass. Pris en charge sur les backends AWT et Tao. - Auto-download de la toolchain GraalVM — Oracle GraalVM au premier build (Innovation par défaut,
channel = GraalvmChannel.LTSpour la LTS).GRAALVM_HOMEreste prioritaire. - Optimisation guidée par profil (PGO) — enregistrez un profil avec
runWithPgoInstrument, committez-le, et les builds natifs suivants l'appliquent automatiquement. Oracle GraalVM uniquement. - Images natives plus petites —
optimization = NativeImageOptimization.SIZE(-Os),marchtype-safe, et stripping automatique de l'exécutable sur Linux et macOS. CompressionLevel.Ultra— recompression post-traitement supplémentaire (DMG LZMA, DEBxz -9e) pour des installeurs plus petits.--enable-native-access=ALL-UNNAMEDdans les arguments JVM par défaut pour JDK 24+ (JEP 472).
À venir en 2.2
Le premier groupe de modules couvre la sécurité et l'identité :
| Module | Description | macOS | Windows | Linux |
|---|---|---|---|---|
secure-storage | Stockage de secrets adossé au hardware pour tokens, mots de passe, clés | Keychain | Credential Manager / DPAPI | Secret Service (libsecret) |
biometric-auth | Authentification par empreinte / visage | LocalAuthentication (Touch ID / Face ID) | Windows Hello | fprintd via D-Bus / polkit |
À venir en 2.3
Événements et IO au niveau OS :
| Module | Description | macOS | Windows | Linux |
|---|---|---|---|---|
share-sheet | Share sheet OS (URL, fichier, texte) | NSSharingService | Windows DataTransferManager | xdg-desktop-portal Share |
power-events | Sleep / wake / lock / unlock / écran éteint / état batterie | Notifications NSWorkspace | WM_POWERBROADCAST / WTSRegisterSessionNotification | Signaux D-Bus org.freedesktop.login1 |
À l'étude
Spéculatif — pas d'engagement, pas d'ETA. Ouvrez une issue si vous voulez voir l'un d'eux arriver plus tôt :
| Module | Description | macOS | Windows | Linux |
|---|---|---|---|---|
clipboard | Presse-papier riche — image, fichiers, HTML, RTF — plus watcher de changement | NSPasteboard | OleGetClipboard / Clipboard History API | wl-clipboard / sélections X11 |
screen-capture | Capture / enregistrement d'écran natif | CGDisplayCreateImage / ScreenCaptureKit | Windows Graphics Capture / DXGI | xdg-desktop-portal Screenshot |
Influencer l'ordre
Ouvrez une issue décrivant votre cas d'usage, liez une app exemple qui a besoin du module, ou sponsorisez l'implémentation d'une plateforme précise. La complexité des modules natifs tient surtout au pont JNI par OS — plus il y a de monde qui en a besoin, plus vite ça sort.