Repository navigation
JVN 0.8.0 improves reliability across project editing, asset loading, persistence, live reload, and plugin compatibility. Existing project and save formats remain unchanged.
Improvements
- Project editing: handle relative project roots and folder-link cycles; preserve existing files during creation; reject directory targets and rename paths; prevent existing links from redirecting new files outside the project.
- Asset loading: use ZIP central-directory lookup and streaming reads instead of repeated archive scans and whole-entry buffering. Pack listings include sorted immediate children and implicit folders, and invalid archives fail early.
- Cache accounting: retain insertion-time weights and evict before addition so mutable values and very large budgets cannot corrupt memory accounting.
- Persistence: saves, settings, and persistent progress use unique temporary files before replacement. Concurrent writers cannot overwrite each other's temporary data. Save lists are sorted and exclude directories; invalid non-finite volume settings are ignored.
- Live reload: bind only to localhost, bound clients and queued work, enforce read timeouts and command limits, and close client sockets on shutdown. Invalid ports, failed callbacks, and malformed requests are handled safely.
- Plugins: caret ranges respect pre-1.0 compatibility boundaries; for example,
^0.7.0excludes0.8.0. - Release presentation: updated Hub/Editor version labels, runtime attribution, and the in-app What's New screen.
Validation
- Full Gradle build passed.
- Full contributor verification passed: 1,604 tests passed, 17 platform-specific or opt-in tests skipped, no failures.
- Strict documentation lint: 0 errors, 0 warnings.
- Plugin API Javadoc, wrapper bootstrap, direct-launch licensing/cache smoke test, and patch whitespace checks passed.
- Rendered runtime Settings attribution checked at version 0.8.0.
Distribution and known limitation
This is a source release, requiring JDK 21. Download the source archive below or check out v0.8.0, then use ./jvnw build and ./jvn.
Official prebuilt engine binaries remain planned for the first major release. The existing Windows/macOS native-package CI jobs require a license-acceptance receipt on each runner and currently fail at that gate on fresh runners; native-installer verification is not claimed. The tag-triggered portable game packaging workflow has the same receipt requirement. License terms and acceptance gates are unchanged.
Full notes: https://github.com/S1mplector/Java-Vector-Nexus/blob/v0.8.0/docs/project-setup/release/whats-new-0.8.0.md