Skip to content

Commit 2b9a663

Browse files
committed
fix: add per-plugin category to CI workflow, add missing DuckDB to plugin tables
1 parent 5542e4a commit 2b9a663

6 files changed

Lines changed: 19 additions & 13 deletions

File tree

.github/workflows/build-plugin.yml

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -57,57 +57,57 @@ jobs:
5757
TARGET="OracleDriver"; BUNDLE_ID="com.TablePro.OracleDriver"
5858
DISPLAY_NAME="Oracle Driver"; SUMMARY="Oracle Database 12c+ driver via OracleNIO"
5959
DB_TYPE_IDS='["Oracle"]'; ICON="server.rack"; BUNDLE_NAME="OracleDriver"
60-
HOMEPAGE="https://docs.tablepro.app/databases/oracle" ;;
60+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/oracle" ;;
6161
clickhouse)
6262
TARGET="ClickHouseDriver"; BUNDLE_ID="com.TablePro.ClickHouseDriver"
6363
DISPLAY_NAME="ClickHouse Driver"; SUMMARY="ClickHouse OLAP database driver via HTTP interface"
6464
DB_TYPE_IDS='["ClickHouse"]'; ICON="chart.bar.xaxis"; BUNDLE_NAME="ClickHouseDriver"
65-
HOMEPAGE="https://docs.tablepro.app/databases/clickhouse" ;;
65+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/clickhouse" ;;
6666
sqlite)
6767
TARGET="SQLiteDriver"; BUNDLE_ID="com.TablePro.SQLiteDriver"
6868
DISPLAY_NAME="SQLite Driver"; SUMMARY="SQLite embedded database driver"
6969
DB_TYPE_IDS='["SQLite"]'; ICON="internaldrive"; BUNDLE_NAME="SQLiteDriver"
70-
HOMEPAGE="https://docs.tablepro.app/databases/sqlite" ;;
70+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/sqlite" ;;
7171
duckdb)
7272
TARGET="DuckDBDriver"; BUNDLE_ID="com.TablePro.DuckDBDriver"
7373
DISPLAY_NAME="DuckDB Driver"; SUMMARY="DuckDB analytical database driver"
7474
DB_TYPE_IDS='["DuckDB"]'; ICON="bird"; BUNDLE_NAME="DuckDBDriver"
75-
HOMEPAGE="https://docs.tablepro.app/databases/duckdb" ;;
75+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/duckdb" ;;
7676
cassandra)
7777
TARGET="CassandraDriver"; BUNDLE_ID="com.TablePro.CassandraDriver"
7878
DISPLAY_NAME="Cassandra Driver"; SUMMARY="Apache Cassandra and ScyllaDB driver via DataStax C driver"
7979
DB_TYPE_IDS='["Cassandra", "ScyllaDB"]'; ICON="cassandra-icon"; BUNDLE_NAME="CassandraDriver"
80-
HOMEPAGE="https://docs.tablepro.app/databases/cassandra" ;;
80+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/cassandra" ;;
8181
mssql)
8282
TARGET="MSSQLDriver"; BUNDLE_ID="com.TablePro.MSSQLDriver"
8383
DISPLAY_NAME="MSSQL Driver"; SUMMARY="Microsoft SQL Server driver via FreeTDS"
8484
DB_TYPE_IDS='["SQL Server"]'; ICON="mssql-icon"; BUNDLE_NAME="MSSQLDriver"
85-
HOMEPAGE="https://docs.tablepro.app/databases/mssql" ;;
85+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/mssql" ;;
8686
mongodb)
8787
TARGET="MongoDBDriver"; BUNDLE_ID="com.TablePro.MongoDBDriver"
8888
DISPLAY_NAME="MongoDB Driver"; SUMMARY="MongoDB document database driver via libmongoc"
8989
DB_TYPE_IDS='["MongoDB"]'; ICON="mongodb-icon"; BUNDLE_NAME="MongoDBDriver"
90-
HOMEPAGE="https://docs.tablepro.app/databases/mongodb" ;;
90+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/mongodb" ;;
9191
redis)
9292
TARGET="RedisDriver"; BUNDLE_ID="com.TablePro.RedisDriver"
9393
DISPLAY_NAME="Redis Driver"; SUMMARY="Redis in-memory data store driver via hiredis"
9494
DB_TYPE_IDS='["Redis"]'; ICON="redis-icon"; BUNDLE_NAME="RedisDriver"
95-
HOMEPAGE="https://docs.tablepro.app/databases/redis" ;;
95+
CATEGORY="database-driver"; HOMEPAGE="https://docs.tablepro.app/databases/redis" ;;
9696
xlsx)
9797
TARGET="XLSXExport"; BUNDLE_ID="com.TablePro.XLSXExportPlugin"
9898
DISPLAY_NAME="XLSX Export"; SUMMARY="Export data to Microsoft Excel XLSX format"
9999
DB_TYPE_IDS='null'; ICON="doc.richtext"; BUNDLE_NAME="XLSXExport"
100-
HOMEPAGE="https://docs.tablepro.app/features/export" ;;
100+
CATEGORY="export-format"; HOMEPAGE="https://docs.tablepro.app/features/export" ;;
101101
mql)
102102
TARGET="MQLExport"; BUNDLE_ID="com.TablePro.MQLExportPlugin"
103103
DISPLAY_NAME="MQL Export"; SUMMARY="Export MongoDB data as MQL statements"
104104
DB_TYPE_IDS='null'; ICON="doc.text"; BUNDLE_NAME="MQLExport"
105-
HOMEPAGE="https://docs.tablepro.app/features/export" ;;
105+
CATEGORY="export-format"; HOMEPAGE="https://docs.tablepro.app/features/export" ;;
106106
sqlimport)
107107
TARGET="SQLImport"; BUNDLE_ID="com.TablePro.SQLImportPlugin"
108108
DISPLAY_NAME="SQL Import"; SUMMARY="Import data from SQL dump files"
109109
DB_TYPE_IDS='null'; ICON="square.and.arrow.down"; BUNDLE_NAME="SQLImport"
110-
HOMEPAGE="https://docs.tablepro.app/features/import" ;;
110+
CATEGORY="import-format"; HOMEPAGE="https://docs.tablepro.app/features/import" ;;
111111
*) echo "Unknown plugin: $plugin_name"; return 1 ;;
112112
esac
113113
}
@@ -187,7 +187,7 @@ jobs:
187187
"$BUNDLE_ID" "$DISPLAY_NAME" "$VERSION" "$SUMMARY" \
188188
"$DB_TYPE_IDS" "$ARM64_URL" "$ARM64_SHA" \
189189
"$X86_64_URL" "$X86_SHA" "$MIN_APP_VERSION" \
190-
"$ICON" "$HOMEPAGE" \
190+
"$ICON" "$HOMEPAGE" "$CATEGORY" \
191191
<<'PYTHON_SCRIPT'
192192
import json, sys
193193
@@ -196,6 +196,7 @@ jobs:
196196
arm64_url, arm64_sha = sys.argv[6], sys.argv[7]
197197
x86_64_url, x86_64_sha = sys.argv[8], sys.argv[9]
198198
min_app_version, icon, homepage = sys.argv[10], sys.argv[11], sys.argv[12]
199+
category = sys.argv[13] if len(sys.argv) > 13 else "database-driver"
199200
200201
with open("plugins.json", "r") as f:
201202
manifest = json.load(f)
@@ -204,7 +205,7 @@ jobs:
204205
"id": bundle_id, "name": name, "version": version,
205206
"summary": summary,
206207
"author": {"name": "TablePro", "url": "https://tablepro.app"},
207-
"homepage": homepage, "category": "database-driver",
208+
"homepage": homepage, "category": category,
208209
"databaseTypeIds": db_type_ids,
209210
"downloadURL": arm64_url, "sha256": arm64_sha,
210211
"binaries": [

CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ Plugin bundles under `Plugins/`:
6464
| MSSQLDriverPlugin | SQL Server | CFreeTDS | Registry |
6565
| MongoDBDriverPlugin | MongoDB | CLibMongoc | Registry |
6666
| RedisDriverPlugin | Redis | CRedis | Registry |
67+
| DuckDBDriverPlugin | DuckDB | CDuckDB | Registry |
6768
| OracleDriverPlugin | Oracle | OracleNIO (SPM) | Registry |
6869

6970
When adding a new driver: create a new plugin bundle under `Plugins/`, implement `DriverPlugin` + `PluginDatabaseDriver`, add target to pbxproj. See `docs/development/plugin-system/` for details.

docs/customization/settings.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,7 @@ TablePro ships with 3 built-in database driver plugins (MySQL, PostgreSQL, SQLit
385385
| SQL Server | SQL Server | 1433 | Registry |
386386
| MongoDB | MongoDB | 27017 | Registry |
387387
| Redis | Redis | 6379 | Registry |
388+
| DuckDB | DuckDB | -- | Registry |
388389
| Oracle | Oracle | 1521 | Registry |
389390

390391
Select a plugin to enable or disable it using the toggle in the detail pane. Disabled plugins hide their database type from the connection dialog and prevent connections to that database type.

docs/development/architecture.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,7 @@ Each driver is a `.tableplugin` bundle under `Plugins/`. MySQL, PostgreSQL, and
216216
| MSSQLDriverPlugin | SQL Server | CFreeTDS | Registry |
217217
| MongoDBDriverPlugin | MongoDB | CLibMongoc | Registry |
218218
| RedisDriverPlugin | Redis | CRedis | Registry |
219+
| DuckDBDriverPlugin | DuckDB | CDuckDB | Registry |
219220
| OracleDriverPlugin | Oracle | OracleNIO (SPM) | Registry |
220221

221222
### Autocomplete Engine

docs/vi/customization/settings.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -383,6 +383,7 @@ TablePro đi kèm 3 plugin driver database tích hợp sẵn (MySQL, PostgreSQL,
383383
| SQL Server | SQL Server | 1433 | Registry |
384384
| MongoDB | MongoDB | 27017 | Registry |
385385
| Redis | Redis | 6379 | Registry |
386+
| DuckDB | DuckDB | -- | Registry |
386387
| Oracle | Oracle | 1521 | Registry |
387388

388389
Chọn plugin để bật/tắt bằng công tắc trong khung chi tiết. Plugin bị tắt sẽ ẩn loại database khỏi hộp thoại kết nối và ngăn kết nối đến loại database đó.

docs/vi/development/architecture.mdx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,7 @@ Mỗi driver là một bundle `.tableplugin` trong `Plugins/`. MySQL, PostgreSQL
216216
| MSSQLDriverPlugin | SQL Server | CFreeTDS | Registry |
217217
| MongoDBDriverPlugin | MongoDB | CLibMongoc | Registry |
218218
| RedisDriverPlugin | Redis | CRedis | Registry |
219+
| DuckDBDriverPlugin | DuckDB | CDuckDB | Registry |
219220
| OracleDriverPlugin | Oracle | OracleNIO (SPM) | Registry |
220221

221222
### Autocomplete Engine

0 commit comments

Comments
 (0)