KitKey v2.2.0
Downloads
KitKey.linux.arm64.zip
58.49 MB · 3 downloads
KitKey.linux.x64.zip
67.37 MB · 4 downloads
KitKey.windows.x64.exe
12.42 MB · 2 downloads
NuGet packages: NTDLS.KitKey.Shared, NTDLS.KitKey.Client and NTDLS.KitKey.Server (see all on NuGet).
Release notes
Be sure to check out the NuGet Packages š¦
New š
- Linux ARM64 build (KitKey.linux.arm64.zip) alongside x64.
- Linux builds are now self-contained, so .NET no longer needs to be installed on the server.
- Store names are validated up front, rejecting names that arenāt safe as directory names.
Changes š
- Creating a store is now all-or-nothing. A failed create no longer leaves a half-built store behind.
- Deleting or stopping a store waits for in-flight operations, and later operations get a clear āstore has been stoppedā error.
- Statistics counters are thread-safe and only count operations that succeeded.
- The web UI now returns enums as strings, with or without the web API enabled.
- The web API returns 400 with the message for invalid requests, and now logs the full exception on failures.
- ConnectAsync now reports connection failures through OnException instead of swallowing them.
- KkClient and KkServer constructors were consolidated, so every constructor behaves the same.
- Updated Linux installation instructions.
Fixed š
- Clients created with a configuration never raised connect or disconnect events and never auto-reconnected.
- PushFirst and PushLast with list items had their directions swapped, so first pushed to the end and last to the front.
- TryGetLast returned the first item instead of the last.
- GetFirst, GetLast and GetList returned a broken empty item for a missing list, and the TryGet⦠methods always reported success. They - now return null and false.
- Removing an item from a list that didnāt exist created an empty list.
- Deleting an ephemeral store could try to delete a directory relative to the working directory.
- Cache hits and misses were miscounted for lists, because database misses were counted as hits.
- A missing storeās page showed zeros instead of returning 404.
- The store page printed the literal text Model.Store.PersistenceScheme instead of the value.
Full Changelog: https://github.com/NTDLS/KitKey/compare/2.1.6...2.2.0