Skip to content

Releases: knope-dev/knope

versioning 0.4.2 (2025-06-23)

23 Jun 02:29
83a9948
Compare
Choose a tag to compare

Features

Add support for dependencies in package.json files

You can now update the dependencies and devDependencies of a package.json like this:

[package]
versioned_files = [
  # Update @my/package-name in dependencies and devDependencies whenever this package version updates
  { path = "package.json", dependency = "@my/package-name" }
]

Support package-lock.json files

package-lock.json files are now supported
as versioned_files both for single packages and dependencies (in monorepos).

These files will be auto-detected and updated if using the default (no [package] or [packages]) config, so
this is a breaking change for those users.

Fixes

Fix multiple versioned files with same path

Previously, if you referenced the same file multiple times in versioned_files, only the first instance would apply.
Now, if you reference the same path multiple times, each instance will be processed sequentially.

Consider a mono-repo where every package should be versioned in lockstep:

[package]
versioned_files = [
  "package.json",
  { path = "package.json", dependency = "aDependency" },  # Before this fix, this was ignored
  "aDependency/package.json"
]

This use-case is now supported!

knope 0.21.0 (2025-06-23)

23 Jun 02:35
83a9948
Compare
Choose a tag to compare

Breaking Changes

Change to default handling of top-level package.json files

When using the default config (no [package] or [packages]), Knope will now treat a top-level package.json file
which contains a workspaces property as the entrypoint into a monorepo and not a single versioned_file package.

Support package-lock.json files

package-lock.json files are now supported
as versioned_files both for single packages and dependencies (in monorepos).

These files will be auto-detected and updated if using the default (no [package] or [packages]) config, so
this is a breaking change for those users.

Features

Add support for dependencies in package.json files

You can now update the dependencies and devDependencies of a package.json like this:

[package]
versioned_files = [
  # Update @my/package-name in dependencies and devDependencies whenever this package version updates
  { path = "package.json", dependency = "@my/package-name" }
]

Support for NPM workspaces

Knope now supports NPM-style workspaces when using the default config!

Fixes

Fix multiple versioned files with same path

Previously, if you referenced the same file multiple times in versioned_files, only the first instance would apply.
Now, if you reference the same path multiple times, each instance will be processed sequentially.

Consider a mono-repo where every package should be versioned in lockstep:

[package]
versioned_files = [
  "package.json",
  { path = "package.json", dependency = "aDependency" },  # Before this fix, this was ignored
  "aDependency/package.json"
]

This use-case is now supported!

config 0.2.4 (2025-06-23)

23 Jun 02:29
83a9948
Compare
Choose a tag to compare

Fixes

  • Update relative-path dependency

knope 0.20.0 (2025-05-03)

03 May 03:53
8fb366b
Compare
Choose a tag to compare

Breaking Changes

Add default variables

Default variables will now apply anywhere they can be
used—including the Command and CreatePullRequest steps.

If any of the defaults, like $version or $changelog, appear in a variable-supporting location
and you don't have explicit variables = set for that step, this is a breaking change.

Fixes

Fix detecting previous releases with no changelog

Previously, if you ran a PrepareRelease step with no changelog to modify in one workflow and then a Release step
in a separate workflow, Release would fail to create a Git tag.

Now, a release with "no notes" will properly be created if the last Git tag doesn't match the current version of
a file.
If a forge is configured, a release will be created on that forge without any notes,
and a title simply containing the version.

Fixes #1267

PrepareRelease will allow empty releases when using --override-version

Fixes #1423

config 0.2.3 (2025-05-03)

03 May 03:45
8fb366b
Compare
Choose a tag to compare

Features

  • Add Variable and Template structs (from CLI)

versioning 0.4.1 (2025-04-05)

06 Apr 16:12
819cc67
Compare
Choose a tag to compare

Features

  • Print each step before it runs when --verbose is set (#1399)

knope 0.19.2 (2025-04-05)

06 Apr 20:56
819cc67
Compare
Choose a tag to compare

Features

  • Print each step before it runs when --verbose is set (#1399)

config 0.2.2 (2025-04-05)

06 Apr 16:12
819cc67
Compare
Choose a tag to compare

Features

  • Print each step before it runs when --verbose is set (#1399)

versioning 0.4.0 (2025-04-05)

05 Apr 22:10
0e5bcd0
Compare
Choose a tag to compare

Breaking Changes

  • Change the return type of Config::defaults

Features

Add support for Tauri config files

Supports Tauri configuration files in json format named tauri.conf.json, tauri.macos.conf.json, tauri.windows.conf.json, and tauri.linux.conf.json.

knope 0.19.1 (2025-04-05)

05 Apr 22:18
0e5bcd0
Compare
Choose a tag to compare

Features

Add support for Tauri config files

Supports Tauri configuration files in json format named tauri.conf.json, tauri.macos.conf.json, tauri.windows.conf.json, and tauri.linux.conf.json.