You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add Cassandra and ScyllaDB database support (#300)
* feat: add Cassandra and ScyllaDB database support
Add Cassandra as the 11th database engine in TablePro, with ScyllaDB as a
secondary type sharing the same plugin (like MySQL/MariaDB). Uses the
DataStax C/C++ driver via a C bridge module.
- CassandraDriverPlugin with full CQL support (keyspaces, tables, views,
indexes, schema introspection via system_schema)
- DatabaseType enum: .cassandra and .scylladb cases across all switch sites
- Connection URL schemes: cassandra://, cql://, scylladb://, scylla://
- Theme colors, icon assets, default port 9042
- CQL dialect with keywords, functions, and data types for autocomplete
- CI workflow support for building downloadable plugin (build-plugin.yml)
- Build script for DataStax cpp-driver + libuv static libraries
- Documentation (English + Vietnamese)
- Tests for DatabaseType properties and URL parsing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: address PR review feedback for Cassandra plugin
* fix: remove orphaned case statement and add default branch for open DatabaseType
* fix: address code review issues in Cassandra plugin driver
* fix: improve Cassandra plugin SSL, type extraction, column ordering, and UX
* fix: register ScyllaDB as additional database type ID in Cassandra plugin
* fix: resolve deadlock, dead code, system keyspace filter, and EXPLAIN handling
* chore: remove pre-built Cassandra libs from PR
* chore: remove pre-built cassandra.h header from PR
* docs: add Chinese translation for Cassandra/ScyllaDB documentation
* chore: remove extra blank line in build-release.sh
* refactor: move Cassandra dialect and metadata from core app into plugin
* refactor: remove redundant explicit no-op case in DatabaseDriver switch
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Ngo Quoc Dat <datlechin@gmail.com>
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,6 +50,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
50
50
- Pre-connect script: run a shell command before each connection (e.g., to refresh credentials or update ~/.pgpass)
51
51
-`ParameterStyle` enum in TableProPluginKit: plugins declare `?` or `$1` placeholder style via `parameterStyle` property on `PluginDatabaseDriver`
52
52
- DML statement generation in ClickHouse, MSSQL, and Oracle plugins via `generateStatements()` for database-specific UPDATE/DELETE syntax
53
+
- Cassandra and ScyllaDB database support via DataStax C driver (downloadable plugin)
53
54
-`quoteIdentifier` method on `PluginDatabaseDriver` and `DatabaseDriver` protocols: plugins provide database-specific identifier quoting (backticks for MySQL/SQLite/ClickHouse, brackets for MSSQL, double-quotes for PostgreSQL/Oracle/DuckDB, passthrough for MongoDB/Redis)
0 commit comments