github jbangdev/jbang v0.102.0

latest releases: v0.132.1, v0.132.0, v0.131.0...
2 years ago

Its 2023 and time to get releases going again :)

Basic Auth

Michael Meyers added basic auth support for loading scripts allowing you to specify a username/password for secured scripts:

export JBANG_BASIC_AUTH_USERNAME=myname
export JBANG_BASIC_AUTH_PASSWORD=supersecret
jbang https://some.private/location.java

Download sources

IDE's and Users can now tell JBang to download sources. Useful to have IDE's pickup sources immediately.

jbang edit will resolve sources automatically, and by setting JBANG_DOWNLOAD_SOURCES=true as a environment variable all operations resolving dependencies will resolve sources too.

jbang jdk being more consistent

jbang jdk allows you to manage the java versions installed by jbang; thus jbang jdk java-env would always prefer jbang managed jdk. Now jbang jdk java-env will honor how jbang otherwise pick java. Meaning if you have a java in your path it will print the java-env info for java from the path.

This is a small change but could break your assumptions if you assumed jbang jdk java-env would always give you a jbang installed java.

Using other package manager's java (Experimental)

JBang defaults to use your local configured java or download and use versions of java from Adoptium project if no fitting JDK present.
Users using sdkman and other package managers, like scoop on Windows, requested that JBang could use those package managers java rather than jbang's own.

In this release there is a --jdk-providers flag that allows you to enable use of sdkman and scoop.

i.e. to have jbang honor sdkman installs before jbang but still use path if present do following:

jbang jdk --jdk-providers=path,sdkman,jbang list --show-details
Installed JDKs (<=default):
   11 (11.0.17, path, path, /Users/manderse/.sdkman/candidates/java/current)
   11 (11.0.17, sdkman, 11.0.17-zulu-sdkman, /Users/manderse/.sdkman/candidates/java/11.0.17-zulu)
   11 (11.0.17, sdkman, current-sdkman, /Users/manderse/.sdkman/candidates/java/current)
   11 (11.0.17, jbang, 11-jbang, /Users/manderse/.jbang/cache/jdks/11)
   17 (17.0.5, jbang, 17-jbang, /Users/manderse/.jbang/cache/jdks/17)
   19 (19.0.1, jbang, 19-jbang, /Users/manderse/.jbang/cache/jdks/19)
   20 (20, jbang, 20-jbang, /Users/manderse/.jbang/cache/jdks/20)

Similar can be done with run, build and other jdk commands to get jbang to pick other package managers java.

Changelog

Contributors

We'd like to thank the following people for their contributions:
Tako Schotanus, Max Rydahl Andersen, Francesco Marchioni, Mikael Koskinen, Michael Meyer

🚀 Features

  • 20b39af Enabled the usage of existing JDK installations (#1500)
  • 28957ce adding --ds/--download-sources and auto download for edit (#1539)
  • 019d732 support basic-auth for loading scripts (#1516)

🐛 Fixes

🛠 Build

  • 062e1c8 remove spotlessxml implicit dependency warnings

Don't miss a new jbang release

NewReleases is sending notifications on new releases.