Migrate conda to pip#21
Open
youngdashu wants to merge 8 commits into
Open
Conversation
- Drop unused conda-only pdbfixer and the erroneous mamba (conda manager) deps - Move torch/esm/transformers into optional [embeddings] extra (used only by the embedding path, which already imports lazily) - Move pytest/pytest-order into [test]; add [dev] aggregate extra - Replace bs4 with beautifulsoup4; drop redundant bio (biopython kept) - Add PyPI metadata (description, license, authors, classifiers, urls) - Guard embedder lazy imports with a clear 'pip install FRIdata[embeddings]' hint
…er-agnostic - setup_env.sh now creates a python -m venv and pip-installs FRIdata[dev] (editable), then calls install_pytorch.sh for a CUDA-matched torch build - install_pytorch.sh accepts a PYTHON env var to target a specific interpreter and no longer requires an active conda environment
- initialize_slurm.sh creates a python -m venv, pip-installs FRIdata, and uses install_pytorch.sh for a CUDA-matched torch build (no GROUP_DIR/.conda needed) - common_slurm.sh loads a Python module and activates the venv (VENV_PATH, default $DEEPFRI_PATH/.venv) instead of conda - Module name candidate lists flagged as cluster-specific for easy adjustment
- actions/setup-python with a 3.10/3.11/3.12 matrix and pip caching - Install CPU torch from the PyTorch index first, then FRIdata[embeddings,test] - Drops the entire micromamba/libmamba caching dance (~60 lines -> ~15)
- MANIFEST.in now ships only LICENSE/README/example config/scripts and prunes tests, docs, reports and large data files (*.h5/*.cif/*.idx) from the sdist (was 'global-include *', which bundled the whole repo) - Remove committed-on-disk FRIdata.egg-info (stale requires.txt) and __pycache__ - Ignore .DS_Store
- README install section rewritten around python -m venv + pip and the [embeddings] extra; PyPI install instructions added; conda/mamba/libmamba troubleshooting removed - HPC prerequisites updated (Python module + VENV_PATH instead of miniconda) - demo.ipynb cells activate .venv instead of a conda environment
- Delete fridata_env_conda.yml and requirements-fridata.txt (deps now live solely in pyproject.toml) - Add .github/workflows/publish.yml: build sdist+wheel, twine check, and publish to PyPI via OIDC Trusted Publishing on GitHub Release
Core-only checkouts (pip install -e .[test] without [embeddings]) previously failed the entire pytest run at collection time on a top-level 'import torch'. Guard with pytest.importorskip so the rest of the suite still runs.
5698eb3 to
501d67f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.