Skip to content

rename: LinearSolver.{INDIRECT,GPU,DENSE} -> {CPU_INDIRECT,GPU_INDIRECT,CPU_DENSE}#206

Merged
bodono merged 1 commit into
masterfrom
rename/linearsolver-cpu-gpu-prefix
Apr 23, 2026
Merged

rename: LinearSolver.{INDIRECT,GPU,DENSE} -> {CPU_INDIRECT,GPU_INDIRECT,CPU_DENSE}#206
bodono merged 1 commit into
masterfrom
rename/linearsolver-cpu-gpu-prefix

Conversation

@bodono

@bodono bodono commented Apr 23, 2026

Copy link
Copy Markdown
Owner

Summary

  • Disambiguates the LinearSolver enum along two axes: INDIRECTCPU_INDIRECT (location), GPUGPU_INDIRECT (method), DENSECPU_DENSE (location, for consistency / future-proofing against a possible GPU-dense backend).
  • Both the enum member names and the underlying string values are updated to the new scheme.

Breaking change

Any caller using scs.LinearSolver.INDIRECT / .GPU / .DENSE or the string forms "indirect" / "gpu" / "dense" must update. No internal callers of the string form exist; all in-tree enum usages are renamed in this PR.

Test plan

  • All in-tree test references updated (12 test files touched)
  • Full suite green (371 passed, 66 skipped)

🤖 Generated with Claude Code

…CT,CPU_DENSE}

The old names were ambiguous along two axes: INDIRECT didn't say
where the solver runs (CPU), and GPU didn't say what method (it's
the indirect/iterative solver, not a direct one). The new names
make location explicit and disambiguate from CUDSS (GPU direct).

Both the enum member names and the underlying string values move
to the new scheme. No internal users of the string form were found;
if an external caller was passing `linear_solver="indirect"` etc.,
they will now see a ValueError from LinearSolver(...) construction.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@bodono bodono merged commit 7c02915 into master Apr 23, 2026
34 checks passed
@bodono bodono deleted the rename/linearsolver-cpu-gpu-prefix branch April 23, 2026 18:27
bodono added a commit to cvxgrp/scs that referenced this pull request Apr 23, 2026
Companion to bodono/scs-python#206, which renamed
LinearSolver.{INDIRECT,GPU,DENSE} -> {CPU_INDIRECT,GPU_INDIRECT,CPU_DENSE}
to disambiguate location (CPU/GPU) and method (direct/indirect).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
bodono added a commit that referenced this pull request Apr 23, 2026
Follow-up to #206: the enum member list in the README still showed
INDIRECT / GPU / DENSE.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
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