Skip to content

feat: allow loop-interpolation 0.2 and add the native extra - #381

Merged
lachlangrose merged 1 commit into
masterfrom
feat/native-solver-deps
Nov 1, 2026
Merged

lachlangrose merged 1 commit into
masterfrom
feat/native-solver-deps

Conversation

@lachlangrose

Copy link
Copy Markdown
Member

Why

LoopStructural requires loop-common<0.1.0 and loop-interpolation<0.1.0. This repository already releases loop-common 0.1.0 and loop-interpolation 0.2.0, and only loop-interpolation 0.2.0 has solver='native' (the Rust core, loop-interpolation-core). So pip cannot install the native solver next to LoopStructural. The QGIS plugin needs it.

Changes

  • Require loop-common>=0.1.0,<0.2.0 and loop-interpolation>=0.2.0,<0.3.0.
  • Add the extra loopstructural[native], which installs loop-interpolation[native].
  • Update uv.lock.

The commit is a feat:, so release-please makes 1.11.0.

Checks

In a clean environment with the packages from PyPI (pip install .[native], Windows, Python 3.14):

  • One foliation with 50 000 elements: cg 10.6 s, native 2.5 s. The largest difference is 0.1 % of the value range.
  • tests/unit: 700 passed, 7 failed. The 7 failures are in tests/unit/interpolator/test_2d_p1_p2_support.py, and they come from NumPy 2.5: np.cross no longer accepts 2D vectors. With NumPy 2.4.6 all 14 tests of that file pass. That is a separate problem from this PR.

🤖 Generated with Claude Code

LoopStructural required loop-common<0.1.0 and loop-interpolation<0.1.0, but
this repository releases loop-common 0.1.0 and loop-interpolation 0.2.0.
Only loop-interpolation 0.2.0 has solver='native' (the Rust core), so pip
could not install the native solver next to LoopStructural.

- Require loop-common>=0.1.0,<0.2.0 and loop-interpolation>=0.2.0,<0.3.0.
- Add the extra loopstructural[native] (loop-interpolation[native]).
@lachlangrose
lachlangrose merged commit 8996e19 into master Nov 1, 2026
5 checks passed
@lachlangrose
lachlangrose deleted the feat/native-solver-deps branch November 1, 2026 04:31
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