JJava 1.0-M3 released · dflib/jjava · Discussion #41

JJava is a Jupyter kernel for Java. Since we forked iJava couple of months ago, we keep improving the kernel. The new 1.0-M3 release has a number of important usability improvements and bug fixes:

  • We forked and took ownership of another important piece of the puzzle - the base JVM kernel library that was unsupported for many years, just like iJava. It is now in org.dflib.jjava namespace and we finally have full control over the kernel code.
  • The new Extension API allows custom libraries to pre-load code into the kernel when they are added as dependencies. Sure enough, DFLib is already taking advantage of that, drastically simplifying starting new notebooks. (But note that this change makes the kernel incompatible with DFLib versions < M23, so you need to upgrade both in sync if you are using DFLib DataFrames)
  • We fixed an issue loading third-party dependencies that are internally packaged as bundle instead of jar. For instance, this now allows working with Avro and Parquet files.
  • We now have a "zero dependency" kernel, as we started "shading" a few remaining deps. So the kernel doesn't pollute the classpath for the notebook.
  • Finally, we added direct access to the instance of JShell that should help to debug kernel issues.