Skip to content

Conversation

@burgholzer
Copy link
Member

Description

This PR updates the changelog (and the upgrade guide) after the release of v3.4.0 from the stable 3.x branch.

Checklist:

  • The pull request only contains commits that are focused and relevant to this change.
  • I have added appropriate tests that cover the new/changed functionality.
  • I have updated the documentation to reflect these changes.
  • I have added entries to the changelog for any noteworthy additions, changes, fixes, or removals.
  • I have added migration instructions to the upgrade guide (if needed).
  • The changes follow the project's style guidelines and introduce no new warnings.
  • The changes are fully tested and pass the CI checks.
  • I have reviewed my own code changes.

@burgholzer burgholzer self-assigned this Jan 8, 2026
@burgholzer burgholzer added the documentation Improvements or additions to documentation label Jan 8, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 8, 2026

📝 Walkthrough

Summary by CodeRabbit

  • New Features

    • QDMI–Qiskit integration for running QDMI circuits on QDMI devices.
    • IQM JSON support and enhanced QDMI device/authentication features.
    • Build system now builds MLIR by default for C++ library builds.
  • Chores

    • Python wheel distribution updated: removed Python 3.13t wheels; introduced Stable ABI wheels for Python 3.12+.
    • Updated Qiskit installation instructions.
  • Documentation

    • Added 3.4.0 release and upgrade notes, including QDMI-Qiskit usage guidance.

✏️ Tip: You can customize this high-level summary in your review settings.

Walkthrough

Updates release and upgrade documentation for version 3.4.0: adds a 3.4.0 changelog entry, moves a build-related item into the release, updates the Unreleased reference, and documents new QDMI–Qiskit integration classes and Python wheel changes.

Changes

Cohort / File(s) Summary
Release notes
CHANGELOG.md
Added [3.4.0] - 2026-01-08 release block with multiple Added items, moved a build-related change into the release, updated Unreleased range to v3.4.0...HEAD, and added release tag link.
Upgrade guide / Qiskit integration docs
UPGRADING.md
Added 3.4.0 upgrade notes covering Python wheel changes (stable ABI wheels via nanobind, removal of 3.13t wheels), introduced QDMI–Qiskit integration docs (new QDMIProvider, QDMIBackend, QDMIJob classes and usage examples), updated installation instruction for Qiskit support, removed a duplicated Python wheels block.

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant QiskitClient as Qiskit
  participant QDMIProvider
  participant QDMIBackend
  participant Device

  User->>QiskitClient: create & submit circuit
  QiskitClient->>QDMIProvider: request backend (QDMI)
  QDMIProvider->>QDMIBackend: instantiate backend / submit job
  QDMIBackend->>QDMIJob: create job
  QDMIJob->>Device: send circuit for execution
  Device-->>QDMIJob: execution result
  QDMIJob-->>QDMIBackend: deliver result
  QDMIBackend-->>QiskitClient: return job/result handle
  QiskitClient-->>User: provide results
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

🐰 I hopped through lines of changelog bright,

New QDMI friends join the release tonight,
Wheels snug and stable, docs all in tow,
A tiny code-hop—off we go! 🥕

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: updating the changelog with the v3.4.0 release. It is concise and directly related to the changeset.
Description check ✅ Passed The description includes a clear summary of changes and completes the checklist. All required sections are present and appropriately filled out, with all items marked as completed.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


📜 Recent review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between be013d4 and 8f6b0bf.

📒 Files selected for processing (1)
  • CHANGELOG.md
🧰 Additional context used
🧠 Learnings (6)
📓 Common learnings
Learnt from: burgholzer
Repo: munich-quantum-toolkit/yaqs PR: 212
File: CHANGELOG.md:12-15
Timestamp: 2025-10-14T14:37:38.047Z
Learning: In the munich-quantum-toolkit/yaqs project, changelog entries follow the template: "- $TITLE ([#$NUMBER]($URL)) ([**AUTHOR**](https://github.com/$AUTHOR))". Issue references should not be included in changelog entries; the PR number is sufficient for traceability.
Learnt from: denialhaag
Repo: munich-quantum-toolkit/core PR: 1360
File: .github/workflows/reusable-mlir-tests.yml:40-43
Timestamp: 2025-12-05T17:45:37.602Z
Learning: In the munich-quantum-toolkit/core repository, patch releases of LLVM dependencies don't require documentation updates, changelog entries, or additional tests beyond what's validated by passing CI checks.
Learnt from: flowerthrower
Repo: munich-quantum-toolkit/core-plugins-catalyst PR: 1
File: CHANGELOG.md:18-18
Timestamp: 2025-12-01T11:00:40.342Z
Learning: In the munich-quantum-toolkit/core-plugins-catalyst repository, the CHANGELOG.md intentionally references the parent MQT Core repository's release notes (https://github.com/munich-quantum-toolkit/core/releases) because the plugin repository is based on work performed in the parent repository.
📚 Learning: 2025-12-05T17:45:37.602Z
Learnt from: denialhaag
Repo: munich-quantum-toolkit/core PR: 1360
File: .github/workflows/reusable-mlir-tests.yml:40-43
Timestamp: 2025-12-05T17:45:37.602Z
Learning: In the munich-quantum-toolkit/core repository, patch releases of LLVM dependencies don't require documentation updates, changelog entries, or additional tests beyond what's validated by passing CI checks.

Applied to files:

  • CHANGELOG.md
📚 Learning: 2025-12-01T11:00:40.342Z
Learnt from: flowerthrower
Repo: munich-quantum-toolkit/core-plugins-catalyst PR: 1
File: CHANGELOG.md:18-18
Timestamp: 2025-12-01T11:00:40.342Z
Learning: In the munich-quantum-toolkit/core-plugins-catalyst repository, the CHANGELOG.md intentionally references the parent MQT Core repository's release notes (https://github.com/munich-quantum-toolkit/core/releases) because the plugin repository is based on work performed in the parent repository.

Applied to files:

  • CHANGELOG.md
📚 Learning: 2025-10-14T14:37:38.047Z
Learnt from: burgholzer
Repo: munich-quantum-toolkit/yaqs PR: 212
File: CHANGELOG.md:12-15
Timestamp: 2025-10-14T14:37:38.047Z
Learning: In the munich-quantum-toolkit/yaqs project, changelog entries follow the template: "- $TITLE ([#$NUMBER]($URL)) ([**AUTHOR**](https://github.com/$AUTHOR))". Issue references should not be included in changelog entries; the PR number is sufficient for traceability.

Applied to files:

  • CHANGELOG.md
📚 Learning: 2026-01-04T21:41:30.252Z
Learnt from: burgholzer
Repo: munich-quantum-toolkit/core PR: 1356
File: cmake/SetupMLIR.cmake:32-33
Timestamp: 2026-01-04T21:41:30.252Z
Learning: In the munich-quantum-toolkit/core repository, the project provides its own pre-built LLVM/MLIR distributions that are compiled with LLVM_ENABLE_RTTI=ON and LLVM_ENABLE_EH=ON. Users are directed to these distributions via the upgrade guide and installation instructions to avoid ABI compatibility issues. The mid-term goal is to eliminate RTTI and exception handling dependencies entirely.

Applied to files:

  • CHANGELOG.md
📚 Learning: 2025-11-04T15:22:19.558Z
Learnt from: marcelwa
Repo: munich-quantum-toolkit/core PR: 1243
File: test/python/qdmi/qiskit/conftest.py:155-157
Timestamp: 2025-11-04T15:22:19.558Z
Learning: The munich-quantum-toolkit/core repository requires Python 3.10 or later, so Python 3.10+ features (such as `zip(..., strict=...)`, pattern matching, etc.) are acceptable and should not be flagged as compatibility issues.

Applied to files:

  • CHANGELOG.md
🪛 LanguageTool
CHANGELOG.md

[typographical] ~20-~20: To join two clauses or introduce examples, consider using an em dash.
Context: ...olzer**], [@denialhaag]) ## [3.4.0] - 2026-01-08 ### Added - ✨ Return device...

(DASH_RULE)

🔇 Additional comments (3)
CHANGELOG.md (3)

20-69: ✅ Release section structure and entry formatting are correct.

The 3.4.0 release section follows the established changelog format with proper emoji usage, PR references, and author attribution consistent with your team's conventions. All subsections (Added, Changed, Fixed, Removed) are well-organized and entries are consistently formatted.


290-291: ✅ Version links correctly updated for 3.4.0 release.

The Unreleased reference has been properly updated to compare v3.4.0...HEAD, and the new 3.4.0 release tag reference has been added with the correct GitHub URL. This maintains proper traceability between versions.


16-18: > Likely an incorrect or invalid review comment.


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.

@burgholzer burgholzer merged commit 5f66420 into main Jan 8, 2026
20 checks passed
@burgholzer burgholzer deleted the update-after-3.4 branch January 8, 2026 22:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants