Commit graph

94 commits

Author SHA1 Message Date
Darkatse
d101b64266 chore(github): adopt grouped issue labels
Issue labels move to type/platform/area/status groups. Templates apply
the renamed type labels, the bug form gains HarmonyOS (reports such as
#308 had to pick Android), and questions are pointed at Discussions Q&A.

A workflow labels the platforms an issue mentions when it is opened.
Scanning title and body covers both form and free-form reports; on
existing issues it matched the form's platform in 46 of 55 and caught
reporters who picked the wrong dropdown entry.

Dependabot gets a fixed `dependencies` label so it no longer recreates
the ecosystem label `rust`.
2026-10-10 00:27:51 -04:00
Darkatse
c4c2856f17 ci: build portable binaries in their own jobs and keep Rust caches reusable
The Windows release job built the bundles and then the portable binary,
so the portable link sat on the Canary critical path (56 min on
2026-10-08). Build the portable binaries in a separate matrix job; they
build their own frontend and, on Canary, restore the desktop release
cache of the same platform.

The repository cache was at its 10 GB limit and dev had lost every
desktop cache: Canary built from scratch (Windows 55 min cold against
36 min warm). The default rust-cache key ignored the matrix, so release
and debug builds on one runner shared a key. Give each Canary release
build its own key and leave the debug builds uncached. Stable and pull
requests no longer cache: caches saved under a tag or a PR ref are not
reused by later runs and only evicted dev's.

Validation: workflows parse; jobs, steps and publish dependencies
checked. Cache budget to confirm after the next Canary runs.
2026-10-09 23:45:27 -04:00
Darkatse
a39c0dbec3 build(pilot): select the pilot capability by feature
tauri.pilot.conf.json granted pilot:default inline, so it had to list
every capability file, and its list replaced the default set: a file
missing from it was silently off in pilot builds and the Windows and
macOS debug packages, as with desktop dialogs in 435f3f91. Move the
grant to capabilities/pilot/ and let build.rs load that directory only
when devtools-pilot is enabled. The feature is now the only switch;
drop the config file and its --config flags from the scripts and the
release workflows.

Validation: pnpm run check; the normal build embeds the five
capability files and the pilot build adds pilot-devtools; pilot eval
and assert in the macOS dev build.
2026-10-09 23:32:25 -04:00
Darkatse
810c6f2901 ci: upgrade actions to Node 24 2026-10-05 17:28:55 -04:00
Darkatse
e83428be69 fix(ohos): preserve Node runtime for pnpm builds 2026-10-04 02:27:53 -04:00
LeenHawk
0077e15241
feat: add experimental OpenHarmony HAP support (#300)
* feat: add experimental OpenHarmony application build

* build(ohos): isolate experimental NAPI dependencies

* ci(ohos): build in this repository with public toolchain image

* ci: run existing checks for OHOS adaptation

* fix(ohos): generate QuickJS bindings for the OHOS target

* fix(ohos): use private caches and exclude desktop migration logs

* feat(ohos): restore native plugins and trusted endpoint confirmation

* ci(ohos): verify native plugin integration with existing checks

* chore(ohos): remove completed one-off validation workflow

* fix(ohos): clean dependency warnings and enable HAP LTO

* fix(ohos): retain shared plugin callbacks for the native bridge

* refactor(ohos): keep the native project and align the framework baseline

* fix(ohos): pin frame authorization and name the launcher entry

* fix(ohos): bind native builds and HAP packaging to the selected ABI

* fix(ohos): pin ordered Tauri bridge initialization

* fix(ohos): compress native libraries in HAP packages

* refactor(ohos): simplify HAP builds and Canary publishing

Build Rust once through the OHOS CLI and derive HAP versions from its merged
configuration. Replace the demo with the application page and remove generated
configuration writes, CMake scaffolding, and redundant preparation steps.

Keep ARM64 HAPs optional for Canary, report unsupported dev-log exports clearly,
and document the current build and host contracts.

Validated with pnpm run check, a local x86_64 HAP build and simulator smoke checks,
and Windows notification smoke checks.

---------

Co-authored-by: Darkatse <39111369+Darkatse@users.noreply.github.com>
2026-10-04 14:09:37 +08:00
Darkatse
2f2d2d6fe6 ci: refresh Flatpak dependency sources automatically 2026-09-19 19:48:15 -04:00
Darkatse
c90d77d501 fix(nix): refresh pnpm dependency hash and verify rebuilds 2026-09-19 02:57:47 -04:00
Darkatse
d3c7255d5b fix(ci): enable Pilot in stable debug builds and refresh Flatpak sources 2026-09-18 22:33:57 -04:00
Darkatse
dc0115412c fix(ci): use an absolute path for the Pilot config 2026-09-16 15:48:45 -04:00
Darkatse
cdff18a4a5 fix(nix): refresh package inputs and add preflight (#256) 2026-09-16 12:17:33 +08:00
Darkatse
ec3952a16b feat(ci): enable Tauri Pilot in Canary debug builds 2026-09-15 15:19:30 -04:00
Darkatse
8dfcd47d81 fix(ci): pin TestFlight Codex action to v1.11 2026-09-15 14:34:44 -04:00
Darkatse
c0a45ae298 fix(ci): upgrade Android SDK setup and skip obsolete tools (android-actions/setup-android#537) 2026-09-15 14:34:38 -04:00
Darkatse
69a1325e77 ci: post branch guidance before closing pull requests 2026-09-09 00:07:17 -04:00
Darkatse
ba1a44f5b3 ci: close new pull requests targeting non-dev branches 2026-09-08 23:54:45 -04:00
Darkatse
84804f65c1 fix(ci): pin Canary Codex action to v1.11 2026-08-24 12:58:00 -04:00
Darkatse
59c1fe83eb feat(ci): add Canary debug builds (#206) 2026-08-24 02:06:00 -04:00
Darkatse
1c522c82ad chore(tooling): upgrade pnpm to 11 2026-08-21 15:13:07 -04:00
Darkatse
4c6677cb58 fix(ci): restore Codex release notes generation 2026-08-21 14:51:30 -04:00
Darkatse
eda7ece7bf fix(agent): align skill scripts with workspace semantics 2026-08-20 16:07:56 -04:00
matrix97
23e73107b6 ci(quickjs): restore armv7-android build now that ort-sys is gone
Revert the armv7-android workaround added to avoid the ort-sys armv7 prebuilt gap: ORT was removed in 26ee3fdf, so armv7 can build again. Restores CC/AR env, rust target, bindgen sysroot, and build args for armv7-linux-androideabi while keeping the best-effort publish strategy.
2026-08-18 21:55:09 +08:00
matrix97
0b90283733 ci(quickjs): skip deb/rpm normalization when no Linux repo packages present
Align the publish-side Linux repo package gate with the best-effort
strategy: if a partial run yields neither deb nor rpm artifacts, print
a skip notice and exit 0 instead of failing the publish job on
`test -ge 1`. Collector-level `--best-effort` already tolerates missing
desktop artifacts; this removes the leftover hard gate that prevented
publishing windows/mobile-only runs.
2026-08-17 19:58:15 +08:00
hucc
049566b439 ci(workflow): publish QuickJS feature build on partial platform success
Allow the QuickJS feature release to publish whatever succeeded instead of requiring every platform to build: add --best-effort to the desktop asset collector, run desktop/mobile with continue-on-error, gate publish on prepare success rather than all jobs, and relax the Linux deb/rpm count check to at least one.
2026-08-17 16:35:18 +08:00
matrix97
6a7b0f0eec ci(quickjs): build Android arm64 only to avoid ort-sys armv7 prebuilt gap 2026-08-16 23:46:46 +08:00
lovewormcn-Matrix965
7ad588c066 fix(quickjs): enable bindgen only for Android targets
rquickjs-sys 0.9.0 ships no pregenerated bindings for android targets. Gate the bindgen feature behind target_os android so desktop keeps using bundled bindings without a libclang dependency. Mobile job installs llvm/libclang and exports BINDGEN_EXTRA_CLANG_ARGS pointing at the NDK sysroot.
2026-08-16 00:44:28 +08:00
lovewormcn-Matrix965
251efe69b1 ci(workflow): drop conflicting pnpm version from action setup
pnpm/action-setup@v4 conflicts with the packageManager field in package.json (pnpm@10.34.5). Remove the explicit version so the action reads packageManager, matching the locally pinned pnpm.
2026-08-15 23:59:47 +08:00
lovewormcn-Matrix965
e43a2913e2 ci(workflow): trigger QuickJS release by tag and add Android build
- Replace per-push trigger with quickjs-build*/quickjs-release* tags, keeping workflow_dispatch for manual runs
- Add Android mobile job ported from canary-release, with NDK cross-clang env so rquickjs-sys can compile QuickJS C sources for Android targets
- Pass Android apk/aab artifacts through the publish step alongside the strictly validated desktop bundle set
2026-08-15 23:47:39 +08:00
lovewormcn-Matrix965
2a8afae458 Merge remote-tracking branch 'origin/dev' into feature/quickjs-script-engine
# Conflicts:
#	src-tauri/Cargo.lock
2026-08-15 21:42:20 +08:00
Darkatse
e43e6da276 ci(deps): automate Cargo dependency checks 2026-08-13 22:53:42 -04:00
Darkatse
c801eba8fe chore(tauri): upgrade to 2.11.5 2026-08-13 21:45:31 -04:00
matrix97
f8665223c9 fix(workflow): rewrite QuickJS feature release based on canary-release
Align the QuickJS feature branch release with the canary desktop pipeline:
- desktop-only matrix (win, mac x64/arm64, linux x64/arm64) with portable builds
- no signing / notarization, no apt/rpm repo publish, no nix, no Codex
- deterministic commit-based release notes
- move QuickJS-Feature tag via gh api PATCH (force) instead of git push
- fix missing linux-version step reference
- add desktop-only asset collector (scripts/ci/collect-desktop-release-assets.mjs)
2026-08-13 23:55:43 +08:00
lovewormcn
83dfe024ed fix(workflow): Align with canary-release.yml build configuration 2026-08-13 14:39:45 +00:00
lovewormcn
f261efc118 fix(workflow): Align with canary-release.yml configuration 2026-08-13 14:34:05 +00:00
lovewormcn
225687bd3c fix(workflow): Don't exit when tag points to same commit, allow forced update 2026-08-13 14:21:14 +00:00
qwen.ai[bot]
e011aa2d51 feat: Add QuickJS feature branch auto-release workflow
- Create dedicated workflow for feature/quickjs-script-engine branch
- Automatically build and release on push to feature branch
- Use QuickJS-Feature tag for tracking releases
- Support manual trigger via workflow_dispatch
- Include multi-platform builds (Linux, Windows, macOS)
- Generate release notes with feature highlights
2026-08-13 13:25:01 +00:00
Darkatse
79b5112411 feat(release): add WinGet publishing 2026-08-07 00:55:20 -04:00
Darkatse
6ddffe6d8c feat(ci): include stable release notes in TestFlight context 2026-07-30 16:17:06 -04:00
Darkatse
238e697c83 perf(ci): cache PR Rust workspace artifacts 2026-07-30 14:50:17 +08:00
Darkatse
28a2eda892 feat(ci): publish desktop debug builds 2026-07-30 00:59:02 -04:00
Darkatse
b68cce4805 fix(ci): repair TestFlight and Linux repository publishing 2026-07-28 15:08:43 -04:00
Darkatse
59ed30dbd2 feat(ci): publish stable Flatpak releases 2026-07-27 05:53:03 +08:00
Darkatse
e0052d78fe feat(flatpak): add source-based application packaging 2026-07-27 05:52:55 +08:00
Darkatse
d78c445faa refactor(distribution): organize Linux repository publishers 2026-07-27 05:52:27 +08:00
Darkatse
620ad57e83 ci(mobile): allow HTTP in standard release artifacts 2026-07-26 01:55:57 -04:00
Darkatse
96fec267b0 feat(ci): automate public TestFlight distribution 2026-07-26 01:55:46 -04:00
Darkatse
3b5201e449 ci(codex): follow the v1 action release 2026-07-26 01:54:54 -04:00
Darkatse
2dd0899df6 fix(ci): normalize release asset names 2026-07-26 08:25:20 +08:00
Darkatse
73b27b2b5c ci(canary): shorten artifact names to calendar dates 2026-07-26 07:22:34 +08:00
Darkatse
2f371b33bc ci(canary): schedule daily releases for 18:00 China time 2026-07-26 07:17:34 +08:00