Skip to content

Stabilize CDXML export and prepare Qt-only 0.24.0 - #544

Merged
dhsohn merged 1 commit into
mainfrom
feat/qt-cdxml-release
Oct 4, 2026
Merged

dhsohn merged 1 commit into
mainfrom
feat/qt-cdxml-release

Conversation

@dhsohn

@dhsohn dhsohn commented Oct 4, 2026

Copy link
Copy Markdown
Owner

Motivation

I found that ordinary benzene and multiple bonds could be refused by CDXML export because their stored styles did not match the drawn bonds. The main branch's build configuration also included the experimental browser editor, which is being retained for future Leaf integration.

Changes

  • Export ring and chain double bonds, triples, and wedge/hash bonds from their drawn geometry, preserving graph, charge, direction, and physical scale. Ignore ring records only when they paint nothing; continue refusing unsupported constructs before replacing output.
  • Ship the Qt application and supported CLI in wheel and sdist distributions, including wheels rebuilt from sdist. Exclude the experimental browser modules from the frozen-app spec, preserve the repository sources, and give installed --ui web users a clear explanation.
  • Add independent RDKit chemistry fixtures, package fault-injection checks, and clean-installed CLI checks. Document the supported CDXML subset, limits, Qt-only distribution boundary, and version 0.24.0.

Verification

  • make check on macOS arm64 / Python 3.13.14 without RDKit: 16,977 passed, 428 skipped, 1,036 subtests passed; line coverage 94.39%, branch coverage 86.52%. Includes the four serial Cocoa workflow files. An initial documentation code-fence mismatch was corrected before the full passing rerun.
  • python -m build --no-isolation, python scripts/verify_dist.py dist/*, and python -m twine check dist/*: passed for 0.24.0; the wheel was built from the sdist. A clean environment passed version/help/Qt-help and web-refusal checks, plus the exact CI wheel smoke.
  • Source and final documentation corrections were independently reviewed with no blocking findings. Synthetic CLI exports preserved source bytes and existing destinations; unsupported visible ring fill was refused.
  • RDKit and native platform CI: pending.

Interactive Qt/ChemDraw checks were unavailable in this environment. CDXML import, complete document roundtrips, and ChemDraw visual equivalence are not claimed. Frozen-app spec tests do not replace building and launching a native bundle.

@dhsohn
dhsohn merged commit 9a795a0 into main Oct 4, 2026
6 checks passed
@dhsohn
dhsohn deleted the feat/qt-cdxml-release branch October 4, 2026 14:54
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