diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 25395dbe..6b1f8d2e 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -276,7 +276,6 @@ jobs:
with:
tag_name: ${{ steps.get_version.outputs.VERSION }}
release_name: ${{ steps.get_version.outputs.VERSION }}
- prerelease: true
- name: Download all artifacts
uses: actions/download-artifact@v2
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4dc10243..bb526c39 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,39 @@
All changes in this project will be noted in this file.
+## Version 0.6.0 [2021-05-27]
+
+> Breaking changes!
+
+* Dropped support for Terrapipe 1.0 (reached EOL)
+* Added support for Skyhash 1.0 (see [#147](https://github.com/skytable/skytable/pull/147))
+* Fixed persistence bugs (see [#151](https://github.com/skytable/skytable/pull/151))
+* Fixed bugs in background services (see [#152](https://github.com/skytable/skytable/pull/152))
+* Make BGSAVE recoverable (see [#153](https://github.com/skytable/skytable/pull/153))
+* Added `lskeys` action (see [#155](https://github.com/skytable/skytable/pull/155))
+* Added `compat` module (see [#158](https://github.com/skytable/skytable/pull/158))
+* Added backward compatibility for storage formats all the way upto 0.3.0. See [this wiki article](https://github.com/skytable/skytable/wiki/Disk-storage-formats) for more information
+
+### Upgrading existing clients
+
+As Terrapipe 1.0 has reached EOL, all clients have to be upgraded to use the [Skyhash 1.0 Protocol](https://docs.skytable.io/protocol/skyhash).
+
+### Upgrading existing datasets
+
+Please refer to [this wiki article](https://github.com/skytable/skytable/wiki/Disk-storage-formats).
+
+### Improvements in the new protocol (Skyhash)
+
+* Upto 40% lower bandwidth requirements
+* Upto 30% faster queries
+* Support for recursive arrays
+* More robust and well tested than Terrapipe
+
+### Internal codebase improvements
+
+* BGSAVE is now tested by the test suite
+* `skysh` and `sky-bench` both use the [Rust client driver for Skytable](https://github.com/skytable/client-rust).
+
## Version 0.5.3 [2021-05-13]
> No breaking changes
diff --git a/README.md b/README.md
index 80c971dd..8d8a36cc 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,7 @@
Skytable
The next-generation NoSQL database
-![GitHub Workflow Status](https://img.shields.io/github/workflow/status/skybasedb/skybase/Test%20(push)) ![Status: Alpha](https://img.shields.io/badge/status-alpha-critical?style=flat-square) ![Development](https://img.shields.io/badge/development-regular-32CD32?style=flat-square) ![GitHub release (latest SemVer including pre-releases)](https://img.shields.io/github/v/release/skybasedb/skybase?include_prereleases&sort=semver&style=flat-square)
+![GitHub Workflow Status](https://img.shields.io/github/workflow/status/skybasedb/skybase/Test%20(push)) ![Development](https://img.shields.io/badge/development-regular-32CD32?style=flat-square) ![GitHub release (latest SemVer including pre-releases)](https://img.shields.io/github/v/release/skybasedb/skybase?include_prereleases&sort=semver&style=flat-square)
[![Docs](https://img.shields.io/badge/readthedocs-here-blueviolet?style=flat-square)](https://skytable.github.io/docs) [![Contribute Now](https://img.shields.io/badge/%F0%9F%8C%9Fcontribute-now-a94064)](https://ohsayan.github.io/skythanks)
@@ -13,7 +13,7 @@
Skytable is an effort to provide the best of key/value stores, document stores and columnar databases, that is, **simplicity, flexibility and queryability at scale**. The name 'Skytable' exemplifies our vision to create a database that has limitless possibilities. Skytable was previously known as TerrabaseDB (and then Skybase) and is also nicknamed "STable", "Sky" and "SDB" by the community.
-Skytable is curently in an alpha stage, but can be used as a **performant**, **secure** and **persistent key-value store**.
+Skytable is curently under development, but can be used as a **performant**, **secure** and **persistent key-value store**.
## Getting started 🚀
@@ -42,7 +42,7 @@ You can learn more about installation [here](https://skytable.github.io/docs/get
The project currently maintains an official [Rust driver](https://github.com/skytable/client-rust) and we have plans
to support more languages along the way!
-If you want to use a different language, for now you'll just need to implement the simple and performant [Skyhash Protocol Spec](https://skytable.github.io/docs/next/protocol/skyhash) or for versions prior to 0.6.0, the [Terrapipe Protocol Spec](https://skytable.github.io/docs/protocol/terrapipe).
+If you want to use a different language, for now you'll just need to implement the simple and performant [Skyhash Protocol](https://docs.skytable.io/protocol/skyhash).
## Community 👐
diff --git a/actions.jsonc b/actions.jsonc
index b672b281..0de3d572 100644
--- a/actions.jsonc
+++ b/actions.jsonc
@@ -31,7 +31,6 @@
[
{
"name": "GET",
- "since": "0.1.0",
"complexity": "O(1)",
"args": "GET ",
"desc": "Get the value of a key",
@@ -39,7 +38,6 @@
},
{
"name": "MGET",
- "since": "0.4.0",
"complexity": "O(n)",
"args": "MGET ...",
"desc": "Get the value of 'n' keys",
@@ -47,7 +45,6 @@
},
{
"name": "SET",
- "since": "0.1.0",
"complexity": "O(1)",
"args": "SET ",
"desc": "Set the value of a key",
@@ -55,7 +52,6 @@
},
{
"name": "MSET",
- "since": "0.4.0",
"complexity": "O(n)",
"args": "MSET ...",
"desc": "Set the value of 'n' keys",
@@ -63,7 +59,6 @@
},
{
"name": "UPDATE",
- "since": "0.1.0",
"complexity": "O(1)",
"args": "UPDATE ",
"desc": "Update the value of an existing key",
@@ -71,7 +66,6 @@
},
{
"name": "MUPDATE",
- "since": "0.4.0",
"complexity": "O(n)",
"args": "MUPDATE ...",
"desc": "Update the value of 'n' keys",
@@ -79,7 +73,6 @@
},
{
"name": "DEL",
- "since": "0.1.0",
"complexity": "O(n)",
"args": "DEL ...",
"desc": "Delete 'n' keys",
@@ -87,7 +80,6 @@
},
{
"name": "EXISTS",
- "since": "0.4.0",
"complexity": "O(n)",
"args": "EXISTS ...",
"desc": "Check if 'n' keys exist",
@@ -95,7 +87,6 @@
},
{
"name": "SSET",
- "since": "0.4.3",
"complexity": "O(n)",
"args": "SSET ...",
"desc": "Set all keys to the given values only if all of them don't exist",
@@ -103,7 +94,6 @@
},
{
"name": "SDEL",
- "since": "0.4.3",
"complexity": "O(n)",
"args": "SDEL ...",
"desc": "Delete all keys if all of the keys exist. Do note that if a single key doesn't exist, then a `Nil` code is returned.",
@@ -111,7 +101,6 @@
},
{
"name": "SUPDATE",
- "since": "0.4.3",
"complexity": "O(n)",
"args": "SUPDATE ...",
"desc": "Update all keys if all of the keys exist. Do note that if a single key doesn't exist, then a `Nil` code is returned.",
@@ -119,7 +108,6 @@
},
{
"name": "DBSIZE",
- "since": "0.4.3",
"complexity": "O(1)",
"args": "DBSIZE",
"desc": "Number of key/value pairs stored in the database",
@@ -127,7 +115,6 @@
},
{
"name": "FLUSHDB",
- "since": "0.4.3",
"complexity": "O(n)",
"args": "FLUSHDB",
"desc": "Removes all the key/value pairs stored in the database",
@@ -135,7 +122,6 @@
},
{
"name": "USET",
- "since": "0.4.4",
"complexity": "O(n)",
"args": "USET ...",
"desc": "SET all keys if they don't exist, or UPDATE them if they do exist",
@@ -143,7 +129,6 @@
},
{
"name": "KEYLEN",
- "since": "0.4.4",
"complexity": "O(1)",
"args": "KEYLEN ",
"desc": "Returns the length of the UTF-8 string",
@@ -151,15 +136,13 @@
},
{
"name": "MKSNAP",
- "since": "0.5.0",
"complexity": "O(n)",
"args": "MKSNAP ",
- "desc": "This action can be used to create a snapshot. Do note that this action **requires snapshotting to be enabled on the server side**, before it can create snapshots. \nIf you want to create snapshots **without** snapshots being enabled on the server-side, use a second argument (`[SNAPNAME]`) to specify a snapshot name and a snapshot will be create in a folder called `remote` under your snapshots directory. \nFor more information on snapshots, read [this document](/snapshots)",
+ "desc": "This action can be used to create a snapshot. Do note that this action **requires snapshotting to be enabled on the server side**, before it can create snapshots. \nIf you want to create snapshots **without** snapshots being enabled on the server-side, pass a second argument to specify a snapshot name and a snapshot will be create in a folder called `remote` under your snapshots directory. \nFor more information on snapshots, read [this document](/snapshots)",
"return": "Okay if succeeded, otherwise it returns `err-snapshot-disabled` if snapshotting is disabled or `err-snapshot-busy` if a snapshotting operation is already in progress"
},
{
"name": "LSKEYS",
- "since": "0.6.0",
"complexity": "O(n)",
"args": "LSKEYS ",
"desc": "Returns a flat string array of keys present in the database. If no is given, then a maximum of 10 keys are returned. If a limit is specified, then a maximum of keys are returned",
diff --git a/release.sh b/release.sh
index 57f74995..d839bea9 100755
--- a/release.sh
+++ b/release.sh
@@ -1,5 +1,5 @@
# This is a simple script which creates a release build and
# moves the release builds into my $HOME/bin folder
cargo build --release
-cp -f target/release/sdb target/release/skysh target/release/sky-bench $HOME/bin
+cp -f target/release/skyd target/release/skysh target/release/sky-bench $HOME/bin
echo 'Done!'