Help you to upgrade your Typst Packages.
To upgrade your typst-package dependencies, you can use the following command (assuming your project located in /path/to/your/project):
$ typst-upgrade /path/to/your/projectSee typst-upgrade --help for more information:
$ typst-upgrade --help
A tool to upgrade typst packages
Usage: typst-upgrade [OPTIONS] <TYPST_ENTRY_PATHS>...
Arguments:
<TYPST_ENTRY_PATHS>... Typst entry paths
Options:
-d, --dry-run Dry run without editing files, exit with `73` if there are changes
-i, --incompatible Allow incompatible upgrades
--color <COLOR> Colorize output [default: auto] [possible values: auto, always, never]
--diff <DIFF> Diff style [default: short] [possible values: short, full, none]
-v, --verbose Print more information
-h, --help Print help
-V, --version Print version$ cat main.typ
#import "@preview/cetz:0.2.1"
$ typst-upgrade -i main.typ
Checking ./main.typ
- #import "@preview/cetz:0.2.1"
+ #import "@preview/cetz:0.3.1"
Updating ./main.typ
$ cat main.typ
#import "@preview/cetz:0.3.1"By default, typst-upgrade will only upgrade your dependencies to the latest compatible version. If you want to upgrade to the latest version regardless of compatibility, you can use the --incompatible or -i flag.
Typst packages commonly follow Semantic Versioning, so upgrading to the latest compatible version is usually recommended. Note that some packages are in-development (major version is 0), which means they may introduce breaking changes in minor versions, and --incompatible flag is required to upgrade such packages.
You can use typst-upgrade in your GitHub Actions workflow to automatically check if any of your dependencies can be upgraded. Here is an example workflow:
steps:
- uses: actions/checkout@v4
- uses: taiki-e/install-action@cargo-binstall
- run: cargo binstall typst-upgrade
- run: typst-upgrade . --dry-runYou can install typst-upgrade via cargo:
$ cargo install typst-upgradeOr if you use cargo-binstall, you can install typst-upgrade via cargo binstall:
$ cargo binstall typst-upgradeYou can download the prebuilt binaries from the release page.
Licensed under the MIT License.