Commit Graph

75 Commits

Author SHA1 Message Date
233 f7741a55f4
feat(updater): support portable auto updates 2026-07-22 23:52:14 +08:00
t8y2 697b7a4b80 fix(ci): defer full Nix build until release 2026-07-22 17:20:16 +08:00
t8y2 4cc14f5f72 feat(updater): remove AtomGit download source 2026-07-18 12:23:16 +08:00
t8y2 b749cb9bdb perf(ci): cache Rust workspace crates 2026-07-17 21:07:22 +08:00
t8y2 31cb4c91e9 fix(ci): preserve GHA sccache fallback 2026-07-17 20:48:14 +08:00
t8y2 1b79c5da14 feat(ci): add shared S3 sccache 2026-07-17 19:17:36 +08:00
t8y2 8fa97fa926 fix(release): serialize AtomGit asset uploads 2026-07-12 21:26:10 +08:00
t8y2 ce7739fcda fix(release): parallelize mirror asset uploads 2026-07-11 11:30:20 +08:00
t8y2 7641bd3512 feat(release): sync releases to AtomGit 2026-07-03 03:04:52 +08:00
zipg da63f6e358
feat(release): add Windows WebView2 offline installer 2026-06-30 19:50:41 +08:00
t8y2 a021ae221e fix(release): use mpgrm env credentials 2026-06-18 23:58:56 +08:00
t8y2 81ae3e47fb fix(release): pass credentials to cnb asset sync 2026-06-18 23:54:44 +08:00
t8y2 827459c6ee fix(ci): split docker registry digests 2026-06-18 23:26:44 +08:00
t8y2 8b473d5912 fix(ci): handle release tag reruns 2026-06-18 22:41:16 +08:00
t8y2 73f4762b8d fix(ci): update GitHub action runtimes 2026-06-18 17:05:11 +08:00
二丫讲梵 8e5eac9eab
feat(workflow): 添加同步到 CNB 的工作流 2026-06-18 11:42:54 +08:00
t8y2 0a913344b2 fix(ci): pin Windows release runner 2026-06-12 13:48:28 +08:00
t8y2 edba8214b5 feat: show username/password fields for Access database connections 2026-06-10 08:37:18 +08:00
t8y2 7a2ed233be ci(release): add Windows ARM64 build target
- Add aarch64-pc-windows-msvc to release build matrix
- Make portable ZIP arch dynamic (x64/arm64)
- Update Scoop manifest for arm64 architecture
2026-06-08 19:18:53 +08:00
t8y2 ef568b8f98 ci(release): remove standalone signature assets 2026-06-02 10:42:01 +08:00
t8y2 658a14f290 ci: split CI jobs, add clippy/test, upgrade actions
- Split single check job into frontend / rust / jdbc parallel jobs
- Add concurrency group to cancel redundant CI runs
- Add pnpm cache via setup-node
- Add cargo clippy and cargo test to CI
- Unify Node version to 22 across all workflows
- Upgrade pnpm/action-setup to v6
- Fix clippy never_loop errors (while let → if let)
2026-05-23 14:11:46 +08:00
t8y2 d6e98c5d67 fix(ci): install xdg-utils for Linux releases 2026-05-21 12:02:29 +08:00
t8y2 73cb490189 feat(jdbc): show plugin update notice 2026-05-18 21:48:46 +08:00
t8y2 df87ec994e ci(jdbc): auto bump plugin releases 2026-05-18 21:01:39 +08:00
t8y2 7badf4060e fix(jdbc): stabilize plugin release versioning 2026-05-18 15:10:08 +08:00
t8y2 84018eae89 chore(repo): move deploy files under deploy 2026-05-18 02:20:30 +08:00
t8y2 70f55c5540 fix(ci): restore docs and package checks 2026-05-18 01:04:11 +08:00
t8y2 7c226ce684 fix(app): support portable data directory 2026-05-17 12:44:34 +08:00
t8y2 6ea6e45bcd feat(ci): add Linux ARM64 build target (#272)
Add aarch64-unknown-linux-gnu to the release build matrix using
GitHub's native ARM runner (ubuntu-22.04-arm).
2026-05-14 18:55:30 +08:00
t8y2 26245514bb refactor: remove ODBC dependency entirely
DaMeng now uses JDBC agent instead of ODBC. Remove odbc-api crate,
ODBC_ENV static, unixodbc system dependency from CI, and ODBC library
bundling from macOS release builds. macOS no longer needs any brew
dependencies for development.
2026-05-13 05:27:56 +08:00
t8y2 01c4b744ef fix(updater): show real app version and release notes 2026-05-12 15:15:46 +08:00
t8y2 417b74cc51 refactor(ci): trigger Homebrew/Scoop publish on release event
Move packages job from release.yml to publish-packages.yml, triggered
by release published/released events. Keeps workflow_dispatch as a
manual fallback. Now all external publishing (Homebrew, Scoop, 1Panel,
QQ notify) triggers at the same time: when a prerelease is promoted
to a full release.
2026-05-10 22:23:25 +08:00
t8y2 302835bebb refactor(ci): trigger 1Panel submission on release publish
Move 1Panel App Store submission from release.yml to a standalone
workflow triggered by release published/released events, matching
the same pattern as QQ notify.
2026-05-10 22:19:09 +08:00
t8y2 fdb9a5c4d3 feat(ci): add 1Panel App Store auto-submission
Add 1Panel app store configuration files (metadata, docker-compose
template, logo) and a release workflow job that automatically creates
a PR to 1Panel-dev/appstore on each release.
2026-05-10 22:16:07 +08:00
t8y2 10bfede1c7 feat(jdbc): add optional JDBC plugin support 2026-05-10 12:57:38 +08:00
t8y2 1c53e68269 ci(release): stabilize rust cache keys 2026-05-09 23:57:54 +08:00
t8y2 67bc43e997 build(release): 增加 Windows 绿色版压缩包 2026-05-09 17:42:27 +08:00
t8y2 9a7c12c65a fix: restore macOS frameworks to tauri.conf.json for proper bundling
TAURI_CONFIG env var merge did not apply frameworks to the bundler,
resulting in libodbc/libltdl missing from Contents/Frameworks/.

Restore frameworks in tauri.conf.json and skip them in dev mode via
build.rs when the dylibs are not present locally.
2026-05-07 22:14:01 +08:00
t8y2 aefb6bf0ef fix: prevent SELECT with REPLACE/TRUNCATE functions from triggering danger warning
The DANGER_RE regex matched keywords anywhere in the SQL text, causing
SELECT queries using REPLACE() or TRUNCATE() functions to incorrectly
trigger the destructive-SQL warning dialog. Check only the first keyword
of each semicolon-separated statement instead.

Also fix dialog content overflow by adding min-w-0 to the <pre> element,
and move macOS frameworks config from tauri.conf.json to CI-only
TAURI_CONFIG so local `tauri dev` no longer requires libltdl/libodbc
to be globally installed.

Closes #135
2026-05-07 19:07:41 +08:00
t8y2 484dc85114 fix: also bundle libltdl.7.dylib for macOS app
libodbc.2.dylib depends on libltdl.7.dylib (libtool). Rewrite its
install_name and the reference in libodbc to @rpath so both resolve
from Contents/Frameworks/ at runtime.
2026-05-07 18:46:09 +08:00
t8y2 fbcceb5781 fix: rewrite libodbc install_name so macOS app loads bundled library
The binary was linking against /opt/homebrew/opt/unixodbc/lib/libodbc.2.dylib
(absolute path). At runtime dyld refused to load it due to Team ID mismatch.
Use install_name_tool to set @rpath/libodbc.2.dylib before building, so the
linker records a relative path that resolves via Contents/Frameworks/.
2026-05-07 18:30:20 +08:00
t8y2 4973912666 fix: bundle libodbc into macOS app and improve update UX
- Bundle libodbc.2.dylib into .app/Contents/Frameworks/ via Tauri's
  macOS frameworks config to fix "app can't be opened" on macOS
- Replace relaunch() with exit(0) to avoid Tauri restart bug (#11392)
- Lock update dialog during download and after install
- Render release notes as markdown
2026-05-07 17:36:44 +08:00
t8y2 606019b86c ci: use macos-15-intel runner for x86_64 macOS builds
Replace cross-compilation approach with native Intel runner.
macos-15-intel is GitHub's official replacement for the retired
macos-13 runner, available for free on public repos until Aug 2027.
2026-05-07 14:28:40 +08:00
t8y2 63b7458347 ci: install x86_64 unixodbc for cross-compilation on ARM macOS
The ARM runner's Homebrew installs arm64 libraries, which can't link
when cross-compiling for x86_64. Use arch -x86_64 to install the
Intel version of unixodbc and set LIBRARY_PATH accordingly.
2026-05-07 14:14:43 +08:00
t8y2 89e9dde666 ci: replace deprecated macos-13 runner with macos-latest
macos-13 (Intel) runners have been retired by GitHub, causing the
x86_64-apple-darwin build job to queue indefinitely. Use macos-latest
(ARM) and cross-compile via --target instead.
2026-05-07 14:08:15 +08:00
t8y2 a0ceefd1ef fix(ci): use macos-13 for x86_64 build to resolve ODBC linking 2026-05-07 13:07:46 +08:00
t8y2 4bf4f3b77f feat: add DM (Dameng) database support via ODBC
Connect to DM8 databases using the odbc-api crate with unixODBC.
Includes schema browsing, query execution, DDL generation,
and full frontend integration with download link to DM ODBC driver.
2026-05-07 01:02:56 +08:00
t8y2 dc9d4e2b9c perf(docker): parallelize multi-arch build and improve layer caching
Split the single docker job into a matrix (amd64/arm64) that builds in
parallel, then merge via docker-manifest job. Also restructure the
Dockerfile to pre-compile dependencies with dummy sources so the dep
layer is cached by GHA when only application code changes.
2026-05-06 00:14:05 +08:00
t8y2 8cc4dfb268 fix: update workspace paths and optimize Rust caching in CI workflows 2026-05-05 21:45:17 +08:00
t8y2 05c50e942f ci(docker): add multi-platform build for linux/amd64 and linux/arm64 2026-05-05 18:39:43 +08:00