PackageTrack
Sign in Get early access

scylla-cql

CQL data types and primitives, for interacting with ScyllaDB.

1.8.0 8.3M downloads/mo #3453 most downloaded on crates.io scylladb/scylla-rust-driver

What this package is like to depend on

Last release 10 days ago

13 Aug 2026

Ships fairly regularly

a new release about every 2 months

Some releases are documented

notes for 8 of 27 stable releases

1 version withdrawn

withdrawn after publishing

4 years old

28 releases · first in 2022

5 releases in the last 12 months

see the full history below

Release timeline

28 releases · Aug 2022 to Aug 2026
2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 28
  1. 1.8.0 13 Aug 2026
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.8.0,
    an asynchronous CQL driver for Rust, optimized for ScyllaDB, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 8.1M downloads on crates.io!
    • over 682 GitHub stars!

    Changes

    New features / enhancements:

    • QueryPager (used by Session::execute_iter and Session::query_iter) was optimized for single-page queries. Now it only starts a tokio::task if there is more than one page (#1739).
    • QueryPager now treats each page as a fully separate request: new execution plan is produced for each page, downgraded consistency is reset. Driver still tries to stick to the same coordinator for subsequent pages: the first element of the plan for the next page will be the coordinator of the previous page (#1739).
    • QueryPager (used by Session::execute_iter and Session::query_iter) now supports Speculative Execution (#1783).
    • Internal metadata fetching procedures were greatly improved, dropping many unnecessary false dependencies between internal driver tasks, which should improve the delay of some of them (#1792, #1823, #1835).
    • Metadata fetching now supports client-side timeouts (#1837).
    • Driver will now temporarily stop using shard-aware port on shard mismatch (indicating NAT usage) (#1804).
    • On STATUS_CHANGE DOWN event a keepalive is now immediately requested on connection to the affected node (#1806).
    • Driver now correctly resolves DNS names to multiple IP addresses, both v4 and v6 (#1805).
    • Client Routes feature now choose an IP randomly for each connection if DNS resolves to multiple IPs (#1805).
    • Extended CqlTimestamp with more functionalities: trait derives, useful constants and operations against std::time::Duration (#1776, #1834).
    • A new crate scylla-ccm-bridge is extracted for reuse in different projects (#1810).
    • Driver can now be configured to fetch only the minimal subset of metadata that doesn't break token-awareness (#1815).
    • Keyspace struct now has a new tablets field, indicating if the keyspace is vnode- or tablet-based. This info fetched from system tables and used by the driver for more precise routing (#1720).
    • Added new metrics accessors that properly distinguish between unpaged, manually paged and automatically paged requests (#1775).
    • Bugs in our examples are fixed, some examples are restructured. Examples now run in CI to keep them working (#1813).
    • RetrySession is now created lazily when needed, to save an allocation on the hot path (#1833).

    Bug fixes:

    • Fixed a deadlock happening when driver was flooded with CQL events during metadata refresh (#1835).
    • Tablet-awareness now correctly works with materialized views (#1778).
    • Out-of-range shard ids in ShardingInfo are now correctly rejected (#1712).
    • Shard set in Coordinator is now set to the real shard from Connection, not the shard requested by LBP (#1765).
    • Fix bug in Metrics::get_latency_percentile_ms that caused it to return completely wrong value (#1749).
    • Scylla with enable_shard_aware_drivers: false is now recognized as Scylla, not Cassandra (#1719).
    • Client Routes: non-sticky routes are now correctly overwritten on updates (#1822).
    • RequestInfo passed to RetrySession now gets current (so potentially downgraded) consistency, instead of the original consistency (#1758, #1770).
    • Fixed trace span not being finalized when RetrySession issues a IgnoreWriteError decision (#1761).

    Internal refactors:

    • Internal request execution paths were deduplicated into a common module. Now all variants (unpaged, QueryPager, ControlConnection) use the same logic to handle retries, tracing, speculative execution, query history, and other mechanism (#1774, #1783, #1786, #1789, #1830, #1751).
    • Reduced cfg sprawl from metrics feature across the codebase (#1750).
    • Return client routes in Metadata instead of applying them in ControlConnection (#1820).
    • Fixed issues pointed out by Clippy after its 1.97 release (#1779).
    • Removed unused dependencies from scylla-proxy (#1744).
    • CqlTimeuuid::lsb_signed is now properly documented. Timeuuid ordering test is hardened (#1766).
    • Various small fixes related to unification of execution paths (#1770).

    Documentation:

    • Updated dependencies of documentation (#1724).
    • Bumped sphinx-scylladb-theme from 1.9.2 to 1.9.3 (#1791).

    CI / tests / developer tool improvements:

    • Added Valgrind-based benchmarks, running in CI to catch regressions (#1780).
    • Renovate was configured to keep our dependencies up to date (#1753, #1812, #1746, #1740).
    • Updated Scylla version used in tests to v2026.2.3 (#1826).
    • Speed up vector type integration test by running subtests concurrently (#1759).
    • Speed up vector type integration test by using a single table for all subtests (#1760).
    • Unified handling of Scylla versions between tests categories (#1821).
    • Vastly expanded and improved our Tablets tests (#1777).
    • Cleanly handle startup failures in Client Routes test utils (#1795).
    • Connection: changed #[expect(deprecated)] to #[allow(deprecated)] on set_linger because older Tokio verions don't mark is as deprecated (#1787).
    • Remove misleading comment in test (#1808).

    Dependencies:

    Others:

    • Added public methods required for python-rs driver (#1771, #1790).
    • Conditionally published APIs for C# RS Driver (#1717).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    116 Karol Baryła
    112 Wojciech Przytuła
    25 renovate[bot]
    19 Patrycja Ziemkiewicz
    2 Dawid Pawlik
    2 Floze
    2 phalat
    2 Paulina Czajkowska
    1 Anna Stuchlik
    1 Photon101
    1 Vismay
    1 dependabot[bot]
    Open source →
  2. 1.7.0 11 Jun 2026
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.7.0,
    an asynchronous CQL driver for Rust, optimized for ScyllaDB, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 7.2M downloads on crates.io!
    • over 674 GitHub stars!

    Changes

    New features / enhancements:

    • Preferred DC and rack can now be configured on Session directly (#1658).
    • Introduced refill trigger in connection pool. Now a refill is triggered automatically upon two kinds of events: 1) client routes change 2) node status changes to UP, which decreases reconnection delay in those situations (#1630).
    • Added method to ClusterState to get node by host id (#1646).
    • Exposed cluster name in ClusterState (#1666).
    • Re-exported in scylla crate VectorIterator and other Vector-related types (#1650).
    • get_tracing_info now waits for the request duration to be available (#1652).
    • Implemented / fixed / optimized optional methods (size_hint) and traits (ExactSizeIterator) for our iterators (#1664).
    • Added Vec accessor support for CqlValue::Vector (#1705).
    • Made TCP options use dedicated tokio helpers (#1618).

    Bug fixes:

    • Statements executed with SERIAL/LOCAL_SERIAL consistency are now treated as LWT for routing, reducing Paxos contention (#1647).
    • Fixed panic in metadata/reader occurring on runtime shutdown (#1644).
    • Node attribute changes are now handled correctly w.r.t. HostFilter (#1654).
    • Fixed shard-awareness port iteration logic when REUSEADDR is used (#1622).
    • Made driver reject lz4 frame bodies shorter than the 4-byte size prefix (#1642).
    • Fixed read_inet port conversion (#1649).
    • Fixed panic in connection pool on out-of-range shard (#1656).
    • Fixed shard aware port range crash (and other problems) (#1657).
    • Require first_tablet < last_tablet when parsing tablet hint from the server (#1660).
    • Fixed tracing diagnostics to reference system_traces.sessions (#1698).
    • Fixed RequiredHostAbsent error, which always displayed host id 0 (#1700).
    • Hex prefix validation error is now propagated in custom type parser (#1701).
    • Zero prepared-statement cache capacity is now rejected to prevent infinite looping (#1702).
    • Exposed inner error in TracingError row-conversion variants (#1703).
    • Zero latency scale in the default load-balancing policy is now rejected (#1704).
    • Fixed (again) ser/deser of tuples that are shorter than the metadata says (#1708).
    • Zero keepalive interval is now rejected during session creation (#1711).

    Internal refactors:

    • Extracted part of scylla-cql crate that is exposed in scylla crate's public API into a new scylla-cql-core crate, which is now a dependency of scylla-cql. This allows us to make breaking changes in scylla-cql from now on, without affecting the scylla crate's public API. (#1604, #1609, #1593).
    • Pinned scylla crate's dependencies (scylla-cql-core, scylla-cql) to specific versions, to prevent resolving incompatible dependencies. Now users will no longer suffer from incompability of scylla with scylla-cql[-core] (#1715).

    Documentation:

    • Described interaction of statement idempotence and DefaultRetryPolicy decision matrix (#1633).
    • Updated actions (#1635).
    • Clarified connection_address semantics in Coordinator (#1651).
    • Fixed broken links (#1663).

    CI / developer tool improvements:

    • Improved client routes testing (#1615, #1631).
    • Decreased number of connections in many_connections test to prevent file descriptor exhaustion (#1621).
    • Fixed client-routes tests flakiness upon node decommission (#1653).
    • Fixed swapped arguments in result metadata serialize test helper (#1699).
    • Fixed flaky test_schema_await_required_host_absent (#1709).

    Others:

    • Updated used dependencies (#1617).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    155 Karol Baryła
    26 Wojciech Przytuła
    5 Copilot
    4 Stanisław Czech
    2 copilot-swe-agent[bot]
    1 David Garcia
    1 Lukasz Sojka
    1 Matt Van Horn
    1 Photon101
    1 Sai Asish Y
    1 conorbros
    Open source →
  3. 1.6.0 22 Apr 2026
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.6.0,
    an asynchronous CQL driver for Rust, optimized for ScyllaDB, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 6.5M downloads on crates!
    • over 666 GitHub stars!

    Changes

    New features / enhancements:

    • Introduced "Client Routes Routing" (with some preceding internal and testing preparations in #1590), which is a feature allowing the use of driver in deployments with mechanisms like AWS PrivateLink (#1582).
    • Exposed more configuration options for sockets opened by the driver (#1577).
    • durable_writes field was added to Keyspace struct (#1578).
    • ⚠️ Our MSRV was bumped to 1.88 (#1602).
    • ⚠️ Removed address translation workaround, because the root cause was fixed in Scylla a long time ago (#1606).

    Warning: Removal of the above workaround may break some misconfigured setups.
    Driver uses rpc_address column from system.peers / system.local tables to get addresses it uses to connect to nodes. This column is populated using broadcast-rpc-address configuration (or rpc-address if the former is not present).
    If addresses retrieved from those tables are not reachable by the driver, it won't be able to establish a session.
    The workaround that was removed made driver ignore the address from system.local, and instead use the address that we used to open the control connection (which initially happens to be one of the provided contact points). In the misconfigured setup it would allow the driver to connect to only a single node, resulting is severely deficient session. Such setup won't work at all now.

    Bug fixes:

    • Session::query_iter / Session::execute_iter now correctly refresh driver metadata (if enabled in session config) after a DDL statement is executed using those APIs (#1579).
    • Fixed a bug in implementation of result metadata ID extension. This bug prevented reading the results of some special statements (like LIST ROLES of) if they were executed as prepared statements (#1581).

    Documentation:

    • Fixed Github links displayed on crates.io by making them absolute instead of relative (#1572).
    • Updated Scylla theme to 1.9 (#1584) and then to 1.9.2 (#1608).
    • Fixed improper total_connections metric docstring (#1586).
    • Bumped sphinx-multiversion-scylla to 0.3.8 (#1605).

    CI / developer tool improvements:

    • Add various Scylla flags to our docker-compose.yml to make tests run faster (#1574).
    • Clippy fixes (#1576).
    • Book tests are now executed along other doctests, instead of using mdbook test (#1591).
    • Our MSRV check CI pipeline no longer checks examples/ folder (#1594).
    • Introduced a tool to print sizes of our error types (#1597).
    • Recently Scylla stopped creating a default superuser cassandra:cassandra, which broke our tests. Fixed that by using flags to explicitly create the superuser (#1601).
    • Small fix for a test incorrectly handling proxy finish result (#1603).
    • Added wait_for_connection and inject_event_to_cc methods to our testing proxy (#1610).
    • Explicitly disable tablets for our one SingleStrategy tests, because Scylla started to throw errors on SimpleStrategy keyspace creation with tablets (#1611).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    61 Wojciech Przytuła
    13 Karol Baryła
    4 Hanna Marszałek
    3 Dmitry Kropachev
    3 Jakub Janowski
    2 copilot-swe-agent[bot]
    2 dependabot[bot]
    1 Dani Tweig
    1 David Garcia
    1 Dawid Pawlik
    1 Copilot
    Open source →
  4. 1.5.0 05 Feb 2026
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.5.0,
    an asynchronous CQL driver for Rust, optimized for ScyllaDB, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 5.7M downloads on crates!
    • over 663 GitHub stars!

    Changes

    New features / enhancements:

    • ⚠️ Enabled hostname verification for OpenSSL. This is an important security improvement, and brings our OpenSSL usage to parity with Rustls (which doesn't even allow disabling verification in any easy way). Warning: it may cause the driver to be unable to connect to your cluster if you use OpenSSL and your node certs don't have node IP in SAN (#1491).

    • Introduced configurable DNS resolution timeout. Check out hostname_resolution_timeout method on SessionBuilder (#1113).

    • Internal requests performed by the driver that fetch schema and topology are now prepared. It may slightly lower the load on cluster in some scenarios, especially when there is a great amount of driver sessions existing at the same time. (#1530).

      • We wanted other internal statements (schema version fetch and tracing-related statements) to also be prepared, but it turned out to interact badly with switching Session keyspace (#1561). Simple workaround that we tried (#1562) didn't work with all cases, so this had to be reverted (#1569).
    • Schema agreement wait (performed by Session::await_schema_agreement and automatically after DDL requests unless disabled) no longer fails immediately after any error. Instead, it retries when the error is classified as non-permanent (#1473, #1479).

    • Implemented Debug for ColumnSpecsGuard (#1522).

    • Added support for secrecy 0.10, including SecretString and SecretSlice (#1523).

    • Implemented SerializeValue for MaybeEmpty (#1525).

    • Allowed (de)serialization of Cow<'_, T> values (#1545).

    • Introduced scylla_unstable cfg flag to gate all unstable features (#1505).

    • Implemented unstable HostListener mechanism for CPP-RS Driver (#1496).

    • Introduced unstable ReconnectPolicy (#1508, #1509).

    • ⚠️ Removed "unstable cloud" feature, as it was abandoned long time ago. The removed feature was marked as unstable, so this is not a semver-major change, but it may cause compilation error if your code used this feature (#1487).

    Bug fixes:

    • Session::execute_iter and Session::query_iter now correctly handle USE keyspace requests (by switching keyspace on all connections) and DDL requests (by awaiting schema agreement unless disabled). (#1548).
    • frozen flag is no longer considered when type checking upon (de)serialization (#1500).
    • MetadataError::FetchError now has correct message when printed. Before this fix, it was accidentally hardcoded to "transparent" (#1539).
    • Frozen modifer is now correctly parsed in custom types. This is relevant pretty much only for vector of collections - extremely niche use case (#1567).

    Internal cleanups/refactors:

    • Brought the first batch of internal metadata fetching improvements (#1526).
    • Fully-qualified call to collect_array in custom_type_parser (#1494).
    • Fixed variable shadowing in value_tests.rs (#1511).
    • Small refactor of execution methods (#1514).
    • Replaced &String with &str where possible (#1529).

    Documentation:

    • Added a new step to the release procedure: updating the list of supported driver versions (#1476).
    • Clarified metrics docs w.r.t client-side vs server-side metrics (#1470).
    • Slightly improved data-types.md (#1474).
    • Updated docs on permit_dc_failover (#1489).
    • Updated dead link in duration.md (#1516).
    • Documented best practice: prepare statements once, execute multiple times (#1524).
    • Documented DefaultPolicy replica shuffling (#1547).
    • Removed multilingual option for md book (#1478).

    CI / developer tool improvements:

    • ⚠️ Employed Nextest for running tests. Warning: using cargo test is now discouraged in favor of using nextest. Behaviors of the two may diverge, and cargo test could possibly even break in the future (#1568).
    • Migrated docs to uv (#1528).
    • Fix flaky test_schema_await_with_unreachable_node (#1471).
    • Added test for RequiredHostAbsent error (#1475).
    • Added CCM TLS tests, replacing TLS workflow (#1482).
    • Increased test_pager_timeouts timeouts to prevent flakiness (#1484).
    • Small fixes/improvements to ccm lib. Apart from small fixes, this adds node decommission capability (#1501).
    • Changed defaults for SCYLLA_URI* env variables to make running tests much easier (#1555).
    • Fixed flakiness of schema agreement tests: (#1565).
    • Silenced warnings for uninhabited types (#1507).

    Others:

    • Updated docs dependencies (#1490).
    • Added .DS_Store to .gitignore (#1493).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    122 Karol Baryła
    48 Wojciech Przytuła
    5 Stanisław Czech
    4 dependabot[bot]
    3 Mikołaj Uzarski
    3 Yaniv Kaul
    2 Piotr Dulikowski
    2 copilot-swe-agent[bot]
    1 Andres Medina
    Open source →
  5. 1.4.0 06 Nov 2025
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.4.0,
    an asynchronous CQL driver for Rust, optimized for Scylla, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 5.200k downloads on crates!
    • over 650 GitHub stars!

    Changes

    New features / enhancements:

    • Added support for Scylla's result metadata id extension. This improves type safety (especially for SELECT * queries), and in many cases performance (because driver won't have to request result metadata for each request). (#1463).
    • ⚠️ Result metadata in PreparedStatement is now mutable in order to support the above extension. It was accessible to users with PreparedStatement::get_result_set_col_specs, which is now deprecated and will return initial result metadata. Use get_current_result_set_col_specs instead (#1445).
    • Bumped MSRV to 1.85 (#1430).
    • Thanks to the above bump, we were able to move to Rust 2024 edition (#1422).
    • Pager requests (execute_iter, query_iter) now respect client-side timeout settings, treating is as timeout for fetching a single page (#1458).
    • DeserializeRow derive macro now supports default_when_null field attribute (#1403).
    • Driver now reports the host that control connection is opened to when metadata fetch fails (#1460).
    • Removed unnecessary 'static bounds from QueryPager::rows_stream method (#1427).

    Bug fixes:

    • Fixed QueryPager panic that could happen during runtime shutdown (#1456).
    • Allowed deserializing tuples with suffix of fields missing by interpreting those fields as nulls (#1453).
    • Type checking in pager methods (execute_iter, query_iter) is now performed for each page, not only the first one (#1449).
    • Fixed race condition that could potentially cause CachingSession to never drop statements from its cache (#1423).
    • Removed panicking access to buffers in scylla-cql (#1465).

    Internal cleanups/refactors:

    • Use explicit matches for errors when the decision is crucial for correctness/performance (#1083).
    • Request timeout improvements (#1457).
    • Multiple refactors needed to support result metadata id extension:
      • id and lwt fields were moved to shared data of PreparedStatement (#1442).
      • Data sharing between various PreparedStatement variants have been centralized to make reasoning about it easier (#1446).
      • Metadata in results is now deserialized eagerly, instead of being deserialized in QueryResult::into_rows_result (#1461).

    Documentation:

    • Bumped sphinx-scylladb-theme from 1.8.7 to 1.8.8 (#1426).
    • Documented features in Cargo.toml (#1459).

    CI / developer tool improvements:

    • Integration tests now drop created keyspaces to not overwhelm database when running them multiple times (#1414).
    • Fixed test_default_policy_is_tablet_aware that started to fail because of Scylla changes (#1412).
    • Fixed clippy 1.89 & 1.90 lints (#1428, #1437).
    • Switched to using our fork of cargo-semver-checks to work around a bug in upstream (#1434).
    • Made semver-checks not fail when #[deprecated] attribute is added (#1450, #1464).

    Others:

    • Added an UntranslatedPeer constructor for Node.js driver (#1466).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    127 Karol Baryła
    24 Wojciech Przytuła
    3 Mikołaj Uzarski
    2 Stanisław Czech
    1 Collin Styles
    1 spoorn
    1 dependabot[bot]
    Open source →
  6. 1.3.1 30 Jul 2025
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.3.1,
    an asynchronous CQL driver for Rust, optimized for Scylla, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 4.414k downloads on crates!
    • over 641 GitHub stars!

    Changes

    New features / enhancements:

    • Added support to serialize Bytes as CQL blob. This works in tandem with the already present blob -> Bytes deserialization capability (#1397).

    Bug fixes:

    • Fixed plan exhaustion handling in SE and introduce SE unit tests. (#1401).
    • Fixed panic on double formatting in traces (#1404).
    • Made module-level documentation from scylla_cql::deserialize module appear in mirror module in scylla crate (#1406).

    Documentation:

    • Renamed mentions of Scylla with ScyllaDB, following the official naming (#1393).
    • Wrote missing docstrings for many items in the codebase (#1398, #1400).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    49 Wojciech Przytuła
    8 Karol Baryła
    Open source →
  7. 1.3.0 07 Jul 2025
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.3.0,
    an asynchronous CQL driver for Rust, optimized for Scylla, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 4.189k downloads on crates!
    • over 639 GitHub stars!

    Changes

    New features / enhancements:

    • DefaultPolicy now filters out disconnected nodes, which is a useful optimisation (#1364).
    • Improved ExecutionError::EmptyPlan error message (#1371).
    • Allowed serialization and deserialization of Box<str> and Arc<str> (#1382).
    • Exposed API to unset (serial) consistency on statements (#1385).
    • Added request timeout setter and getter for Batches, as it had been accidentally omitted (#1391).

    Bug fixes:

    • Fixed type renaming in serialization (#1378) and deserialization (#1379) modules.

    Internal API cleanups/refactors:

    • Degenericised run_request and unified autohandling of specific responses. This simplifies the code and makes it more bug-resitant (#1375).

    Documentation:

    • Documented a test util method (#1363).
    • The enforce_coordinator example is extended to show how to inspect the coordinator of a request (#1346).

    Others:

    • Fixed doctests configuration with regard to crate features (#1370).
    • Updated dependencies (#1381).
    • Bumped sphinx-scylladb-theme from 1.8.6 to 1.8.7 (#1388).
    • Appeased clippy again (clippy::uninlined_format_args lint) (#1389).

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    44 Karol Baryła
    23 Wojciech Przytuła
    1 Mikołaj Uzarski
    1 dependabot[bot]
    Open source →
  8. 1.2.0 27 May 2025
    Release notes

    The ScyllaDB team is pleased to announce ScyllaDB Rust Driver 1.2.0,
    an asynchronous CQL driver for Rust, optimized for Scylla, but also compatible with Apache Cassandra!

    Some interesting statistics:

    • over 3.877k downloads on crates!
    • over 633 GitHub stars!

    Changes

    New features / enhancements:

    • Added flatten attribute to SerializeRow derive macro. The attribute is inspired and analogous to the one found in serde #1144
    • Introduced CQL Vector type full support #1165.
    • Added nil() method for CqlTimeuuid #1314.
    • Added MaybeUnset::from_option() convenience constructor to reduce boilerplate #1317.
    • Exposed coordinator that served the request #1287.
    • Enabled enforcing a coordinator for the request #1326.
    • Derived Debug for timestamp generator types #1341.
    • Introduced CachingSessionBuilder #1345.
    • Preparation now is done on exactly one shard on each node (instead of all shards), which reduces unnecessary overhead #1320.
    • Fetching schema version when awaiting for schema agreement is now done on one connection per node only (as opposed to all connnections), which reduces unnecessary overhead #1323.
    • PreparedStatement is materialized only where needed, avoiding unnecessary allocations #1329.
    • Exposed an option to allow skipping result metadata when executing prepared statements using CachingSession #1340.

    Bug fixes:

    • Fixed a bug that the driver panicked if the shard returned by the LoadBalancingPolicy was out of range for the chosen node #1325.
    • Fixed a bug that Metrics::percentiles() would return the number of observations in the corresponding bucket instead of the mean value of the bucket #1327.
    • Nodes with all connections broken are now ignored during schema agreement. This fixes the bug that such nodes made schema agreement awaiting fail #1355.

    Internal API cleanups/refactors:

    • LatencyAwareness uses existing Iterator's methods instead of hand-crafted logic #1330.
    • Renamed PreparedIteratorConfig to PreparedPagerConfig, because it was a remnant of the legacy naming #1335
    • Removed Node::is_down() and related code, as the event-based node status mechanism is error prone and was not used anyway #1358.

    Documentation:

    • Described scylla-cql API's considerations - versioning requirements, guarantees, etc. #1322.
    • Updated dependencies of the docs #1333.
    • Fixed md redirections for multiversion support in the docs #1334.
    • Moved flatten attribute docs to SerializeRow, as it had been put in a wrong place #1144.

    CI / developer tool improvements:

    • Proxy now supports negotiated compression #1246.
    • Added test for the UDT case when metadata is present but the value is missing #1315.
    • Fixed warnings in serverless tests #1316.
    • Reorganised integration tests into a clear tree-like structure (#1350, #1351).
    • Clippy was appeased again, after new lints were introduced in Rust 1.87 #1357.
    • Improved our use of Clippy: migrated from allow() to expect(), removed unnecessary lints and enabled of checking public API with Clippy #1359.

    Others:

    • MSRV was raised to 1.80 #1319, and then to 1.81 #1356.

    Congrats to all contributors and thanks everyone for using our driver!


    The source code of the driver can be found here:

    The official crates.io registry entry is here:

    Thank you for your attention, please do not hesitate to contact us if you have any questions, issues, feature requests, or are simply interested in our driver!

    Contributors since the last release:

    commits author
    108 Wojciech Przytuła
    20 Mikołaj Uzarski
    19 Karol Baryła
    8 Andres Medina
    8 smoczy123
    4 Andrés Medina
    2 David Garcia
    2 Vartan Babayan
    1 Dmitry Kropachev
    Open source →
  9. 1.1.0 03 Apr 2025

    Nothing published for this version

  10. 1.0.0 04 Mar 2025

    Nothing published for this version

  11. 0.4.1 11 Dec 2024

    Nothing published for this version

  12. 0.4.0 14 Nov 2024

    Nothing published for this version

  13. 0.3.0 05 Sep 2024

    Nothing published for this version

  14. 0.2.2 22 Aug 2024

    Nothing published for this version

  15. 0.2.1 11 Jul 2024

    Nothing published for this version

  16. 0.2.0 09 May 2024

    Nothing published for this version

  17. 0.1.0 02 Feb 2024

    Nothing published for this version

  18. 0.0.11 21 Dec 2023

    Nothing published for this version

  19. 0.0.10 19 Dec 2023 withdrawn

    Nothing published for this version

  20. 0.0.9 06 Oct 2023

    Nothing published for this version

  21. 0.0.8 27 Jul 2023

    Nothing published for this version

  22. 0.0.7 05 Jun 2023

    Nothing published for this version

  23. 0.0.6 21 Apr 2023

    Nothing published for this version

  24. 0.0.5 22 Mar 2023

    Nothing published for this version

  25. 0.0.4 14 Feb 2023

    Nothing published for this version

  26. 0.0.3 15 Dec 2022

    Nothing published for this version

  27. 0.0.2 04 Oct 2022

    Nothing published for this version

  28. 0.0.1 25 Aug 2022

    Nothing published for this version

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive