Skip to content

Update to Holochain 0.7 (off develop)#140

Draft
zippy wants to merge 1 commit into
feat/tauri-direct-auth-and-restartfrom
asr-main-0.7
Draft

Update to Holochain 0.7 (off develop)#140
zippy wants to merge 1 commit into
feat/tauri-direct-auth-and-restartfrom
asr-main-0.7

Conversation

@zippy

@zippy zippy commented Jun 8, 2026

Copy link
Copy Markdown
Member

Bumps the runtime, FFI, and Tauri plugins from Holochain 0.6.1 to 0.7.0-dev.28
(the current develop), and points the JS client at local checkouts for
development. Both tauri-plugin-holochain integration tests pass against 0.7.

Based on feat/tauri-direct-auth-and-restart (one commit on top); retarget to
main once that branch lands.

Rust dependencies

  • holochain / holochain_conductor_api / holochain_types0.7.0-dev.28 / 0.7.0-dev.27 / 0.7.0-dev.27
  • hdk 0.7.0-dev.19, hdi 0.8.0-dev.13, holochain_serialized_bytes 0.0.57, kitsune2_api 0.5.0-dev.3, lair_keystore_api 0.7.1
  • crates/runtime: holochain_keystore 0.6.1 → 0.7.0-dev.18 — the stray 0.6 pin was dragging a duplicate lair_keystore_api into the graph
  • rust-toolchain 1.88 → 1.95 — Holochain 0.7's wasmer 7.1 / wasmtime 42 require rustc ≥ 1.91
  • Pin the iroh ecosystem to 1.0.0-rc.0 in Cargo.lock; a fresh resolve picks iroh-relay 1.0.0-rc.1, whose API breaks kitsune2_bootstrap_srv 0.5.0-dev.3

Runtime API changes (crates/runtime/src/runtime.rs)

  • Conductor::shutdown() now consumes Arc<Self> → clone before calling
  • AdminResponse::NetworkStatsDumped now carries holochain_types::HolochainTransportStats instead of kitsune2_api::ApiTransportStats (same transport_stats field; only the sole in-crate test consumes it)

JS (local dev)

  • All @holochain/client refs → file: the local ../holochain-client-js (v0.21.x, the Holochain 0.7 client)
  • example-client-app tests → @holochain-open-dev/tryorama 0.20.0-dev.0 (import sites updated to the new package name)

Fixtures / tests

  • Repack forum.happ with hc 0.7 zomes; build:zomes now sets getrandom_backend="custom" since the hdk 0.7 tree pulls getrandom 0.3, which otherwise fails to build on wasm32-unknown-unknown
  • tauri-plugin-holochain integration wait_for_ready gates on try_runtime() instead of holochain(): the plugin state is manage()d at setup before the async boot sets the runtime, so holochain() resolves immediately (the old check raced ahead and the assertions ran before the conductor was up)

Testing

cargo test -p tauri-plugin-holochain
# test result: ok. 2 passed; 0 failed (66s)
#   plugin_boots_conductor_in_tauri_app          (legacy app-websocket path)
#   app_request_serves_app_api_in_process        (in-process app_request IPC path)

Follow-ups (not in this PR)

  • Android x86: the guillemcordoba/wasmer fix-x86 patch is now unused (wasmer 6.0.1 fork vs 0.7's wasmer 7.x) — needs a wasmer-7 fork branch before an x86 Android build
  • Approach B (full webview + @holochain/client over Tauri IPC) not exercised here

Bump the runtime, FFI, and Tauri plugins to Holochain 0.7.0-dev.28 and
point the JS client at local checkouts for development.

Rust deps:
- holochain/conductor_api/types -> 0.7.0-dev.{28,27,27}, hdk 0.7.0-dev.19,
  hdi 0.8.0-dev.13, holochain_serialized_bytes 0.0.57,
  kitsune2_api 0.5.0-dev.3, lair_keystore_api 0.7.1
- crates/runtime: holochain_keystore 0.6.1 -> 0.7.0-dev.18 (the stray 0.6
  pin was dragging in a duplicate lair_keystore_api)
- rust-toolchain 1.88 -> 1.95 (wasmer 7.1 / wasmtime 42 need >= 1.91)
- pin the iroh ecosystem to 1.0.0-rc.0 in Cargo.lock; rc.1's iroh-relay
  API breaks kitsune2_bootstrap_srv 0.5.0-dev.3

Runtime API changes (crates/runtime/src/runtime.rs):
- Conductor::shutdown() now consumes Arc<Self> -> clone before calling
- AdminResponse::NetworkStatsDumped carries holochain_types
  HolochainTransportStats, not kitsune2_api ApiTransportStats

JS (local dev):
- all @holochain/client refs -> file: ../holochain-client-js (v0.21.x,
  the Holochain 0.7 client)
- example-client-app tests -> @holochain-open-dev/tryorama 0.20.0-dev.0
  (import sites updated to the new package name)

Fixtures / tests:
- repack forum.happ with hc 0.7 zomes; build:zomes now sets
  getrandom_backend="custom" since the hdk 0.7 tree pulls getrandom 0.3,
  which otherwise fails to build on wasm32-unknown-unknown
- integration test wait_for_ready gates on try_runtime() instead of
  holochain(): the plugin state is managed at setup before the async boot
  sets the runtime, so holochain() resolves immediately

Both tauri-plugin-holochain integration tests pass against 0.7.
@cocogitto-bot

cocogitto-bot Bot commented Jun 8, 2026

Copy link
Copy Markdown

❌ Found 0 compliant commit and 1 non-compliant commits in 4eca328.

Commit 4eca328 by @zippy is not conform to the conventional commit specification :

  • message: `Update to Holochain 0.7 (off develop)

Bump the runtime, FFI, and Tauri plugins to Holochain 0.7.0-dev.28 and
point the JS client at local checkouts for development.

Rust deps:

  • holochain/conductor_api/types -> 0.7.0-dev.{28,27,27}, hdk 0.7.0-dev.19,
    hdi 0.8.0-dev.13, holochain_serialized_bytes 0.0.57,
    kitsune2_api 0.5.0-dev.3, lair_keystore_api 0.7.1
  • crates/runtime: holochain_keystore 0.6.1 -> 0.7.0-dev.18 (the stray 0.6
    pin was dragging in a duplicate lair_keystore_api)
  • rust-toolchain 1.88 -> 1.95 (wasmer 7.1 / wasmtime 42 need >= 1.91)
  • pin the iroh ecosystem to 1.0.0-rc.0 in Cargo.lock; rc.1's iroh-relay
    API breaks kitsune2_bootstrap_srv 0.5.0-dev.3

Runtime API changes (crates/runtime/src/runtime.rs):

  • Conductor::shutdown() now consumes Arc -> clone before calling
  • AdminResponse::NetworkStatsDumped carries holochain_types
    HolochainTransportStats, not kitsune2_api ApiTransportStats

JS (local dev):

  • all @holochain/client refs -> file: ../holochain-client-js (v0.21.x,
    the Holochain 0.7 client)
  • example-client-app tests -> @holochain-open-dev/tryorama 0.20.0-dev.0
    (import sites updated to the new package name)

Fixtures / tests:

  • repack forum.happ with hc 0.7 zomes; build:zomes now sets
    getrandom_backend="custom" since the hdk 0.7 tree pulls getrandom 0.3,
    which otherwise fails to build on wasm32-unknown-unknown
  • integration test wait_for_ready gates on try_runtime() instead of
    holochain(): the plugin state is managed at setup before the async boot
    sets the runtime, so holochain() resolves immediately

Both tauri-plugin-holochain integration tests pass against 0.7.`

  • cause:
    Missing commit type separator `:`
    
    Caused by:
         --> 1:7
          |
        1 | Update to Holochain 0.7 (off develop)
          |       ^---
          |
          = expected scope or type_separator
    

@coderabbitai

coderabbitai Bot commented Jun 8, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: df2f6c91-471d-4925-99b4-3e34593bc783

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch asr-main-0.7

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant