MasseGuillaume / scala-interactive-update

Update your Scala dependencies interactively

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

scala-interactive-update

Update your Scala dependencies (both libraries and plugins) interactively. Video Demo.

Installation

Homebrew (Mac Only)

This will work best on Intel-based Macs for the time being, as GitHub actions do not support M1 builds yet. If you'd like faster binaries on M1, install manually with GraalVM (the next step).

brew install kitlangton/scala-interactive-update/scala-interactive-update

Manually with GraalVM

  1. Build the native image with show graalvm-native-image:packageBin.
sbt 'show graalvm-native-image:packageBin'
# [info] ~/code/sbt-interactive-update/target/graalvm-native-image/scala-interactive-update
  1. Move the generated binary onto your PATH.

Usage

Run the binary from within an sbt project folder.

scala-interactive-update

CleanShot 2022-06-27 at 09 15 23@2x

The commands are displayed at the bottom of the interactive output.

Select the libraries you wish to update, then hit Enter to update your build files to the selected versions.

CleanShot 2022-06-27 at 09 15 53@2x

Grouped Depenendcies

If multiple dependencies share a single version, they will be grouped.

CleanShot 2022-06-27 at 09 18 15@2x

Multiple Versions

If a dependency has multiple possible update version—for instance, a new major version and a new minor version—then you can select which version to upgrade to.

CleanShot 2022-06-27 at 09 20 23@2x

FAQ

How did you make the interactive CLI?

I have another library, zio-tui, for creating interactive command line interactive programs just like this one.

About

Update your Scala dependencies interactively


Languages

Language:Scala 98.1%Language:Shell 1.7%Language:Batchfile 0.3%