# Changelog for `derivepassphrase`
[![Keeping a changelog][CHANGELOG_BADGE]][KEEP_A_CHANGELOG]
[![Using Semantic Versioning][SEMVER_BADGE]][SEMANTIC_VERSIONING]
[CHANGELOG_BADGE]: Keep_a_changelog-E05735.svg
[SEMVER_BADGE]: SemVer-3F4551.svg
[KEEP_A_CHANGELOG]: https://keepachangelog.com/en/1.1.0/ 'Keeping a changelog'
[SEMANTIC_VERSIONING]: https://semver.org/ 'Using Semantic Versioning'
??? info "Definition: the <q>public API</q> of `derivepassphrase`"
The <dfn>public API</dfn>, as defined by Semantic Versioning, is
outlined in the [Reference section][REFERENCE]: the set of documented
modules, classes, attributes, methods, functions and function
parameters, and the documented behavior, options and arguments of the
command-line tools.
Certain **exceptions to this rule** are explicitly and prominently
marked as implementation details/not part of the public API.
??? info "Interpretation of the version number"
The terminology <b>major</b>, <b>minor</b> and <b>patch</b> follows the
Semantic Versioning and Keep a Changelog definitions.
* For version numbers with major version zero, *any* new release may
effectively constitute a new <b>major</b> release.
* For version numbers with major version one or higher,
* <b>Fixed</b> entries justify a <b>patch</b> release;
* <b>Added</b> and <b>Deprecated</b> entries justify
a <b>minor</b> release;
* <b>Changed</b> and <b>Removed</b> entries justify a <b>major</b>
release.
* <b>Security</b> can justify any type of release; if <b>major</b>
or <b>minor</b>, these are accompanied by corresponding entries
of the respective types above.
<aside markdown><small>
(All entries are from the perspective of a user, not a developer.)
</small></aside>
[REFERENCE]: reference/index.md
<!-- scriv changelog start -->
## 0.4.0 (2025-01-07)
### Added
- Both `derivepassphrase vault` and `derivepassphrase export vault` now