mirror of
https://github.com/infinilabs/coco-app.git
synced 2026-07-10 12:37:31 +02:00
fix: resolve fst-no-std version conflict causing pizza-engine CI check failure (#1074)
* feat: add deep research report workflow and viewer * docs: update changelog * ci: update pizza repository reference from infinilabs to pizza-rs org * fix deep research completion state * fix: prevent deep research stream timeout * fix: update deep research cancel copy * fix: apply rustfmt formatting to attachment.rs * fix: resolve fst-no-std version conflict in pizza-engine CI check The 'check (macos-latest)' CI job fails because pizza-engine (added as a CI dependency) uses infinilabs/fst-no-std while its transitive dependency fst-regex uses pizza-rs/fst-no-std. Cargo treats these as two separate crates, causing: 1. Automaton trait incompatibility between the two fst_no_std instances 2. MapBuilder, Error::Io, and Set::from_iter not found because the infinilabs fork gates them behind 'std' feature while pizza-engine only enabled 'alloc' Fix: - Add [patch."https://github.com/infinilabs/fst-no-std"] to src-tauri/Cargo.toml to redirect the infinilabs fork to pizza-rs/fst-no-std, unifying both into a single crate instance. This patch is a no-op for normal builds without pizza-engine. - Update the CI workflow to also add fst-no-std with std feature so that Error::Io (gated by std) and MapBuilder are available after the redirect. * Update Cargo.toml --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: Medcl <m@medcl.net>
This commit is contained in:
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -86,7 +86,7 @@ jobs:
|
||||
- name: Checkout dependency repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: "infinilabs/pizza"
|
||||
repository: "pizza-rs/pizza"
|
||||
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
submodules: recursive
|
||||
ref: main
|
||||
|
||||
10
.github/workflows/rust_code_check.yml
vendored
10
.github/workflows/rust_code_check.yml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
- name: Checkout dependency (pizza-engine) repository
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
repository: 'infinilabs/pizza'
|
||||
repository: 'pizza-rs/pizza'
|
||||
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
submodules: recursive
|
||||
ref: main
|
||||
@@ -43,7 +43,13 @@ jobs:
|
||||
- name: Add pizza engine as a dependency
|
||||
working-directory: src-tauri
|
||||
shell: bash
|
||||
run: cargo add --path ../pizza/lib/engine --features query_string_parser,persistence
|
||||
run: |
|
||||
cargo add --path ../pizza/lib/engine --features query_string_parser,persistence
|
||||
# Add fst-no-std with the std feature to enable MapBuilder and Error::Io.
|
||||
# The [patch] in Cargo.toml redirects infinilabs/fst-no-std (used by pizza-engine)
|
||||
# to pizza-rs/fst-no-std (used by fst-regex) so both resolve to the same crate.
|
||||
# The std feature activates the Error::Io variant and MapBuilder that pizza-engine requires.
|
||||
cargo add fst-no-std --git https://github.com/pizza-rs/fst-no-std --branch main --features std
|
||||
|
||||
- name: Format check
|
||||
working-directory: src-tauri
|
||||
|
||||
Reference in New Issue
Block a user