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
|`minAppVersion`|`string`| No | Minimum TablePro version (e.g., `"0.17.0"`) |
38
39
|`minPluginKitVersion`|`int`| No | Minimum PluginKit version (currently `1`) |
39
40
|`iconName`|`string`| No | SF Symbol name for display |
40
41
|`isVerified`|`bool`| Yes | Whether the plugin is verified by the TablePro team |
41
42
43
+
\* Either `downloadURL`/`sha256` (flat fields) or `binaries` array is required. If `binaries` is present, the app picks the matching architecture. Flat fields serve as fallback for older app versions.
44
+
42
45
## Oracle and ClickHouse Entries
43
46
44
47
These two database drivers ship as downloadable plugins instead of being bundled with the app. Their registry entries:
@@ -58,6 +61,10 @@ These two database drivers ship as downloadable plugins instead of being bundled
Replace `<sha256-of-zip>` with the actual SHA-256 output from `build-plugin.sh`. You need one entry perarchitecture, or a universal ZIP.
101
+
Replace `<sha256-of-zip>` with the actual SHA-256 output from `build-plugin.sh`. The `binaries` array provides per-architecture downloads; `downloadURL`/`sha256` flat fields point to arm64 as fallback for older app versions.
91
102
92
103
## databaseTypeIds Mapping
93
104
@@ -107,10 +118,8 @@ The `databaseTypeIds` field maps registry entries to `DatabaseType.pluginTypeId`
107
118
## Publishing a Plugin Release
108
119
109
120
1. Tag the commit: `git tag plugin-oracle-v1.0.0 && git push --tags`
110
-
2. The `build-plugin.yml` CI workflow builds, signs, and creates a GitHub release with ZIP artifacts
111
-
3. Copy the SHA-256 from the build output
112
-
4. Add or update the entry in `plugins.json` on the [TableProApp/plugins](https://github.com/TableProApp/plugins) repo
113
-
5. The app fetches the updated manifest on next **Browse** visit (with ETag caching)
121
+
2. The `build-plugin.yml` CI workflow builds both architectures (arm64 + x86_64), signs, creates a GitHub release with ZIP artifacts, and automatically updates the plugin registry with a `binaries` array
122
+
3. The app fetches the updated manifest on next **Browse** visit (with ETag caching)
Copy file name to clipboardExpand all lines: docs/vi/development/plugin-registry.mdx
+16-7Lines changed: 16 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -32,13 +32,16 @@ Mỗi mục tương ứng với model `RegistryPlugin`:
32
32
|`homepage`|`string`| Không | URL dự án |
33
33
|`category`|`string`| Có | Một trong: `database-driver`, `export-format`, `import-format`, `theme`, `other`|
34
34
|`databaseTypeIds`|`[string]`| Không | Ánh xạ đến giá trị `DatabaseType.pluginTypeId`. Dùng cho tự động cài đặt. |
35
-
|`downloadURL`|`string`| Có | URL trực tiếp đến file `.zip`|
36
-
|`sha256`|`string`| Có | SHA-256 hex digest của file ZIP |
35
+
|`downloadURL`|`string`| Không*| URL trực tiếp đến file `.zip`|
36
+
|`sha256`|`string`| Không*| SHA-256 hex digest của file ZIP |
37
+
|`binaries`|`[object]`| Không | Binary theo kiến trúc: `[{ "architecture": "arm64"\|"x86_64", "downloadURL": "...", "sha256": "..." }]`|
37
38
|`minAppVersion`|`string`| Không | Phiên bản TablePro tối thiểu (vd: `"0.17.0"`) |
38
39
|`minPluginKitVersion`|`int`| Không | Phiên bản PluginKit tối thiểu (hiện tại là `1`) |
39
40
|`iconName`|`string`| Không | Tên SF Symbol để hiển thị |
40
41
|`isVerified`|`bool`| Có | Plugin đã được đội ngũ TablePro xác minh hay chưa |
41
42
43
+
\* Cần có `downloadURL`/`sha256` (trường phẳng) hoặc mảng `binaries`. Nếu có `binaries`, ứng dụng chọn kiến trúc phù hợp. Trường phẳng dùng làm fallback cho phiên bản ứng dụng cũ.
44
+
42
45
## Mục Oracle và ClickHouse
43
46
44
47
Hai database driver này được phân phối dưới dạng plugin tải về thay vì đóng gói trong ứng dụng:
@@ -58,6 +61,10 @@ Hai database driver này được phân phối dưới dạng plugin tải về
Thay `<sha256-cua-zip>` bằng SHA-256 thực tế từ output của `build-plugin.sh`.
101
+
Thay `<sha256-cua-zip>` bằng SHA-256 thực tế từ output của `build-plugin.sh`. Mảng `binaries` cung cấp tải về theo kiến trúc; trường phẳng `downloadURL`/`sha256` trỏ đến arm64 làm fallback cho phiên bản ứng dụng cũ.
91
102
92
103
## Ánh xạ databaseTypeIds
93
104
@@ -107,10 +118,8 @@ Trường `databaseTypeIds` ánh xạ mục registry đến giá trị `Database
107
118
## Xuất bản Plugin
108
119
109
120
1. Tạo tag: `git tag plugin-oracle-v1.0.0 && git push --tags`
110
-
2. CI workflow `build-plugin.yml` sẽ build, ký và tạo GitHub release với file ZIP
111
-
3. Sao chép SHA-256 từ output build
112
-
4. Thêm hoặc cập nhật mục trong `plugins.json` trên repo [TableProApp/plugins](https://github.com/TableProApp/plugins)
113
-
5. Ứng dụng sẽ tải manifest mới khi mở **Duyệt** (có cache ETag)
121
+
2. CI workflow `build-plugin.yml` sẽ build cả hai kiến trúc (arm64 + x86_64), ký, tạo GitHub release với file ZIP, và tự động cập nhật registry plugin với mảng `binaries`
122
+
3. Ứng dụng sẽ tải manifest mới khi mở **Duyệt** (có cache ETag)
0 commit comments