Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.0.0 #1265

Merged
merged 8 commits into from
Mar 4, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions Cargo.lock.msrv

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

26 changes: 19 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@
This is a client-side driver for [ScyllaDB] written in pure Rust with a fully async API using [Tokio].
Although optimized for ScyllaDB, the driver is also compatible with [Apache Cassandra®].

**Note: this driver is officially supported but currently available in beta. Bug reports and pull requests are welcome!**

## Getting Started
The [documentation book](https://rust-driver.docs.scylladb.com/stable/index.html) is a good place to get started. Another useful resource is the Rust and Scylla [lesson](https://university.scylladb.com/courses/using-scylla-drivers/lessons/rust-and-scylla-2/) on Scylla University.

Expand Down Expand Up @@ -70,13 +68,27 @@ For planned future improvements, see our [Milestones].

We invite you to discuss any issues and ask questions on the [ScyllaDB Forum] and the `#rust-driver` channel on [ScyllaDB Slack].

## Version support

The driver is considered production ready, hence its version is not 0.x.
We do however acknowledge that the API will surely need some breaking changes in
the future, which means it is not our goal to stay on 1.x forever - we will
release new major version in the future.

The API stability guarantee we provide is that we won't release new major
versions very often.
In case of 2.0, it won't be released earlier than 9 months after release 1.0.
For further major versions this duration may be increased.

After new major version is released, the previous major version will still
receive bugfixes for some time (exact time is yet to be determined), but new
features will only be developed for the latest major version.

## Supported Rust Versions
Our driver's minimum supported Rust version (MSRV) is 1.70.0. Any changes:
- Will be announced in release notes.
- Before 1.0 will only happen in major releases.
- After 1.0 will also happen in minor, but not patch releases.

Exact MSRV policy after 1.0 is not yet decided.
Our driver's minimum supported Rust version (MSRV) is 1.70.0.
Changes to MSRV can only happen in major and minor relases, but not in patch releases.
We will not bump MSRV to a Rust version that was released less than 6 months ago.

## Reference Documentation

Expand Down
2 changes: 1 addition & 1 deletion docs/pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[tool.poetry]
name = "sphinx-docs"
description = "ScyllaDB Documentation"
version = "0.15"
version = "1.0"
authors = ["ScyllaDB Documentation Contributors"]
package-mode = false

Expand Down
6 changes: 3 additions & 3 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,14 @@
# -- Global variables

# Build documentation for the following tags and branches
TAGS = ['v0.14.0', 'v0.15.1']
TAGS = ['v0.15.1', 'v1.0.0']
BRANCHES = ['main']
# Set the latest version.
LATEST_VERSION = 'v0.15.1'
LATEST_VERSION = 'v1.0.0'
# Set which versions are not released yet.
UNSTABLE_VERSIONS = ['main']
# Set which versions are deprecated
DEPRECATED_VERSIONS = ['v0.14.0']
DEPRECATED_VERSIONS = ['v0.15.1']

# -- General configuration

Expand Down
2 changes: 1 addition & 1 deletion docs/source/quickstart/create-project.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ cargo new myproject
In `Cargo.toml` add useful dependencies:
```toml
[dependencies]
scylla = "0.15"
scylla = "1.0"
tokio = { version = "1.12", features = ["full"] }
futures = "0.3.6"
uuid = "1.0"
Expand Down
7 changes: 5 additions & 2 deletions scylla-cql/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "scylla-cql"
version = "0.4.0"
version = "1.0.0"
edition = "2021"
rust-version = "1.70"
description = "CQL data types and primitives, for interacting with Scylla."
Expand All @@ -11,7 +11,10 @@ categories = ["database"]
license = "MIT OR Apache-2.0"

[dependencies]
scylla-macros = { version = "=0.7.0", path = "../scylla-macros" }
# Important: We use precise version of scylla-macros. This enables
# us to make breaking changes in the doc(hidden) interfaces that are
# used by macros.
scylla-macros = { version = "=1.0.0", path = "../scylla-macros" }
byteorder = "1.3.4"
bytes = "1.0.1"
tokio = { version = "1.34", features = ["io-util", "time"] }
Expand Down
11 changes: 3 additions & 8 deletions scylla-macros/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "scylla-macros"
version = "0.7.0"
version = "1.0.0"
edition = "2021"
rust-version = "1.70"
description = "proc macros for scylla async CQL driver"
Expand All @@ -22,11 +22,6 @@ proc-macro2 = "1.0"
unnameable_types = "warn"
unreachable_pub = "warn"

# When bumping major version of scylla / scylla-cql, those dependencies
# also need to be updated. Fortunately Cargo will yell very loudly if that
# is not done.
# When bumping minor versions of scylla / scylla-cql nothing bad will happen
# if we forget to update versions here.
[dev-dependencies]
scylla = { version = "0.15.0", path = "../scylla"}
scylla-cql = { version = "0.4.0", path = "../scylla-cql"}
scylla = { path = "../scylla"}
scylla-cql = { path = "../scylla-cql"}
2 changes: 1 addition & 1 deletion scylla-proxy/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ license = "MIT OR Apache-2.0"
defaults = []

[dependencies]
scylla-cql = { version = "0.4.0", path = "../scylla-cql" }
scylla-cql = { version = "1.0.0", path = "../scylla-cql" }
byteorder = "1.3.4"
bytes = "1.2.0"
futures = "0.3.6"
Expand Down
4 changes: 2 additions & 2 deletions scylla/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "scylla"
version = "0.15.0"
version = "1.0.0"
edition = "2021"
rust-version = "1.70"
description = "Async CQL driver for Rust, optimized for Scylla, fully compatible with Apache Cassandra™"
Expand Down Expand Up @@ -43,7 +43,7 @@ metrics = ["dep:histogram"]
unstable-testing = []

[dependencies]
scylla-cql = { version = "0.4.0", path = "../scylla-cql" }
scylla-cql = { version = "1.0.0", path = "../scylla-cql" }
byteorder = "1.3.4"
bytes = "1.0.1"
futures = "0.3.6"
Expand Down