mirror of
https://github.com/ZSeven-W/openpencil.git
synced 2026-05-31 19:04:29 +07:00
fix(ci): scrub remaining refs to the deleted stub crates
Codex review of Task 1.2 found four dangling references to the deleted stub crates (pen-types/core/engine/codegen/figma + openpencil-app): - package.json: drop the five -p <crate> args from cargo:wasm-check - rust-release.yml: restore the build job, re-pointed at the real openpencil-desktop crate so release-draft has artifacts to publish - check-jian-boundaries.sh: 4 -> 3 invariants in the success message - README.md: remove the deleted crate rows from the crate-list table
This commit is contained in:
parent
8573374ef0
commit
74f5f658a9
4 changed files with 104 additions and 19 deletions
111
.github/workflows/rust-release.yml
vendored
111
.github/workflows/rust-release.yml
vendored
|
|
@ -1,12 +1,13 @@
|
|||
name: Rust release artifacts
|
||||
|
||||
# Triggered on tag push (v*) — assembles a GitHub Release draft. The desktop
|
||||
# binary build job has been removed: the `openpencil-app` placeholder crate
|
||||
# was deleted in Phase 1 Task 1.2, and real desktop apps (DMG / AppImage / EXE
|
||||
# installer) arrive in Step 1f as new `op-*` crates that will reintroduce a
|
||||
# build matrix here. The wasm web bundle is currently DEFERRED (see comment
|
||||
# block below); when the CI-side C-hard pipeline (emscripten install + EMSDK +
|
||||
# symlink hack + wasm-bindgen + wasm-opt) lands it will re-enter the matrix.
|
||||
# Triggered on tag push (v*) — builds release binaries across desktop targets
|
||||
# and assembles a GitHub Release draft. The `build` job builds the real
|
||||
# `openpencil-desktop` crate (winit + skia-safe runner that drives the Rust
|
||||
# shell); the deleted `openpencil-app` placeholder crate is gone (Phase 1
|
||||
# Task 1.2). Full DMG / AppImage / EXE installer packaging lands in Step 1f.
|
||||
# The wasm web bundle is currently DEFERRED (see comment block below); when
|
||||
# the CI-side C-hard pipeline (emscripten install + EMSDK + symlink hack +
|
||||
# wasm-bindgen + wasm-opt) lands it will re-enter the matrix.
|
||||
|
||||
on:
|
||||
push:
|
||||
|
|
@ -14,6 +15,93 @@ on:
|
|||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: ${{ matrix.label }}
|
||||
runs-on: ${{ matrix.runner }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- label: macos-aarch64
|
||||
runner: macos-latest
|
||||
target: aarch64-apple-darwin
|
||||
archive: tar.gz
|
||||
# macos-13 (Intel) deprecated; cross-compile x86_64-apple-darwin
|
||||
# from Apple Silicon (cargo supports cross-compile to host's other
|
||||
# arch out of the box, no `cross` needed).
|
||||
- label: macos-x86_64
|
||||
runner: macos-latest
|
||||
target: x86_64-apple-darwin
|
||||
archive: tar.gz
|
||||
- label: linux-x86_64
|
||||
runner: ubuntu-latest
|
||||
target: x86_64-unknown-linux-gnu
|
||||
archive: tar.gz
|
||||
- label: linux-aarch64
|
||||
runner: ubuntu-latest
|
||||
target: aarch64-unknown-linux-gnu
|
||||
archive: tar.gz
|
||||
cross: true
|
||||
- label: windows-x86_64
|
||||
runner: windows-latest
|
||||
target: x86_64-pc-windows-msvc
|
||||
archive: zip
|
||||
# Windows ARM64 — cargo cross-compile from x86_64 windows runner.
|
||||
- label: windows-aarch64
|
||||
runner: windows-latest
|
||||
target: aarch64-pc-windows-msvc
|
||||
archive: zip
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- uses: dtolnay/rust-toolchain@stable
|
||||
with:
|
||||
toolchain: '1.85'
|
||||
targets: ${{ matrix.target }}
|
||||
- uses: Swatinem/rust-cache@v2
|
||||
with:
|
||||
key: release-${{ matrix.target }}
|
||||
- name: Install Linux GL/EGL prereqs
|
||||
if: runner.os == 'Linux' && matrix.cross != true
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y \
|
||||
libxkbcommon-dev libxkbcommon-x11-dev \
|
||||
libwayland-dev libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev \
|
||||
libegl1-mesa-dev libgles2-mesa-dev libgbm-dev \
|
||||
libfreetype-dev libfontconfig1-dev
|
||||
- name: Install cross
|
||||
if: matrix.cross == true
|
||||
run: cargo install cross --locked --version 0.2.5
|
||||
- name: Build (host)
|
||||
if: matrix.cross != true
|
||||
run: cargo build -p openpencil-desktop --target ${{ matrix.target }} --release
|
||||
- name: Build (cross)
|
||||
if: matrix.cross == true
|
||||
run: cross build -p openpencil-desktop --target ${{ matrix.target }} --release
|
||||
- name: Package archive (unix)
|
||||
if: matrix.archive == 'tar.gz'
|
||||
shell: bash
|
||||
run: |
|
||||
cd target/${{ matrix.target }}/release
|
||||
tar czf ../../../openpencil-desktop-${{ matrix.label }}.tar.gz openpencil-desktop
|
||||
- name: Package archive (windows)
|
||||
if: matrix.archive == 'zip'
|
||||
shell: pwsh
|
||||
run: |
|
||||
Compress-Archive `
|
||||
-Path target\${{ matrix.target }}\release\openpencil-desktop.exe `
|
||||
-DestinationPath openpencil-desktop-${{ matrix.label }}.zip
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: openpencil-desktop-${{ matrix.label }}
|
||||
path: |
|
||||
openpencil-desktop-${{ matrix.label }}.tar.gz
|
||||
openpencil-desktop-${{ matrix.label }}.zip
|
||||
if-no-files-found: ignore
|
||||
|
||||
# Phase 1b release wasm artifact: explicitly DEFERRED (not silently
|
||||
# dropped). The local C-hard pipeline (vendor/skia-safe-op fork +
|
||||
# crates/wasm-libc-shim) does produce a runtime-loadable
|
||||
|
|
@ -35,11 +123,10 @@ jobs:
|
|||
|
||||
release-draft:
|
||||
name: Create / update GitHub Release draft
|
||||
# Desktop `build` job removed with the `openpencil-app` placeholder
|
||||
# crate (Phase 1 Task 1.2); the `wasm` job is deferred (see comment
|
||||
# block above). When the Step 1f `op-*` desktop crates and the
|
||||
# CI-side C-hard pipeline land, re-add those jobs and list their
|
||||
# names in this `needs:` field.
|
||||
# `wasm` job deferred (see comment block above); when the
|
||||
# CI-side C-hard pipeline lands, re-add the job and append its
|
||||
# name to this `needs:` list.
|
||||
needs: [build]
|
||||
runs-on: ubuntu-latest
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
steps:
|
||||
|
|
|
|||
|
|
@ -461,11 +461,9 @@ bun run cargo:deny # cargo-deny (native + wasm32 bans; CI uses cargo-deny
|
|||
|
||||
**Crate list (`crates/`):**
|
||||
|
||||
| Crate | Category | wasm32 |
|
||||
| ----------------------------------------------------------- | ------------------------------ | --------------------------------------------- |
|
||||
| openpencil-app | Stage F entry placeholder | — |
|
||||
| openpencil-shell-{core,web,native} | UI shell(spec §1.2 三 crate) | core/web ✅ / native ❌ (compile_error guard) |
|
||||
| pen-types / pen-core / pen-engine / pen-codegen / pen-figma | bucket A logic | ✅ |
|
||||
| Crate | Category | wasm32 |
|
||||
| ---------------------------------- | ------------------------------ | --------------------------------------------- |
|
||||
| openpencil-shell-{core,web,native} | UI shell(spec §1.2 三 crate) | core/web ✅ / native ❌ (compile_error guard) |
|
||||
|
||||
**Submodule:** `vendor/agent` → `github.com/ZSeven-W/agent-rs` (cross-product Rust agent runtime).
|
||||
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@
|
|||
"cargo:test": "cargo test --workspace",
|
||||
"cargo:fmt": "cargo fmt --all",
|
||||
"cargo:clippy": "cargo clippy --workspace --all-targets -- -D warnings",
|
||||
"cargo:wasm-check": "cargo check --target wasm32-unknown-unknown -p openpencil-shell-web --no-default-features --features web && cargo check --target wasm32-unknown-unknown -p pen-types -p pen-core -p pen-engine -p pen-codegen -p pen-figma",
|
||||
"cargo:wasm-check": "cargo check --target wasm32-unknown-unknown -p openpencil-shell-web --no-default-features --features web",
|
||||
"cargo:deny": "cargo deny check && cargo deny --target wasm32-unknown-unknown check bans",
|
||||
"shell:wasm:dev": "echo 'Step 4 will replace this with: cargo build --target wasm32-unknown-unknown -p openpencil-shell-web --no-default-features --features web && wasm-pack build crates/openpencil-shell-web --target web --dev && bun run scripts/serve-wasm-dev.ts'"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -96,4 +96,4 @@ if [ -n "$shell_web_deps" ]; then
|
|||
exit 1
|
||||
fi
|
||||
|
||||
echo "check-jian-boundaries.sh: all 4 Jian boundary invariants pass."
|
||||
echo "check-jian-boundaries.sh: all 3 Jian boundary invariants pass."
|
||||
|
|
|
|||
Loading…
Reference in a new issue