Skip to content

Verify green after full ecosystem rollout - #75

Merged
ryanmrichard merged 6 commits into
masterfrom
verify_ecosystem_green_2
Sep 18, 2026
Merged

ryanmrichard merged 6 commits into
masterfrom
verify_ecosystem_green_2

Conversation

@ryanmrichard

Copy link
Copy Markdown
Member

Summary

  • Verify green after ecosystem rollout #74 re-ran test_cmake_build against the fixed nwchemex-scf 0.0.61
    but still failed with the same "link interface of nwx::simde contains
    nwx::chemist but the target was not found" error.
  • Root cause, round 2: pip install nwchemex also transitively installs
    nwchemex-integrals, nwchemex-chemcache, and nwchemex-nux --
    three more packages (never part of the original 6-repo rebuild list)
    that each bundled their own stale, pre-rollout copy of
    lib/cmake/simde (and other transitive deps'). Any one of them
    installing after nwchemex-simde clobbers the correct config with
    the old broken stub.
  • All three have been rebuilt against nwxcmake 0.2.3 and verified
    correct: Rebuild against nwxcmake 0.2.3 Integrals#174 (0.0.68), Rebuild against nwxcmake 0.2.3 ChemCache#101
    (1.1.25), Rebuild against nwxcmake 0.2.3 NUX#15 (0.0.22) -- each now declares
    find_dependency(chemist)/find_dependency(pluginplay) instead of
    the bare stub.
  • Empty commit to re-run test_cmake_build and confirm the collision
    is finally gone.

Test plan

  • test_cmake_build green on all four legs (Linux+macOS x clang-18+gcc-14)

🤖 Generated with Claude Code

SCF#74 re-ran test_cmake_build against the newly-fixed nwchemex-scf
0.0.61, but still failed with the same "nwx::simde link interface
contains nwx::chemist but the target was not found" error. Diagnosis:
`pip install nwchemex` also transitively installs nwchemex-integrals,
nwchemex-chemcache, and nwchemex-nux -- three more packages, never
part of the original 6-repo rebuild list, that each bundle their own
stale pre-rollout lib/cmake/simde (and other transitive deps') Config
files. Any one of them installing after nwchemex-simde clobbers the
correct config with the old broken one.

All three have now been rebuilt against nwxcmake 0.2.3 and verified
correct (NWChemEx/Integrals#174, NWChemEx/ChemCache#101, NWChemEx/NUX#15
-- nwchemex-integrals 0.0.68, nwchemex-chemcache 1.1.25,
nwchemex-nux 0.0.22 all confirmed to declare find_dependency(chemist)
and find_dependency(pluginplay) instead of the bare stub). This empty
commit re-runs test_cmake_build to confirm the collision is finally
gone.
The previous run raced PyPI: its jobs started ~70s after 0.2.4 published,
before the index propagated, so they installed 0.2.3 and hit the same
pybind11 duplicate-target error NWXCMake#89 fixes. pip resolves 0.2.4
now, so this run gets the fix.
NWXCMake#90 adds Development.Embed/Python::Python to test executables
built by catch2_tests_from_dir, gated on BUILD_PYBIND11_BINDINGS. That
supplies the libpython these C++ test exes were missing: ~622 undefined
Py* at link on Linux, and on macOS a clean link that died at startup on
"dyld: symbol not found in flat namespace '_PyBaseObject_Type'".

Confirmed pip resolves 0.2.5 before pushing this time -- the previous
re-trigger raced PyPI's index and silently reused the old version.
ryanmrichard and others added 3 commits September 16, 2026 13:37
Smoke-tests the new macos-14/appleclang dev_matrix leg, which no CI job in
the org has run yet. The Linux legs are still expected to fail until the
ecosystem wheels are rebuilt on manylinux_2_28.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
All 11 ecosystem packages have been republished from manylinux_2_28 with the
new libstdc++ ABI, and with NWChemEx/.github@620e081 so the macOS wheels no
longer vendor a second OpenMPI.

Verified on the published artifacts: the three symbols this leg could not
resolve are now defined with new-ABI manglings --
  _ZN3wtf4rtti7detail_10TypeHolder11m_registry_B5cxx11E
  _ZNK10pluginplay13ModuleManager2atERKNSt7__cxx1112basic_string...
  _ZN10pluginplay7utility13generate_uuidB5cxx11Ev

The nwchemex metapackage itself could not be republished (PyPI rejects the
now-compiled wheel at 124-132 MB against a 100 MB project limit, a failure
predating this work), but 0.0.44 on PyPI is pure Python with no compiled
artifacts, so it carries no ABI and its >= pins resolve the rebuilt wheels.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
All ecosystem packages have now been rebuilt with:
  - manylinux_2_28 / new libstdc++ ABI
  - no vendored OpenMPI in the macOS wheels (.github@620e081)
  - pybind11 3.1.0, internals v12, matching what a local build resolves
  - the TensorWrapper concept-mangling fix (TensorWrapper#260)

Verified on the published wheels: weaklytypedfloat 0.0.33, parallelzone
0.1.46, pluginplay 1.0.67, tensorwrapper 0.0.115, chemist 1.3.52, simde
0.0.83, integrals 0.0.70, chemcache 1.1.27, nux 0.0.24, scf 0.0.63 all
carry __pybind11_internals_v12.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@ryanmrichard
ryanmrichard merged commit 10e48a7 into master Sep 18, 2026
11 checks passed
@ryanmrichard
ryanmrichard deleted the verify_ecosystem_green_2 branch September 18, 2026 17:14
@github-actions

Copy link
Copy Markdown
Contributor

🚀 [bumpr] Bumped!
New version:v0.0.64
Changes:v0.0.63...v0.0.64

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