JBang Enterprise Edition release
🔐 Authenticated Repositories Just Work
JBang now supports .netrc credentials and environment tokens (GITHUB_TOKEN, GITLAB_TOKEN) everywhere — both for HTTP downloads and for Maven dependency resolution.
That means fetching dependencies from GitHub Packages, GitLab registries, or any private Maven repository now can be done without needing a settings.xml; and lets you reuse git, github and gitlab cli auth mechanisms.
Example .netrc to enable auth for github maven repositories and https locations:
machine maven.pkg.github.com
jbang-auth gh-auth
jbang-auth-host github.com
machine raw.github.company.com
jbang-auth gh-auth
jbang-auth-host github.ibm.com
machine gitlab.company.com
jbang-auth glab-auth
Please try and see if it works on your protected sites - let us know if works or not; we might be able to add support for it :)
☕ Install Any JDK From a URL or Local Archive
You can now point jbang jdk install at a URL or a local .tar.gz/.zip archive to install any JDK distribution, not just the ones JBang knows about. Got a custom build, an EA release, or a vendor-specific JDK? Just hand JBang the link.
Linking a local JDK is also smoother: jbang jdk install 21 /path/to/jdk now (again) works directly instead of requiring a non-numeric ID.
🐚 Tab Completion Gets Smarter
jbang completion now auto-detects your shell — no need to remember whether to pass bash, zsh, or fish. Just run jbang completion and it figures it out. PowerShell (pwsh) completion is now supported too. The output includes setup instructions so you know exactly what to add to your shell config.
🪟 Windows Fixes
- jbang deps search no longer hangs on Windows.
- jbang app install now correctly handles special characters and -D properties in PowerShell.
Other Improvements
- Better error messages when catalog downloads fail — no more cryptic stack traces.
- Clearer app setup messages — when JBang is already on PATH, it tells you so and suggests jbang version --update
instead of leaving you guessing. - Native image fixes — resolved a plugin discovery collision and improved reflection registration for Maven model classes.
What's Changed
- fix: register all Maven model classes for native image reflection by @maxandersen in #2551
- build: publish PR builds to jbang-pr-builds repo for easy testing by @maxandersen in #2562
- For JSON resources fetched over HTTP(S), explicitly set the
Acceptheader by @0x6675636b796f75676974687562 in #2563 - fix: clarify app setup messages and hint about jbang version --update by @maxandersen in #2558
- fix: resolve jbang deps search hang on Windows #2549 by @arnabnandy7 in #2568
- fix: add tests for -R and -C attached value syntax regression (#2555) by @maxandersen in #2556
- feat: add .netrc support and GITLAB_TOKEN for authenticated HTTP access by @maxandersen in #2565
- fix: improve error messages for catalog download failures by @maxandersen in #2561
- feat: improve completion command with shell auto-detection, pwsh support, and usage hints by @maxandersen in #2552
- fix: auto-generate non-numeric id when linking JDK with numeric version by @maxandersen in #2567
- fix: close shell configuration file stream by @sinhasebur in #2547
- test: add tests for jdk list by @quintesse in #2538
- feat: added ability to install JDKs from a URL or archive + fix by @quintesse in #2578
- fix: rename native binaries to avoid plugin discovery collision by @maxandersen in #2579
- docs: Removed Duplicate Sentences from Document by @DivyanshuBist in #2582
- fix: make testBuildTwiceWithCliDeps resilient to error message format by @maxandersen in #2586
- fix: PowerShell quoting for special chars and -D property spacing in app install by @maxandersen in #2585
- feat: apply netrc/env credentials to Maven repository authentication by @maxandersen in #2583
- build: update aesh by @maxandersen in #2590
New Contributors
- @0x6675636b796f75676974687562 made their first contribution in #2563
- @arnabnandy7 made their first contribution in #2568
- @sinhasebur made their first contribution in #2547
- @DivyanshuBist made their first contribution in #2582
Full Changelog: v0.139.3...v0.140.1