Skip to content

Releases: knope-dev/knope

config 0.2.0 (2024-09-15)

15 Sep 01:34
971b4bf
Compare
Choose a tag to compare

Breaking Changes

  • Changed type of Package::assets to Assets enum

versioning 0.3.0 (2024-08-18)

18 Aug 05:34
5ef3774
Compare
Choose a tag to compare

Breaking Changes

Support for dependencies within Cargo.toml

Dependencies within a Cargo.toml file can now be updated
as part of versioned_files.

Features

Support for Cargo.lock in versioned_files

Dependencies within a Cargo.lock can now be updated.

knope 0.18.0 (2024-08-18)

18 Aug 05:54
5ef3774
Compare
Choose a tag to compare

Breaking Changes

Auto-update Cargo workspace dependencies when using default config

If using the Cargo workspace default configuration,
Knope will now attempt to automatically update the version of workspace members in dependencies and the workspace Cargo.lock.

To avoid this, use knope --generate to create a manual config file and customize the behavior.

Don't create any go module tags that match package names

Knope already avoided creating duplicate tags for Go modules which match tags that would be created by the Release step for the package.
Now, Knope won't create a Go module tag if it matches a release tag for any configured package, to avoid potential conflicts.

Features

Support for Cargo.lock in versioned_files

Dependencies within a Cargo.lock can now be updated.

Support for dependencies within Cargo.toml

Dependencies within a Cargo.toml file can now be updated
as part of versioned_files.

Fixes

Deduplicate release actions

Knope now collects all actions to be performed across all packages and runs them at once with deduplication.

This means that if multiple packages write to the same versioned_file, for example, the file will only be written
a single time.
Changesets will also only be deleted once, files will be staged to Git only once, etc.

This mostly only impacts the output during --dry-run or --verbose, but is especially important for the new
dependency updating and lockfile support.

config 0.1.0 (2024-08-18)

18 Aug 05:34
5ef3774
Compare
Choose a tag to compare

Breaking Changes

Support for dependencies within Cargo.toml

Dependencies within a Cargo.toml file can now be updated
as part of versioned_files.

versioning 0.2.0 (2024-08-10)

10 Aug 18:50
e260eda
Compare
Choose a tag to compare

Breaking Changes

  • Move HeaderLevel to internal, parse with Changelog::new

versioning 0.1.0 (2024-08-04)

04 Aug 06:04
2a320d6
Compare
Choose a tag to compare

Breaking Changes

Everything has changed

And hopefully it won't break anyone since this crate isn't ready for external consumers yet!

Features

  • Add handling of changes (conventional commits, changesets)

knope 0.17.0 (2024-08-04)

04 Aug 06:04
2a320d6
Compare
Choose a tag to compare

Breaking Changes

Forge date now matches CHANGELOG date

If you prepare a release and generate a changelog Markdown file in one workflow, then create a forge (GitHub or Gitea) release in a separate workflow, the forge release date will now match the changelog date (if any). Previously, the forge release got the current date (at the time of running the workflow).

Match scope-filtering behavior to docs

The docs state, in regard to a package.scopes config, "if not defined, Knope will consider all scopes."

This is the intended behavior, but wasn't true until now. The actual behavior, for multi-package repos, was that if
any package had scopes defined, all would start filtering scopes.

This has been corrected, packages are now more independent in their scope filtering behavior.

Properly use case insensitivity when checking conventional commits

Per the conventional commits spec all units of a
conventional commit are case-insensitive.
Until now, Knope was treating commit footers and scopes as case-sensitive. This has been corrected, which may result
in different behavior for some projects.

config 0.0.1 (2024-08-04)

04 Aug 06:04
2a320d6
Compare
Choose a tag to compare

Features

  • Initial release

versioning 0.0.1 (2024-04-14)

14 Apr 19:23
51d78b3
Compare
Choose a tag to compare

Features

  • Initial release

knope 0.16.2 (2024-04-14)

14 Apr 19:23
51d78b3
Compare
Choose a tag to compare

Features

Add get-version default workflow

For single-package repositories with no custom workflows defined,
there is now a default workflow called get-version that
prints out the current package version.

If you want similar functionality for multi-package repositories, please add your ideas to issue #988.

Thanks to @BatmanAoD for the suggestion and @alex-way for the implementation!

PR #994 closed #885.

Add option to ignore conventional commits

You can now add ignore_conventional_commits = true to a PrepareRelease step
to ignore commit messages (and only consider changesets):

[[workflows.steps]]
type = "PrepareRelease"
ignore_conventional_commits = true

PR #1008 closes #924. Thanks for the suggestion @ematipico!

Fixes

  • Allow omitting the variables field for CreatePullRequest title and body

Documentation

Created a new recipe for converting a single-package repo into a monorepo

Knope itself is now a monorepo—the process of converting it was documented here.