Roadmap

Tip

This is the roadmap for kms. As time goes on, more and more items and information will be added to this roadmap.

Learn more about the versioning system

Learn about supported versions

Project Branches & Release Logic

This repo has two branches: a main branch, and a beta branch. A dev branch may also be added. dev will be sourced from beta, and beta is sourced from main.

Nightly builds will ALWAYS be available for each branch.

The “No” List

kms will NEVER have the following features:

Known Bugs

Important

Some of these bugs may be fixed in the release of kms-semver1.3 instead of kms-semver1.2.x. These bugs are notated with a ‘ሴ’.

Possible Future Features

kms-semver1.3 (2026/07/27):

kms-semver1.4 (2026/09/30):

kms-semver1.5 (2027/01/29):

kms-semver1.6 (2027/04/15):

Breaking Changes in kms-semver1.3

Note

This list is actively being updated. You can see the changes by checking out the PR or checking out the beta branch.

Important

None of these are true breaking changes - instead, all old features will still remain in the code carrying DeprecationWarnings until kms-semver2.0.

Old name New name
VERSION semver
DATE_VERSION calver
LAST_UPDATE last_update

warnings.filterwarning(category=kms.Storage.DeleteWarning) # Old, will raise DeprecationWarning warnings.filterwarning(category=kms.DeleteWarning) # New, will work properly

See all other new features in the [release notes](/Boss-1s/key_multivalue_storage/releases).


## `kms-semver2.0` (2027/08/17)
**kms-semver2.0.0 is an upcoming, backwards-incompatible update planned for release on August 17th, 2027, exactly two years after the release of kms-v1.0.0/2026.08.17.** This update will bring many changes and features, including the ability to store and read JSON data with SQL querying, store data in YAML files, `MultiStorage` which makes nesting `Storage` in `Storage` easier and more Pythonic, and more. All of these features will be built up slowly in the kms-semver1.x releases leading up to this version.
<div class='markdown-alert markdown-alert-note'><p class='markdown-alert-title'><svg data-component="Octicon" class="octicon octicon-info" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true"><path d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></svg> Note</p><p>These lists is incomplete. As time passes and the release gets closer, more things will be added in the lists below.</p>
</div>


> ![warning]
> These are all planned features and projected (breaking) changes; they are not guaranteed to make it into the final release.

### Breaking Changes
- **Module name changes**: Import `kms` to use the library, and `kms.storage` for `Storage`.
```py
# before v2.0.0
import key_multivalue_storage as kms
from key_multivalue_storage import Storage
# after v2.0.0
import kms
from kms.storage import Storage as s