Releases: knope-dev/knope
versioning 0.5.2 (2025-08-16)
Fixes
Fix pre-release versioning when there are no previous stable versions
Previously, if there was not a Git tag containing a previous stable version, Knope would default to "0.0.0".
Because of the special 1.0.0 rules, this also meant there was no way to start a project at a pre-release of 1.0.0
with no prior releases.
Now, if there are no previous stable releases, Knope will use the version in your files instead of calculating a version
based on "0.0.0".
knope 0.21.3 (2025-08-16)
Fixes
Fix pre-release versioning when there are no previous stable versions
Previously, if there was not a Git tag containing a previous stable version, Knope would default to "0.0.0".
Because of the special 1.0.0 rules, this also meant there was no way to start a project at a pre-release of 1.0.0
with no prior releases.
Now, if there are no previous stable releases, Knope will use the version in your files instead of calculating a version
based on "0.0.0".
versioning 0.5.1 (2025-08-10)
Features
- Support
workspace.package.version
in Cargo.toml
versioning 0.5.0 (2025-08-10)
Breaking Changes
Change
now hassummary
anddetails
instead ofdescription
Change
no longer implsFrom<changesets::PackageChange>
ChangeSource
variants are now a struct style instead of tuple stylePackage::get_changes
has a completely different signature, to support providing commit info for each changeReleaseNotes
has new, requiredchange_templates
field- Swapped
From<ChangeType>
toFrom<&ChangeType>
forchangesets::ChangeType
ReleaseNotes::create_release
is no longer pub
This wasn't being used by Knope or Knope Bot directly, and non-pub functions give better lints.
If anyone is using this crate and needed that function, let me know!
Features
impl Default for ReleaseNotes
knope 0.21.2 (2025-08-10)
Features
- Support
workspace.package.version
in Cargo.toml
knope 0.21.1 (2025-08-10)
Features
Add support for customizing release note entries
You can now customize individual entries in release notes to change the formatting or add authors/hashes to entries when available.
config 0.2.5 (2025-08-10)
Features
- New
Config
andReleaseNotes
structs
versioning 0.4.2 (2025-06-23)
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)
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)
Fixes
- Update relative-path dependency