Skip to content

Commit 1ff8114

Browse files
committed
build: remove DynamoDB and BigQuery from bundled plugins, bump build 52
1 parent 3355fb3 commit 1ff8114

2 files changed

Lines changed: 6 additions & 8 deletions

File tree

CLAUDE.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
77
TablePro is a native macOS database client (SwiftUI + AppKit) — a fast, lightweight alternative to TablePlus. macOS 14.0+, Swift 5.9, Universal Binary (arm64 + x86_64).
88

99
- **Source**: `TablePro/``Core/` (business logic, services), `Views/` (UI), `Models/` (data structures), `ViewModels/`, `Extensions/`, `Theme/`
10-
- **Plugins**: `Plugins/``.tableplugin` bundles + `TableProPluginKit` shared framework. Built-in (bundled in app): MySQL, PostgreSQL, SQLite, ClickHouse, MSSQL, Redis, DynamoDB, CSV, JSON, SQL export, XLSX, MQL, SQLImport. Separately distributed via plugin registry: MongoDB, Oracle, DuckDB, Cassandra, Etcd, CloudflareD1, BigQuery
10+
- **Plugins**: `Plugins/``.tableplugin` bundles + `TableProPluginKit` shared framework. Built-in (bundled in app): MySQL, PostgreSQL, SQLite, ClickHouse, MSSQL, Redis, CSV, JSON, SQL export, XLSX, MQL, SQLImport. Separately distributed via plugin registry: MongoDB, Oracle, DuckDB, Cassandra, Etcd, CloudflareD1, DynamoDB, BigQuery
1111
- **C bridges**: Each plugin contains its own C bridge module (e.g., `Plugins/MySQLDriverPlugin/CMariaDB/`, `Plugins/PostgreSQLDriverPlugin/CLibPQ/`)
1212
- **Static libs**: `Libs/` — pre-built `libmariadb*.a`, `libpq*.a`, etc. Downloaded from GitHub Releases via `scripts/download-libs.sh` (not in git)
1313
- **SPM deps**: CodeEditSourceEditor (`main` branch, tree-sitter editor), Sparkle (2.8.1, auto-update), OracleNIO. Managed via Xcode, no `Package.swift`.
@@ -88,7 +88,7 @@ Plugin bundles under `Plugins/`:
8888
| CassandraDriverPlugin | Cassandra, ScyllaDB | CCassandra | Registry |
8989
| EtcdDriverPlugin | Etcd | (gRPC/HTTP) | Registry |
9090
| CloudflareD1Plugin | Cloudflare D1 | (URLSession HTTP) | Registry |
91-
| DynamoDBDriverPlugin | DynamoDB | (AWS SDK) | Built-in |
91+
| DynamoDBDriverPlugin | DynamoDB | (AWS SDK) | Registry |
9292
| BigQueryDriverPlugin | BigQuery | (URLSession REST) | Registry |
9393

9494
When adding a new driver: create a new plugin bundle under `Plugins/`, implement `DriverPlugin` + `PluginDatabaseDriver`, add target to pbxproj, add `DatabaseType` static constant, add case to `resolve_plugin_info()` in `.github/workflows/build-plugin.yml`, add row to `docs/index.mdx` supported databases table, and add CHANGELOG entry. See `docs/development/plugin-system/` for details.
@@ -252,3 +252,5 @@ Write like a developer, not a marketing AI. Be specific (numbers, tech names) ov
252252
GitHub Actions (`.github/workflows/build.yml`) triggered by `v*` tags: lint → build arm64 → build x86_64 → release (DMG/ZIP + Sparkle signatures). Release notes auto-extracted from `CHANGELOG.md`.
253253
254254
**Plugin CI** (`.github/workflows/build-plugin.yml`): triggered by `plugin-*-v*` tags. GitHub only fires one workflow per multi-tag `git push` — push tags individually or use `workflow_dispatch` with comma-separated tags for bulk releases.
255+
256+
**Plugin tag naming**: Tag names must match the CI workflow's `resolve_plugin_info()` mapping. Notable non-obvious mappings: `CloudflareD1DriverPlugin` → `plugin-cloudflare-d1-v*`, `EtcdDriverPlugin` → `plugin-etcd-v*`. Check existing tags with `git tag -l "plugin-*"` before creating new ones.

TablePro.xcodeproj/project.pbxproj

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@
3636
5A86F000A00000000 /* TableProPluginKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A860000100000000 /* TableProPluginKit.framework */; };
3737
5A86F000D00000000 /* SQLImport.tableplugin in Copy Plug-Ins */ = {isa = PBXBuildFile; fileRef = 5A86F000100000000 /* SQLImport.tableplugin */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
3838
5A87A000A00000000 /* TableProPluginKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5A860000100000000 /* TableProPluginKit.framework */; };
39-
5ABQR00000000000000000D0 /* BigQueryDriverPlugin.tableplugin in Copy Plug-Ins */ = {isa = PBXBuildFile; fileRef = 5ABQR00300000000000000A0 /* BigQueryDriverPlugin.tableplugin */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
4039
5ABQR00100000000000000A1 /* BigQueryAuth.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ABQR00200000000000000A1 /* BigQueryAuth.swift */; };
4140
5ABQR00100000000000000A2 /* BigQueryConnection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ABQR00200000000000000A2 /* BigQueryConnection.swift */; };
4241
5ABQR00100000000000000A3 /* BigQueryPlugin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ABQR00200000000000000A3 /* BigQueryPlugin.swift */; };
@@ -51,7 +50,6 @@
5150
5ACE00012F4F000000000006 /* CodeEditTextView in Frameworks */ = {isa = PBXBuildFile; productRef = 5ACE00012F4F000000000007 /* CodeEditTextView */; };
5251
5ACE00012F4F00000000000A /* Sparkle in Frameworks */ = {isa = PBXBuildFile; productRef = 5ACE00012F4F000000000009 /* Sparkle */; };
5352
5ACE00012F4F00000000000D /* MarkdownUI in Frameworks */ = {isa = PBXBuildFile; productRef = 5ACE00012F4F00000000000C /* MarkdownUI */; };
54-
5ADDB00000000000000000D0 /* DynamoDBDriverPlugin.tableplugin in Copy Plug-Ins */ = {isa = PBXBuildFile; fileRef = 5ADDB00300000000000000A0 /* DynamoDBDriverPlugin.tableplugin */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
5553
5ADDB00100000000000000A1 /* DynamoDBConnection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ADDB00200000000000000A1 /* DynamoDBConnection.swift */; };
5654
5ADDB00100000000000000A2 /* DynamoDBItemFlattener.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ADDB00200000000000000A2 /* DynamoDBItemFlattener.swift */; };
5755
5ADDB00100000000000000A3 /* DynamoDBPartiQLParser.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5ADDB00200000000000000A3 /* DynamoDBPartiQLParser.swift */; };
@@ -219,8 +217,6 @@
219217
5A86D000D00000000 /* XLSXExport.tableplugin in Copy Plug-Ins */,
220218
5A86E000D00000000 /* MQLExport.tableplugin in Copy Plug-Ins */,
221219
5A86F000D00000000 /* SQLImport.tableplugin in Copy Plug-Ins */,
222-
5ADDB00000000000000000D0 /* DynamoDBDriverPlugin.tableplugin in Copy Plug-Ins */,
223-
5ABQR00000000000000000D0 /* BigQueryDriverPlugin.tableplugin in Copy Plug-Ins */,
224220
);
225221
name = "Copy Plug-Ins";
226222
runOnlyForDeploymentPostprocessing = 0;
@@ -2097,7 +2093,7 @@
20972093
CODE_SIGN_IDENTITY = "Apple Development";
20982094
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
20992095
CODE_SIGN_STYLE = Automatic;
2100-
CURRENT_PROJECT_VERSION = 51;
2096+
CURRENT_PROJECT_VERSION = 52;
21012097
DEAD_CODE_STRIPPING = YES;
21022098
DEVELOPMENT_TEAM = D7HJ5TFYCU;
21032099
ENABLE_APP_SANDBOX = NO;
@@ -2169,7 +2165,7 @@
21692165
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "Apple Development";
21702166
CODE_SIGN_STYLE = Automatic;
21712167
COPY_PHASE_STRIP = YES;
2172-
CURRENT_PROJECT_VERSION = 51;
2168+
CURRENT_PROJECT_VERSION = 52;
21732169
DEAD_CODE_STRIPPING = YES;
21742170
DEPLOYMENT_POSTPROCESSING = YES;
21752171
DEVELOPMENT_TEAM = D7HJ5TFYCU;

0 commit comments

Comments
 (0)