We are happy to announce the release of riff v0.3.0. Thank you all riff, Buildpacks, and Knative contributors.

The riff CLI can be downloaded from our releases page on GitHub. Please follow one of the getting started guides, to create a new cluster on GKE, Minikube, Docker Desktop for Mac, or Docker Desktop for Windows.

Notable changes

Cloud Native Buildpacks

  • update to pack v0.1.0
  • builder uses separate buildpack per function invoker
  • The Java buildpack includes support for Java 11. Please add a source version of Java 8 or later to your Maven pom or Gradle build.

    Maven

    <properties>
      <maven.compiler.source>1.8</maven.compiler.source>
      <maven.compiler.target>1.8</maven.compiler.target>
    </properties>
    

    Gradle

    sourceCompatibility = 1.8
    

Knative

riff CLI

  • support for Windows
  • easy install via brew and chocolatey
  • riff system install and riff system uninstall with improved robustness
  • riff namespace init with basic auth for alternative registries
  • riff namespace cleanup similar to system uninstall, but for a namespace
  • riff function build to build an image without creating a service
  • riff function create
    • --sub-path for --git-repo builds from a subdirectory
    • --image auto-inferred from registry prefix and function name
    • riff.toml optional alternative to CLI parameters
  • riff service invoke with improved error handling
  • riff channel create will automatically use a default channel provisioner

More modular Buildpacks

This release introduces a new buildpacks structure with a buildpack per language. The modular approach will help restore support for custom language invokers in a future riff release. Here is an updated map of the buildpack-related repos on Github.

riff Builder is the container for function builds using buildpacks.

Java group

Node group

Command group

Our plans for stream processing

Since we anticipate replacing the existing Channels and Subscriptions with new Stream and Processor resources, aligned with stream-oriented Function Invokers, we are deprecating the use of Channel and Subscription resources in this release.

You can follow our progress in this roadmap for serverless stream processing.

Updated: