Skip to content

deps: add remote extra for paramiko and migrate install docs to uv#686

Merged
FabianHofmann merged 2 commits into
masterfrom
deps/paramiko-optional-extra
May 18, 2026
Merged

deps: add remote extra for paramiko and migrate install docs to uv#686
FabianHofmann merged 2 commits into
masterfrom
deps/paramiko-optional-extra

Conversation

@FBumann
Copy link
Copy Markdown
Collaborator

@FBumann FBumann commented May 18, 2026

Summary

Follow-up on the discussion in #681 about the SSH prerequisites.

  • Add remote = ["paramiko"] to [project.optional-dependencies] (mirrors the oetc extra convention) so the SSH backend can be installed via linopy[remote] instead of telling users to pip install paramiko separately.
  • Replace pip install paramiko in examples/solve-on-remote.ipynb with uv pip install "linopy[remote]".
  • Migrate the remaining pip install snippets in README.md, doc/prerequisites.rst, doc/contributing.rst, and doc/gpu-acceleration.rst to their uv pip install / uv sync --extra ... equivalents, per FabianHofmann's suggestion in docs: reorganize toctree into basic→advanced sections, rewrite user-guide landing #681 that "pip install ... calls should be replaced with proper uv commands".

Kept the conda install -c conda-forge ... alternatives untouched since those are real alternative install paths, not pip/uv variants.

The dev extra is intentionally left as-is in this PR — paramiko and types-paramiko still ship there so the existing developer workflow does not change. Happy to dedupe (drop paramiko from dev and rely on --extra remote) as a follow-up if preferred.

🤖 Generated with Claude Code

Comment

I migrated everything from pip to uv pip .... DO you agree?

@FBumann FBumann force-pushed the deps/paramiko-optional-extra branch from f6f511b to d8eef20 Compare May 18, 2026 10:48
- Add `remote = ["paramiko"]` to `[project.optional-dependencies]` so the
  SSH backend can be installed without dragging it into the base install
  (follows the `oetc` extra convention).
- Replace `pip install paramiko` in `solve-on-remote.ipynb` with
  `uv pip install "linopy[remote]"`.
- Migrate the remaining `pip install` snippets in README.md and the
  Sphinx docs (`prerequisites.rst`, `contributing.rst`,
  `gpu-acceleration.rst`) to their `uv pip install` / `uv sync --extra`
  equivalents.

Addresses follow-up requested in PR #681.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@FBumann FBumann force-pushed the deps/paramiko-optional-extra branch from d8eef20 to 7948e5b Compare May 18, 2026 10:53
@FBumann FBumann requested a review from FabianHofmann May 18, 2026 10:54
Copy link
Copy Markdown
Collaborator

@FabianHofmann FabianHofmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wonderful. while we are on it there are two other items we should address in this pr

Comment thread doc/contributing.rst Outdated
and run it via `pre-commit <https://pre-commit.com/index.html>`_:

1. Installation ``conda install -c conda-forge pre-commit`` or ``pip install pre-commit``
1. Installation ``conda install -c conda-forge pre-commit`` or ``uv pip install pre-commit``
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you add pre-commit to the dev extension, then we don't need this step anymore

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added the setup step instead

Comment thread doc/prerequisites.rst Outdated
.. code:: bash

pip install highspy
uv pip install highspy
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

highspy is already in dev and solvers, so no need for this step anymore

Both are already pulled in by the relevant extras (`pre-commit` via
`dev`, `highspy` via `solvers` and `dev`), so the standalone install
snippets only add noise.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@FabianHofmann FabianHofmann merged commit c23ebfe into master May 18, 2026
24 checks passed
@FabianHofmann FabianHofmann deleted the deps/paramiko-optional-extra branch May 18, 2026 14:11
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.

2 participants