update qfit

This commit is contained in:
2026-09-01 11:34:07 +02:00
parent 6093b993d0
commit 1fbb6c1c97
2 changed files with 9 additions and 2 deletions
+4
View File
@@ -21,6 +21,10 @@ handles:
- MIQP solvers are only listed in upstream's conda `environment.yml`,
not in `install_requires``cvxopt` and `cplex` are pip-installed
explicitly.
- `logtools.py` imports `pkg_resources` at runtime but upstream never
declares setuptools (conda/virtualenv always shipped it, uv venvs
don't) — and setuptools ≥81 removed `pkg_resources` entirely →
`setuptools<81` is pip-installed explicitly.
**CPLEX caveat**: the pip `cplex` wheel is the IBM Community Edition,
limited to 1000 variables/constraints. Large residues/ligands may hit
+5 -2
View File
@@ -25,9 +25,12 @@ pbuild::install() {
export CC=gcc
export SETUPTOOLS_SCM_PRETEND_VERSION="${V_PKG}"
# cplex is the IBM Community Edition pip wheel (problem-size limited);
# full CPLEX needs an academic license, see README
# full CPLEX needs an academic license, see README.
# setuptools<81: qfit's logtools.py imports pkg_resources at RUNTIME; uv venvs
# don't ship setuptools, and setuptools >=81 removed pkg_resources entirely
# (verified: the 84.0.0 wheel has zero pkg_resources files, 80.9.0 has them)
"$UV" pip install --python "$PREFIX/venv/bin/python" \
cvxopt cplex "$SRC_DIR" || \
'setuptools<81' cvxopt cplex "$SRC_DIR" || \
std::die 42 "qfit install failed - check build log above"
[[ -x "$PREFIX/venv/bin/qfit_protein" ]] || std::die 42 "qfit_protein missing from venv"
}