Skip to content

Fix Windows builds of the embedded libdiffpy core - #1

Closed
SYMSCAE wants to merge 2 commits into
mainfrom
win-ci
Closed

SYMSCAE wants to merge 2 commits into
mainfrom
win-ci

Conversation

@SYMSCAE

@SYMSCAE SYMSCAE commented Oct 11, 2026 •

Copy link
Copy Markdown
Owner

Windows wheel builds failed because the embedded libdiffpy sources assumed POSIX APIs and contained declarations incompatible with modern MSVC. Generate compatible headers and native Windows runtime path discovery in the build directory, enable mathematical constants for the core and extension, and explicitly resolve nanobind item handles when restoring calculator pickle tuples.

Runtime tables remain relative to the installed extension, with DIFFPYRUNTIME taking precedence. The pinned libdiffpy revision, archive checksum, source overrides, existing tests, and CI workflows are unchanged.

Validation of the unchanged build/runtime implementation on f03621b:

  • Windows CI: Python 3.12, 3.13, and 3.14 successfully built and installed the wheel, imported the extension, and passed their test runs.
  • Linux wheel build and test runs passed locally and in CI. CI coverage upload failed because Codecov required a token.
  • Repeated Windows adaptation configuration preserved source hashes; incompatible source changes were rejected with a clear diagnostic. Formatting and lint checks passed.
  • macOS was not rerun.

@SYMSCAE SYMSCAE closed this Oct 11, 2026
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