Skip to content

ci: ignore imbl bumps until matrix-sdk-ui allows them#120

Merged
Just-Insane merged 2 commits into
mainfrom
claude/ci-state-review-4364d6
Jul 9, 2026
Merged

ci: ignore imbl bumps until matrix-sdk-ui allows them#120
Just-Insane merged 2 commits into
mainfrom
claude/ci-state-review-4364d6

Conversation

@Just-Insane

Copy link
Copy Markdown
Contributor

Summary

  • PR chore: bump the cargo-major group across 1 directory with 3 updates #42 (dependabot cargo-major group: lru, imbl, jni) fails CI with E0308: mismatched types... there are multiple different versions of crate imbl in the dependency graph.
  • Root cause: imbl is a direct dependency in src-tauri/Cargo.toml only so our code can pass matrix-sdk-ui's returned imbl::Vector<Arc<TimelineItem>> straight into our own functions (see timeline.rs). matrix-sdk/matrix-sdk-ui 0.18.0 haven't bumped their own imbl requirement past 6.x, so bumping our imbl to 7.0.0 independently leaves two semver-incompatible imbl versions in the graph — Cargo treats them as distinct types even though the crate name matches, breaking every call site that mixes the two.
  • Fix: keep imbl pinned at 6.1.0 with a comment explaining the constraint, and add a dependabot ignore rule for it so this doesn't recur every time upstream publishes a new imbl — until matrix-sdk-ui itself bumps its imbl requirement, at which point both the ignore and the pin should move together.

Test plan

  • cargo check --lib passes locally with no changes to Cargo.lock (this PR only adds comments + a dependabot ignore rule, doesn't touch the resolved version).
  • Close PR chore: bump the cargo-major group across 1 directory with 3 updates #42; dependabot should reopen a clean lru+jni-only cargo-major PR on its next run (or via @dependabot recreate) once this ignore rule is merged.

Dependabot's cargo-major group bumped our direct imbl dep independently
of matrix-sdk-ui's own (older) imbl requirement in PR #42, leaving two
semver-incompatible imbl versions in the graph and breaking every call
site that passes a matrix-sdk-ui Vector into our code (E0308: multiple
different versions of crate `imbl`). Pin stays at 6.1.0 with an ignore
rule until matrix-sdk-ui bumps its own requirement.
Copilot AI review requested due to automatic review settings July 9, 2026 20:05
@Just-Insane Just-Insane temporarily deployed to cloudflare-preview July 9, 2026 20:05 — with GitHub Actions Inactive
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Web preview: https://pr-120-charm-preview.justin-tech.workers.dev

Built with VITE_CHARM_BUILD_TARGET=web and a same-origin /api/* Worker proxy so Strict session cookies work in authenticated preview flows.

@Just-Insane Just-Insane enabled auto-merge July 9, 2026 20:09

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7ed8a7270a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/dependabot.yml

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR addresses CI failures caused by semver-incompatible duplicate imbl versions in the Rust dependency graph by documenting the constraint in src-tauri/Cargo.toml and configuring Dependabot to stop proposing problematic imbl upgrades until matrix-sdk-ui updates its own imbl requirement.

Changes:

  • Add an explanatory comment in src-tauri/Cargo.toml describing why imbl must remain compatible with matrix-sdk-ui.
  • Add a Dependabot ignore rule for imbl to prevent recurring CI-breaking upgrade PRs.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
src-tauri/Cargo.toml Documents why imbl must stay compatible with matrix-sdk-ui’s imbl::Vector types.
.github/dependabot.yml Adds a rule to prevent Dependabot from repeatedly proposing imbl upgrades that break type compatibility.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src-tauri/Cargo.toml Outdated
Comment thread .github/dependabot.yml Outdated
Review feedback on #120: the ignore rule as written blocked every imbl
update, including compatible 6.x minor/patch releases that matrix-sdk-ui's
imbl = "6.1.0" requirement can still resolve. Only the major-version jump
causes the duplicate-type break, so scope the ignore to
version-update:semver-major and reword the Cargo.toml comment accordingly.
@Just-Insane Just-Insane temporarily deployed to cloudflare-preview July 9, 2026 20:14 — with GitHub Actions Inactive
@Just-Insane Just-Insane added this pull request to the merge queue Jul 9, 2026
Merged via the queue into main with commit 9753d5a Jul 9, 2026
28 checks passed
@Just-Insane Just-Insane deleted the claude/ci-state-review-4364d6 branch July 9, 2026 21:12
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.

2 participants