bindsight 0.3.5__tar.gz → 0.3.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/ISSUE_TEMPLATE/bug_report.yml +2 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/workflows/docs.yml +3 -2
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/workflows/release-artifacts.yml +15 -10
- {bindsight-0.3.5 → bindsight-0.3.6}/CHANGELOG.md +78 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/CITATION.cff +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/PKG-INFO +42 -42
- {bindsight-0.3.5 → bindsight-0.3.6}/README.md +41 -41
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/templates/try.html.j2 +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/templates/your_data.html.j2 +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/local_docker.py +7 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/modal_runner.py +5 -5
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/notebook_content.py +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/codemeta.json +2 -2
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/how-to-use.md +8 -2
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/index.md +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/positioning.md +2 -2
- {bindsight-0.3.5 → bindsight-0.3.6}/paper/README.md +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/paper/biorxiv/manuscript.tex +2 -2
- {bindsight-0.3.5 → bindsight-0.3.6}/paper/paper.bib +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/paper/paper.md +3 -3
- {bindsight-0.3.5 → bindsight-0.3.6}/pyproject.toml +1 -1
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/README.md +9 -0
- bindsight-0.3.6/scripts/pypi_readme.py +116 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_packaging_pins.py +39 -0
- bindsight-0.3.6/tests/test_pypi_readme.py +109 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_web_ui.py +84 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.dockerignore +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.editorconfig +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.gitattributes +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/CODEOWNERS +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/ISSUE_TEMPLATE/reproducibility.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/dependabot.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/workflows/ci.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/workflows/docker.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/workflows/draft-pdf.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.github/workflows/manuscript-pdf.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/.gitignore +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/ARCHITECTURE.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/CODE_OF_CONDUCT.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/CONTRIBUTING.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/COPYRIGHT +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/Dockerfile +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/LICENSE +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/LICENSING.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/SECURITY.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/SUPPORT.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/Snakefile +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/PROVENANCE.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/RUN_ON_KAGGLE.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/binders.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/binders.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/build_eval_set.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/CALIBRATION.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/PRECISION.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/RESULTS.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/analyse.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/prepare_decoy_target.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/stage_scrambles.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/submit_calibration.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/calibration/target/Q96NY8_ig_v.pdb +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/DESIGNER_BENCHMARK.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/RESULTS.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/RUN_FREE_GPU.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_0_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_0_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_0_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_0_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_1_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_1_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_1_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_1_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_2_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_2_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_2_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_2_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_3_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_3_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_3_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_3_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_4_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_4_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_4_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_4_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_5_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_5_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_5_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_5_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_6_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_6_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_6_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_6_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_7_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_7_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_7_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_7_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_8_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_8_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_8_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_8_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_9_seq0.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_9_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_9_seq1.fasta +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/P04626_binder_9_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/developability.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/embedding_coords.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/embedding_space.png +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/binders/metrics.jsonl +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/embed_binders.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/prepare_erbb2_target.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/results.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/score_developability.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/score_run.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/designer_benchmark/target/P04626_domain_IV.pdb +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/gpu_capacity/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/gpu_capacity/t4-ca9-377aa.log +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/known.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/provenance_join/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/provenance_join/SHA256SUMS +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/provenance_join/ro-crate-metadata.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/provenance_join/run_manifest.jsonld +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/run_designer_benchmark.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/run_study.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/sources.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/study/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/study/RESULTS.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/study/figures/outcome_classes.png +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/study/figures/surfaced_ranks.png +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/study/results.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/benchmarks/study/run_log.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/core.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/defaults.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/designer_bench.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/outcomes.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/panel.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/rediscovery.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/statistics.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/study.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/study_figures.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/benchmark/study_report.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/cli.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/config.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/cost.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/deg/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/deg/pydeseq2_runner.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/_common.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/bindcraft.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/boltzgen.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/developability.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/embeddings.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/prescreen.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/protocol.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/design/rfdiff_mpnn.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/epitopes/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/epitopes/surface_bind.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/export/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/export/ro_crate.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/io/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/io/cbioportal.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/io/gdc.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/io/paths.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/pipelines/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/pipelines/caveats.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/pipelines/discover.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/pipelines/full_run.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/plugins.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/provenance/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/provenance/append.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/provenance/fragments.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/provenance/manifest.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/rank/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/rank/scoring.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/format.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/html.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/showcase.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/templates/report.css +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/templates/report.html.j2 +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/theme.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/app.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/static/binder_viewer.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/static/bindsight.css +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/static/charts.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/static/vendor/3Dmol-min.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/static/vendor/3Dmol.LICENSE +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/static/your_data_check.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/templates/base.html.j2 +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/templates/evidence.html.j2 +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/templates/overview.html.j2 +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/report/web/templates/runs.html.j2 +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/colab.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/job_exec.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/kaggle.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/kaggle_kernel.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/mock.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/notebook.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/protocol.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/source_wheel.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/runners/tools.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/structures/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/structures/alphafolddb.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/structures/plddt.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/structures/topology.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/surfaceome/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/surfaceome/data/surfaceome_extended.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/surfaceome/data/surfy_offline.txt +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/surfaceome/data/surfy_v1.ensembl.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/surfaceome/data/surfy_v1.uniprot.txt +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/surfaceome/surfy.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/targets/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/targets/ensembl_uniprot.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/targets/gtex.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/targets/open_targets.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/validate/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/validate/af2_ig.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/validate/boltz2.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/validate/chai1r.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/bindsight/validate/protocol.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/data/surface_bind/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/favicon.svg +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/figures/outcome_classes.png +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/figures/surfaced_ranks.png +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/js/binder_viewer.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/js/your_data_check.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/logo.svg +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/og-image.png +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_0_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_0_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_1_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_1_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_2_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_2_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_3_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_3_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_4_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_4_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_5_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_5_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_6_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_6_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_7_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_7_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_8_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_8_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_9_seq0_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/structures/P04626_binder_9_seq1_complex.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/vendor/3Dmol-min.js +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/assets/vendor/3Dmol.LICENSE +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/colab-design-howto.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/glossary.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/results.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/robots.txt +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/stylesheets/extra.css +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/try-your-data.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/use-cases.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/docs/what-is-bindsight.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/envs/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/envs/constraints.txt +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/envs/discover.yaml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/examples/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/examples/benchmark_held_out.yaml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/examples/demo/config.yaml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/examples/provenance_join.yaml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/examples/tcga_luad.yaml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/mkdocs.yml +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/overrides/main.html +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/paper/LICENSE +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/paper/validation/manuscript.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/requirements.txt +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/assemble_manifest.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/build_docs_results.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/build_surfaceome_extension.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/build_surfy_gene_map.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/build_surfy_list.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/check_pinned_environment.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/make_og_image.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/run_deg.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/run_design.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/run_discover.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/run_rank.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/run_report.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/scripts/run_validate.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/README.md +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/__init__.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/conftest.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/embeddings/binders_esm2_t6.npy +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/gtex/gtex_median_subset.gct +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/plddt/AF-TEST1-F1-model_v6.cif +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/surface_bind/.commit_sha +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/surface_bind/sites/P04626/sites.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/tiny_counts.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/tiny_design.tsv +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/fixtures/topology/P04626.topology.json +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_alphafolddb_client.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_assemble_manifest.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_author_metadata_agrees.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_backend_capability.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_bare_install.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_benchmark.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_benchmark_indication.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_benchmark_outcomes.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_benchmark_panel.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_benchmark_statistics.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_benchmark_study.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cache_key_scope.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_calibration_analysis.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_calibration_staging.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_caveats.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cbioportal.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cheap_profile.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_check_pinned_environment.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cli.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cli_demo_and_report.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cli_doctor.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_config.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_contrast.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_correctness_regressions.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_cost.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_counted_self_claims.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_css_cascade.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_deg_input_validation.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_deg_runner.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_demo_e2e.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_design_target_chain.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_designer_bench.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_designers_validators.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_developability.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_docs_binder_viewer.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_docs_claims.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_docs_results.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_docs_results_generator.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_documented_commands.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_embeddings.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_empty_is_not_absent.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_ensembl_uniprot.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_enumerations_match_their_source.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_eval_set.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_export_ro_crate.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_failure_taxonomy.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_gdc.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_gpu_capacity_claim.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_gtex.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_job_exec.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_job_exec_retention.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_join_end_to_end.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_joss_paper_sections.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_kaggle_kernel.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_licensing_review.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_manifest.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_manuscript_pdf_workflow.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_manuscript_typesets.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_no_hosted_space.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_no_streamlit.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_no_zenodo.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_non_cancer_cohort.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_notebook_helpers.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_open_targets_client.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_package_imports.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_pipelines_discover.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_pipelines_full_run.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_plddt.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_provenance_join_artifact.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_published_numbers_match_artifacts.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_rank.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_rediscovery.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_remote_job_durability.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_report_failed_run.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_report_html.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_report_lazy_import.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_requirements_mirror.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_run_self_contained.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_runners_colab.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_runners_mock.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_runners_modal_local.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_runners_tools.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_showcase.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_silent_success.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_snakemake_dag.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_study_nulls.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_surface_bind.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_surfy_offline.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_surfy_vendored.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_target_chain_artifact.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_third_party_plugins.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_topology.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_topology_gpi.py +0 -0
- {bindsight-0.3.5 → bindsight-0.3.6}/tests/test_untested_ready_rows.py +0 -0
|
@@ -41,7 +41,7 @@ body:
|
|
|
41
41
|
attributes:
|
|
42
42
|
label: Version
|
|
43
43
|
description: "Output of `bindsight --version`."
|
|
44
|
-
placeholder: "0.3.
|
|
44
|
+
placeholder: "0.3.6"
|
|
45
45
|
validations:
|
|
46
46
|
required: true
|
|
47
47
|
|
|
@@ -59,6 +59,7 @@ body:
|
|
|
59
59
|
attributes:
|
|
60
60
|
label: How you installed it
|
|
61
61
|
options:
|
|
62
|
+
- "pip install bindsight (PyPI)"
|
|
62
63
|
- "git clone + pip install -e"
|
|
63
64
|
- "conda/mamba from envs/discover.yaml"
|
|
64
65
|
- "Docker"
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
name: Docs
|
|
2
2
|
|
|
3
|
-
# Build the mkdocs-material site and publish it to GitHub Pages.
|
|
4
|
-
#
|
|
3
|
+
# Build the mkdocs-material site and publish it to GitHub Pages. Pages is
|
|
4
|
+
# served from GitHub Actions (Settings → Pages → Source: "GitHub Actions"),
|
|
5
|
+
# which is what lets this deploy without a gh-pages branch.
|
|
5
6
|
|
|
6
7
|
on:
|
|
7
8
|
push:
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
name: Release artifacts
|
|
2
2
|
|
|
3
3
|
# Attach a wheel, an sdist and their SHA-256 checksums to every published
|
|
4
|
-
# release, and
|
|
5
|
-
# artifacts to PyPI.
|
|
4
|
+
# release, and upload the same two files to PyPI.
|
|
6
5
|
#
|
|
7
6
|
# The attach job always runs, so a release is installable without PyPI:
|
|
8
7
|
# pip install https://github.com/mikhaeelatefrizk/bindsight/releases/download/<tag>/bindsight-<version>-py3-none-any.whl
|
|
9
8
|
#
|
|
10
|
-
# The PyPI job
|
|
11
|
-
#
|
|
12
|
-
#
|
|
13
|
-
#
|
|
14
|
-
# `pypi
|
|
9
|
+
# The PyPI job runs when the `PYPI_TRUSTED_PUBLISHING` repository variable is
|
|
10
|
+
# `true` and the `pypi` environment exists -- both since 0.3.5, the first
|
|
11
|
+
# release published there. The project is registered on PyPI as a trusted
|
|
12
|
+
# publisher of this repository, workflow `release-artifacts.yml`, environment
|
|
13
|
+
# `pypi`, so the upload is authorised by OIDC and no API token is ever stored
|
|
14
|
+
# in this repository. Without the variable the job is skipped, not failed.
|
|
15
15
|
|
|
16
16
|
on:
|
|
17
17
|
release:
|
|
@@ -31,6 +31,11 @@ jobs:
|
|
|
31
31
|
with:
|
|
32
32
|
python-version: "3.12"
|
|
33
33
|
- run: python -m pip install --quiet build twine
|
|
34
|
+
- name: Point the README's relative links at this tag for PyPI
|
|
35
|
+
# PyPI renders the long description with no base URL, so every
|
|
36
|
+
# relative link in README.md is dead there. The checkout is rewritten
|
|
37
|
+
# (never committed) so the sdist and wheel carry absolute links.
|
|
38
|
+
run: python scripts/pypi_readme.py --write --ref "${{ github.event.release.tag_name || github.ref_name }}"
|
|
34
39
|
- run: python -m build
|
|
35
40
|
- name: Check metadata
|
|
36
41
|
run: python -m twine check dist/*
|
|
@@ -82,7 +87,7 @@ jobs:
|
|
|
82
87
|
# a statement of intent; a branch is not.
|
|
83
88
|
#
|
|
84
89
|
# This SHA is what `release/v1` points at today and what the `v1.14.2`
|
|
85
|
-
# tag dereferences to, so pinning
|
|
86
|
-
# until `vars.PYPI_TRUSTED_PUBLISHING`
|
|
87
|
-
# cheapest possible moment.
|
|
90
|
+
# tag dereferences to, so pinning changed nothing at the time. The job
|
|
91
|
+
# was dormant until `vars.PYPI_TRUSTED_PUBLISHING` was set for 0.3.5,
|
|
92
|
+
# which made that the cheapest possible moment.
|
|
88
93
|
- uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2
|
|
@@ -6,6 +6,84 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and
|
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
+
## [0.3.6] - 2026-09-20
|
|
10
|
+
|
|
11
|
+
0.3.5 published this project to PyPI for the first time, and PyPI renders a
|
|
12
|
+
package's long description with no base URL. Every relative link in
|
|
13
|
+
`README.md` is therefore dead on that project page, and PyPI does not let a
|
|
14
|
+
description be edited after upload. The rewrite that fixes it landed on `main`
|
|
15
|
+
an hour after the tag, so only a release can carry it to the page a reader
|
|
16
|
+
actually lands on. That is what this one is for.
|
|
17
|
+
|
|
18
|
+
### Fixed — the local GPU runner pulled an image nothing publishes
|
|
19
|
+
|
|
20
|
+
`LocalDockerRunner` defaulted to `ghcr.io/mikhaeelatefrizk/bindsight:dev`.
|
|
21
|
+
No workflow has ever pushed a `:dev` tag: `docker.yml` publishes `latest`,
|
|
22
|
+
one tag per commit SHA, and one per release. `docs/how-to-use.md` lists
|
|
23
|
+
`local_docker` beside `modal` and `kaggle` as a backend a reader can pick,
|
|
24
|
+
so following the documentation into Docker mode ended at a pull that could
|
|
25
|
+
not succeed — and had never been able to.
|
|
26
|
+
|
|
27
|
+
It defaults to `:latest` now, which is the only tag always published. A
|
|
28
|
+
moving tag is safe here in a way it is not for a CI action: the image carries
|
|
29
|
+
its own bindsight and runs it, and `pipelines.full_run._container_ref`
|
|
30
|
+
records the resolved *digest* in the manifest rather than the tag, for exactly
|
|
31
|
+
this reason — "a manifest must not claim an image identity it could not
|
|
32
|
+
verify, and a tag is not one". The published tags are now read out of the
|
|
33
|
+
workflow by a test rather than repeated in one, so renaming one fails loudly.
|
|
34
|
+
|
|
35
|
+
### Fixed — two headings that closed a tag they did not open
|
|
36
|
+
|
|
37
|
+
`try.html.j2` and `your_data.html.j2` opened `<h2 class="card__title">` and
|
|
38
|
+
closed `</h3>`. The `h2` was itself a fix: both pages had gone from `<h1>`
|
|
39
|
+
straight to `<h3>`, which tells a screen reader a section was skipped, and the
|
|
40
|
+
level had been chosen by what the class made it look like rather than by where
|
|
41
|
+
it sat. The repair changed the opening tag and left the closing one, which
|
|
42
|
+
every browser silently puts right -- so the rendered document was correct, the
|
|
43
|
+
markup was not, and nothing failed either way.
|
|
44
|
+
|
|
45
|
+
Several modules already parse these templates: for inline scripts, for
|
|
46
|
+
colours, for chart specifications. None looked at heading structure, which is
|
|
47
|
+
why the skip got in and why the mismatch that replaced it got in too. Two
|
|
48
|
+
rules now do, over every `.j2` under `bindsight/report/` found by globbing
|
|
49
|
+
rather than by a list: a heading closes the tag it opened, and no page jumps a
|
|
50
|
+
level. Shown red three ways -- the closing tag drifted back, the title demoted
|
|
51
|
+
to recreate the original skip, and the glob pointed at an empty directory to
|
|
52
|
+
prove the sweep is reading anything at all.
|
|
53
|
+
|
|
54
|
+
### Changed — installed from PyPI
|
|
55
|
+
|
|
56
|
+
0.3.5 is the first release published to PyPI. `release-artifacts.yml`'s `pypi`
|
|
57
|
+
job ran on the `release: published` event under trusted publishing, and the
|
|
58
|
+
two files it uploaded are the wheel and sdist attached to the release: PyPI's
|
|
59
|
+
SHA-256 digests equal the release's `SHA256SUMS`. The install instructions
|
|
60
|
+
say `pip install` now, with the checkout form kept for development. The
|
|
61
|
+
runners that install bindsight into a remote image or a generated notebook
|
|
62
|
+
keep installing from this repository, so a remote runs the caller's checkout
|
|
63
|
+
rather than the last published release; their comments say that instead of
|
|
64
|
+
"not on PyPI".
|
|
65
|
+
|
|
66
|
+
### Fixed — what a thirteen-way visitor sweep found
|
|
67
|
+
|
|
68
|
+
Thirteen readers went through the tree, the release page, PyPI, the container
|
|
69
|
+
registry and the documentation site as a visiting department head would, with
|
|
70
|
+
two skeptics refuting each finding. Four stood. PyPI renders a package's long
|
|
71
|
+
description with no base URL, so all 65 relative links in `README.md` are
|
|
72
|
+
dead on the 0.3.5 project page; `scripts/pypi_readme.py` now points them at
|
|
73
|
+
the release tag on GitHub before `release-artifacts.yml` builds the wheel and
|
|
74
|
+
sdist, the tree's README keeps its relative links so GitHub renders them, and
|
|
75
|
+
`tests/test_pypi_readme.py` holds both halves and the step order. The 0.3.5
|
|
76
|
+
page itself cannot be re-rendered: PyPI does not let a description be edited
|
|
77
|
+
after upload. `docs.yml` said Pages had yet to be enabled, three months after
|
|
78
|
+
it was. `paper.md` names Modal and now cites it; the 0.3.5 entry said the
|
|
79
|
+
`Modal` bibliography entry stayed uncited on purpose, and this reverses that.
|
|
80
|
+
And that entry omitted one change the release carried: `bindsight/io/gdc.py`'s
|
|
81
|
+
docstring pointed at a TCGA publication-guidelines page that no longer
|
|
82
|
+
exists, and 14d2bf1 replaced it with the current one. A PyPI badge joins the
|
|
83
|
+
README's badge row.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
9
87
|
## [0.3.5] - 2026-09-20
|
|
10
88
|
|
|
11
89
|
0.3.4 is the current release, and its web interface renders every page with
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: bindsight
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.6
|
|
4
4
|
Summary: A reproducible bridge from RNA-seq to de novo protein binder design, with end-to-end provenance.
|
|
5
5
|
Project-URL: Homepage, https://mikhaeelatefrizk.github.io/bindsight/
|
|
6
6
|
Project-URL: Documentation, https://mikhaeelatefrizk.github.io/bindsight/
|
|
@@ -94,7 +94,8 @@ Description-Content-Type: text/markdown
|
|
|
94
94
|
> it came from.
|
|
95
95
|
|
|
96
96
|
[](https://github.com/mikhaeelatefrizk/bindsight/actions/workflows/ci.yml)
|
|
97
|
-
[](https://pypi.org/project/bindsight/)
|
|
98
|
+
[](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSE)
|
|
98
99
|
[](https://www.python.org/downloads/)
|
|
99
100
|
[](https://snakemake.github.io/)
|
|
100
101
|
|
|
@@ -115,15 +116,15 @@ an account, or a GPU to read.
|
|
|
115
116
|
| **Run it in five minutes** | [Install](#install), then `bindsight demo` |
|
|
116
117
|
| **See what it has and has not shown** | [What the evidence says](#what-the-evidence-says) |
|
|
117
118
|
| **Reproduce a published number** | [Reproducing the results](#reproducing-the-results) |
|
|
118
|
-
| **Understand how it works** | [ARCHITECTURE.md](ARCHITECTURE.md) |
|
|
119
|
-
| **Read the study** | [`benchmarks/study/`](benchmarks/study
|
|
120
|
-
| **Read the control that withdrew a headline** | [`benchmarks/calibration/`](benchmarks/calibration
|
|
121
|
-
| **See the provenance chain, run end to end** | [`benchmarks/provenance_join/`](benchmarks/provenance_join
|
|
119
|
+
| **Understand how it works** | [ARCHITECTURE.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/ARCHITECTURE.md) |
|
|
120
|
+
| **Read the study** | [`benchmarks/study/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/study) · [write-up](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/paper/validation/manuscript.md) |
|
|
121
|
+
| **Read the control that withdrew a headline** | [`benchmarks/calibration/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/calibration) |
|
|
122
|
+
| **See the provenance chain, run end to end** | [`benchmarks/provenance_join/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/provenance_join) |
|
|
122
123
|
| **Find your way around the code** | [Repository map](#repository-map) |
|
|
123
124
|
| **Use your own data** | [Scope — what it accepts](#scope--what-it-accepts) |
|
|
124
|
-
| **Design binders on a free GPU** | [`RUN_FREE_GPU.md`](benchmarks/designer_benchmark/RUN_FREE_GPU.md) |
|
|
125
|
-
| **Look up a term** (PROV-O, RO-Crate, ipTM, PAE-int…) | [Glossary](docs/glossary.md) |
|
|
126
|
-
| **Contribute** | [CONTRIBUTING.md](CONTRIBUTING.md) |
|
|
125
|
+
| **Design binders on a free GPU** | [`RUN_FREE_GPU.md`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/benchmarks/designer_benchmark/RUN_FREE_GPU.md) |
|
|
126
|
+
| **Look up a term** (PROV-O, RO-Crate, ipTM, PAE-int…) | [Glossary](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/docs/glossary.md) |
|
|
127
|
+
| **Contribute** | [CONTRIBUTING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CONTRIBUTING.md) |
|
|
127
128
|
| **Cite it** | [Citation](#citation) |
|
|
128
129
|
|
|
129
130
|
---
|
|
@@ -133,12 +134,11 @@ an account, or a GPU to read.
|
|
|
133
134
|
One command, one way. Python 3.11+, Windows / macOS / Linux, CPU only.
|
|
134
135
|
|
|
135
136
|
```bash
|
|
136
|
-
|
|
137
|
-
cd bindsight
|
|
138
|
-
pip install -e ".[discover,report]"
|
|
137
|
+
pip install "bindsight[discover,report]"
|
|
139
138
|
```
|
|
140
139
|
|
|
141
|
-
|
|
140
|
+
From a checkout, `pip install -e ".[discover,report]"` instead. Add `dev` if you
|
|
141
|
+
intend to run the tests (`pip install -e ".[dev,discover,report]"`),
|
|
142
142
|
and `runners` if you intend to send work to a GPU backend. Conda users can build the
|
|
143
143
|
same dependency set first with `mamba env create -f envs/discover.yaml`.
|
|
144
144
|
|
|
@@ -208,7 +208,7 @@ stated as such: at rank 20 it is 1 of 17 on approved-agent antigens (95% CI
|
|
|
208
208
|
0.01–0.27). Most clinically validated antigens are simply not significantly
|
|
209
209
|
over-expressed in an unstratified bulk contrast.
|
|
210
210
|
|
|
211
|
-
→ [`benchmarks/study/RESULTS.md`](benchmarks/study/RESULTS.md) · [write-up](paper/validation/manuscript.md)
|
|
211
|
+
→ [`benchmarks/study/RESULTS.md`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/benchmarks/study/RESULTS.md) · [write-up](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/paper/validation/manuscript.md)
|
|
212
212
|
|
|
213
213
|
### The design half
|
|
214
214
|
|
|
@@ -227,7 +227,7 @@ page does not quote it as one. The ipTM values are real Boltz-2 outputs; what do
|
|
|
227
227
|
not follow is that the rate measures the designs. The control's predictions were
|
|
228
228
|
written down before its data arrived.
|
|
229
229
|
|
|
230
|
-
→ [`benchmarks/calibration/`](benchmarks/calibration
|
|
230
|
+
→ [`benchmarks/calibration/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/calibration) · [`benchmarks/designer_benchmark/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/designer_benchmark)
|
|
231
231
|
|
|
232
232
|
### The join
|
|
233
233
|
|
|
@@ -238,7 +238,7 @@ carried through to 40 designs and a walkable PROV-O graph. The committed manifes
|
|
|
238
238
|
lets you verify the first three steps of that walk from this clone; the rest needs
|
|
239
239
|
the crate rebuilt, and that directory says so precisely.
|
|
240
240
|
|
|
241
|
-
→ [`benchmarks/provenance_join/`](benchmarks/provenance_join
|
|
241
|
+
→ [`benchmarks/provenance_join/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/provenance_join)
|
|
242
242
|
|
|
243
243
|
### What has not been done
|
|
244
244
|
|
|
@@ -256,7 +256,7 @@ the crate rebuilt, and that directory says so precisely.
|
|
|
256
256
|
The pipeline takes a **counts matrix** and a **sample design table** naming a
|
|
257
257
|
two-level factor, and contrasts those two levels. Nothing on that path knows about
|
|
258
258
|
cancer. `tumor` and `normal` are values you supply, not values the code expects:
|
|
259
|
-
[`tests/test_non_cancer_cohort.py`](tests/test_non_cancer_cohort.py) drives the whole
|
|
259
|
+
[`tests/test_non_cancer_cohort.py`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/tests/test_non_cancer_cohort.py) drives the whole
|
|
260
260
|
documented path on a drug-versus-vehicle experiment paired within donor, with no
|
|
261
261
|
oncology vocabulary anywhere, and asserts that none leaks into the provenance
|
|
262
262
|
manifest.
|
|
@@ -372,7 +372,7 @@ python benchmarks/run_study.py --score-only # re-scores what is already on d
|
|
|
372
372
|
|
|
373
373
|
`score_run.py` is a scorer, not a runner: it consumes the archive a GPU run
|
|
374
374
|
produces. The full chain is in
|
|
375
|
-
[`RUN_FREE_GPU.md`](benchmarks/designer_benchmark/RUN_FREE_GPU.md), which runs on a
|
|
375
|
+
[`RUN_FREE_GPU.md`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/benchmarks/designer_benchmark/RUN_FREE_GPU.md), which runs on a
|
|
376
376
|
free Kaggle T4.
|
|
377
377
|
|
|
378
378
|
```bash
|
|
@@ -390,32 +390,32 @@ python benchmarks/designer_benchmark/score_run.py <out_dir>/<id>.tar.gz \
|
|
|
390
390
|
## Repository map
|
|
391
391
|
|
|
392
392
|
Each top-level area carries its own `README.md` explaining what is in it and
|
|
393
|
-
why — [`bindsight/`](bindsight/), [`tests/`](tests
|
|
394
|
-
[`benchmarks/`](benchmarks
|
|
395
|
-
[`examples/`](examples
|
|
393
|
+
why — [`bindsight/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight), [`tests/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/tests), [`scripts/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/scripts),
|
|
394
|
+
[`benchmarks/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks) and each benchmark under it, [`docs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/docs),
|
|
395
|
+
[`examples/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/examples), [`envs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/envs) and [`paper/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/paper). Package
|
|
396
396
|
subdirectories are documented in the table below rather than individually.
|
|
397
397
|
|
|
398
398
|
| Path | What it holds |
|
|
399
399
|
|---|---|
|
|
400
|
-
| [`bindsight/`](bindsight/) | The Python package — [`io`](bindsight/io
|
|
401
|
-
| [`benchmarks/`](benchmarks
|
|
402
|
-
| [`tests/`](tests
|
|
403
|
-
| [`paper/`](paper
|
|
404
|
-
| [`docs/`](docs
|
|
405
|
-
| [`examples/`](examples
|
|
406
|
-
| [`envs/`](envs
|
|
407
|
-
| [`scripts/`](scripts
|
|
408
|
-
| [`.github/workflows/`](.github/workflows
|
|
400
|
+
| [`bindsight/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight) | The Python package — [`io`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/io), [`deg`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/deg), [`targets`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/targets), [`surfaceome`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/surfaceome), [`structures`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/structures), [`epitopes`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/epitopes), [`design`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/design), [`runners`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/runners), [`validate`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/validate), [`rank`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/rank), [`benchmark`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/benchmark), [`pipelines`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/pipelines), [`provenance`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/provenance), [`export`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/export), [`report`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/report) |
|
|
401
|
+
| [`benchmarks/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks) | All the evidence — the [study](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/study), the [calibration control](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/calibration), the [designer benchmark](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/designer_benchmark), the [provenance join](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/provenance_join), and the held-out antigen set |
|
|
402
|
+
| [`tests/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/tests) | 2,000+ tests. Many are guards on published claims, not on code |
|
|
403
|
+
| [`paper/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/paper) | JOSS and bioRxiv manuscripts, and the validation write-up |
|
|
404
|
+
| [`docs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/docs) | Long-form documentation (mkdocs-material source) |
|
|
405
|
+
| [`examples/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/examples) | Runnable pipeline configs |
|
|
406
|
+
| [`envs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/envs) | Conda environment for the discovery half, with pinned constraints |
|
|
407
|
+
| [`scripts/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/scripts) | Generators for vendored data and published pages |
|
|
408
|
+
| [`.github/workflows/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/.github/workflows) | CI, docs, docker, release artifacts, and the two paper PDFs |
|
|
409
409
|
|
|
410
410
|
| File | What it is |
|
|
411
411
|
|---|---|
|
|
412
|
-
| [ARCHITECTURE.md](ARCHITECTURE.md) | The architectural source of truth |
|
|
413
|
-
| [CHANGELOG.md](CHANGELOG.md) | Per-version changes |
|
|
414
|
-
| [CONTRIBUTING.md](CONTRIBUTING.md) | Dev setup, testing, commit conventions |
|
|
415
|
-
| [LICENSING.md](LICENSING.md) | Per-dependency licence inventory and commercial-use guidance |
|
|
416
|
-
| [SECURITY.md](SECURITY.md) | How to report a vulnerability |
|
|
417
|
-
| [CITATION.cff](CITATION.cff) | Citation metadata |
|
|
418
|
-
| [Snakefile](Snakefile) | The Snakemake DAG front-end |
|
|
412
|
+
| [ARCHITECTURE.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/ARCHITECTURE.md) | The architectural source of truth |
|
|
413
|
+
| [CHANGELOG.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CHANGELOG.md) | Per-version changes |
|
|
414
|
+
| [CONTRIBUTING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CONTRIBUTING.md) | Dev setup, testing, commit conventions |
|
|
415
|
+
| [LICENSING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSING.md) | Per-dependency licence inventory and commercial-use guidance |
|
|
416
|
+
| [SECURITY.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/SECURITY.md) | How to report a vulnerability |
|
|
417
|
+
| [CITATION.cff](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CITATION.cff) | Citation metadata |
|
|
418
|
+
| [Snakefile](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/Snakefile) | The Snakemake DAG front-end |
|
|
419
419
|
|
|
420
420
|
---
|
|
421
421
|
|
|
@@ -441,14 +441,14 @@ subdirectories are documented in the table below rather than individually.
|
|
|
441
441
|
| Citability | Code dump | Tagged releases with SHA-256 checksums, JSON-Schema-validated outputs |
|
|
442
442
|
|
|
443
443
|
For the full landscape comparison, see
|
|
444
|
-
[ARCHITECTURE.md § 8](ARCHITECTURE.md#8-comparison-vs-existing-tools).
|
|
444
|
+
[ARCHITECTURE.md § 8](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/ARCHITECTURE.md#8-comparison-vs-existing-tools).
|
|
445
445
|
|
|
446
446
|
---
|
|
447
447
|
|
|
448
448
|
## Acknowledgments
|
|
449
449
|
|
|
450
450
|
bindsight is an opinionated wrapper. Real intellectual credit belongs to the upstream
|
|
451
|
-
tool authors. See [LICENSING.md](LICENSING.md) for the full inventory; the work this
|
|
451
|
+
tool authors. See [LICENSING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSING.md) for the full inventory; the work this
|
|
452
452
|
builds on most directly:
|
|
453
453
|
|
|
454
454
|
- [SURFACE-Bind](https://github.com/hamedkhakzad/SURFACE-Bind) (Balbi et al., PNAS 2026) — the targetable-sites catalog that makes the bridge tractable
|
|
@@ -468,7 +468,7 @@ and the checksums attached to the release, plus the author:
|
|
|
468
468
|
> novo protein binder design* (version X.Y.Z).
|
|
469
469
|
> <https://github.com/mikhaeelatefrizk/bindsight>
|
|
470
470
|
|
|
471
|
-
Citation metadata also lives in [CITATION.cff](CITATION.cff); GitHub's "Cite this
|
|
471
|
+
Citation metadata also lives in [CITATION.cff](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CITATION.cff); GitHub's "Cite this
|
|
472
472
|
repository" button generates BibTeX and APA from it. Every release attaches a
|
|
473
473
|
wheel, an sdist and a `SHA256SUMS` file, and every image is digest-pinned, so
|
|
474
474
|
the artifacts behind a version are checkable even though the version has no
|
|
@@ -487,9 +487,9 @@ independent researcher in Cairo, Egypt.
|
|
|
487
487
|
|
|
488
488
|
## License
|
|
489
489
|
|
|
490
|
-
- **Code:** [GNU AGPL-3.0-or-later](LICENSE) — copyright notice in [COPYRIGHT](COPYRIGHT). You may use, study, modify, and
|
|
490
|
+
- **Code:** [GNU AGPL-3.0-or-later](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSE) — copyright notice in [COPYRIGHT](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/COPYRIGHT). You may use, study, modify, and
|
|
491
491
|
redistribute bindsight freely; if you distribute a modified version **or run it as
|
|
492
492
|
a network service**, you must make your source available under the same licence,
|
|
493
|
-
with attribution preserved. See [LICENSING.md](LICENSING.md) for component-level
|
|
493
|
+
with attribution preserved. See [LICENSING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSING.md) for component-level
|
|
494
494
|
details — bindsight orchestrates external tools that keep their own licences, and
|
|
495
495
|
some carry non-commercial terms.
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
> it came from.
|
|
7
7
|
|
|
8
8
|
[](https://github.com/mikhaeelatefrizk/bindsight/actions/workflows/ci.yml)
|
|
9
|
-
[](https://pypi.org/project/bindsight/)
|
|
10
|
+
[](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSE)
|
|
10
11
|
[](https://www.python.org/downloads/)
|
|
11
12
|
[](https://snakemake.github.io/)
|
|
12
13
|
|
|
@@ -27,15 +28,15 @@ an account, or a GPU to read.
|
|
|
27
28
|
| **Run it in five minutes** | [Install](#install), then `bindsight demo` |
|
|
28
29
|
| **See what it has and has not shown** | [What the evidence says](#what-the-evidence-says) |
|
|
29
30
|
| **Reproduce a published number** | [Reproducing the results](#reproducing-the-results) |
|
|
30
|
-
| **Understand how it works** | [ARCHITECTURE.md](ARCHITECTURE.md) |
|
|
31
|
-
| **Read the study** | [`benchmarks/study/`](benchmarks/study
|
|
32
|
-
| **Read the control that withdrew a headline** | [`benchmarks/calibration/`](benchmarks/calibration
|
|
33
|
-
| **See the provenance chain, run end to end** | [`benchmarks/provenance_join/`](benchmarks/provenance_join
|
|
31
|
+
| **Understand how it works** | [ARCHITECTURE.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/ARCHITECTURE.md) |
|
|
32
|
+
| **Read the study** | [`benchmarks/study/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/study) · [write-up](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/paper/validation/manuscript.md) |
|
|
33
|
+
| **Read the control that withdrew a headline** | [`benchmarks/calibration/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/calibration) |
|
|
34
|
+
| **See the provenance chain, run end to end** | [`benchmarks/provenance_join/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/provenance_join) |
|
|
34
35
|
| **Find your way around the code** | [Repository map](#repository-map) |
|
|
35
36
|
| **Use your own data** | [Scope — what it accepts](#scope--what-it-accepts) |
|
|
36
|
-
| **Design binders on a free GPU** | [`RUN_FREE_GPU.md`](benchmarks/designer_benchmark/RUN_FREE_GPU.md) |
|
|
37
|
-
| **Look up a term** (PROV-O, RO-Crate, ipTM, PAE-int…) | [Glossary](docs/glossary.md) |
|
|
38
|
-
| **Contribute** | [CONTRIBUTING.md](CONTRIBUTING.md) |
|
|
37
|
+
| **Design binders on a free GPU** | [`RUN_FREE_GPU.md`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/benchmarks/designer_benchmark/RUN_FREE_GPU.md) |
|
|
38
|
+
| **Look up a term** (PROV-O, RO-Crate, ipTM, PAE-int…) | [Glossary](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/docs/glossary.md) |
|
|
39
|
+
| **Contribute** | [CONTRIBUTING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CONTRIBUTING.md) |
|
|
39
40
|
| **Cite it** | [Citation](#citation) |
|
|
40
41
|
|
|
41
42
|
---
|
|
@@ -45,12 +46,11 @@ an account, or a GPU to read.
|
|
|
45
46
|
One command, one way. Python 3.11+, Windows / macOS / Linux, CPU only.
|
|
46
47
|
|
|
47
48
|
```bash
|
|
48
|
-
|
|
49
|
-
cd bindsight
|
|
50
|
-
pip install -e ".[discover,report]"
|
|
49
|
+
pip install "bindsight[discover,report]"
|
|
51
50
|
```
|
|
52
51
|
|
|
53
|
-
|
|
52
|
+
From a checkout, `pip install -e ".[discover,report]"` instead. Add `dev` if you
|
|
53
|
+
intend to run the tests (`pip install -e ".[dev,discover,report]"`),
|
|
54
54
|
and `runners` if you intend to send work to a GPU backend. Conda users can build the
|
|
55
55
|
same dependency set first with `mamba env create -f envs/discover.yaml`.
|
|
56
56
|
|
|
@@ -120,7 +120,7 @@ stated as such: at rank 20 it is 1 of 17 on approved-agent antigens (95% CI
|
|
|
120
120
|
0.01–0.27). Most clinically validated antigens are simply not significantly
|
|
121
121
|
over-expressed in an unstratified bulk contrast.
|
|
122
122
|
|
|
123
|
-
→ [`benchmarks/study/RESULTS.md`](benchmarks/study/RESULTS.md) · [write-up](paper/validation/manuscript.md)
|
|
123
|
+
→ [`benchmarks/study/RESULTS.md`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/benchmarks/study/RESULTS.md) · [write-up](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/paper/validation/manuscript.md)
|
|
124
124
|
|
|
125
125
|
### The design half
|
|
126
126
|
|
|
@@ -139,7 +139,7 @@ page does not quote it as one. The ipTM values are real Boltz-2 outputs; what do
|
|
|
139
139
|
not follow is that the rate measures the designs. The control's predictions were
|
|
140
140
|
written down before its data arrived.
|
|
141
141
|
|
|
142
|
-
→ [`benchmarks/calibration/`](benchmarks/calibration
|
|
142
|
+
→ [`benchmarks/calibration/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/calibration) · [`benchmarks/designer_benchmark/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/designer_benchmark)
|
|
143
143
|
|
|
144
144
|
### The join
|
|
145
145
|
|
|
@@ -150,7 +150,7 @@ carried through to 40 designs and a walkable PROV-O graph. The committed manifes
|
|
|
150
150
|
lets you verify the first three steps of that walk from this clone; the rest needs
|
|
151
151
|
the crate rebuilt, and that directory says so precisely.
|
|
152
152
|
|
|
153
|
-
→ [`benchmarks/provenance_join/`](benchmarks/provenance_join
|
|
153
|
+
→ [`benchmarks/provenance_join/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/provenance_join)
|
|
154
154
|
|
|
155
155
|
### What has not been done
|
|
156
156
|
|
|
@@ -168,7 +168,7 @@ the crate rebuilt, and that directory says so precisely.
|
|
|
168
168
|
The pipeline takes a **counts matrix** and a **sample design table** naming a
|
|
169
169
|
two-level factor, and contrasts those two levels. Nothing on that path knows about
|
|
170
170
|
cancer. `tumor` and `normal` are values you supply, not values the code expects:
|
|
171
|
-
[`tests/test_non_cancer_cohort.py`](tests/test_non_cancer_cohort.py) drives the whole
|
|
171
|
+
[`tests/test_non_cancer_cohort.py`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/tests/test_non_cancer_cohort.py) drives the whole
|
|
172
172
|
documented path on a drug-versus-vehicle experiment paired within donor, with no
|
|
173
173
|
oncology vocabulary anywhere, and asserts that none leaks into the provenance
|
|
174
174
|
manifest.
|
|
@@ -284,7 +284,7 @@ python benchmarks/run_study.py --score-only # re-scores what is already on d
|
|
|
284
284
|
|
|
285
285
|
`score_run.py` is a scorer, not a runner: it consumes the archive a GPU run
|
|
286
286
|
produces. The full chain is in
|
|
287
|
-
[`RUN_FREE_GPU.md`](benchmarks/designer_benchmark/RUN_FREE_GPU.md), which runs on a
|
|
287
|
+
[`RUN_FREE_GPU.md`](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/benchmarks/designer_benchmark/RUN_FREE_GPU.md), which runs on a
|
|
288
288
|
free Kaggle T4.
|
|
289
289
|
|
|
290
290
|
```bash
|
|
@@ -302,32 +302,32 @@ python benchmarks/designer_benchmark/score_run.py <out_dir>/<id>.tar.gz \
|
|
|
302
302
|
## Repository map
|
|
303
303
|
|
|
304
304
|
Each top-level area carries its own `README.md` explaining what is in it and
|
|
305
|
-
why — [`bindsight/`](bindsight/), [`tests/`](tests
|
|
306
|
-
[`benchmarks/`](benchmarks
|
|
307
|
-
[`examples/`](examples
|
|
305
|
+
why — [`bindsight/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight), [`tests/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/tests), [`scripts/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/scripts),
|
|
306
|
+
[`benchmarks/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks) and each benchmark under it, [`docs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/docs),
|
|
307
|
+
[`examples/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/examples), [`envs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/envs) and [`paper/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/paper). Package
|
|
308
308
|
subdirectories are documented in the table below rather than individually.
|
|
309
309
|
|
|
310
310
|
| Path | What it holds |
|
|
311
311
|
|---|---|
|
|
312
|
-
| [`bindsight/`](bindsight/) | The Python package — [`io`](bindsight/io
|
|
313
|
-
| [`benchmarks/`](benchmarks
|
|
314
|
-
| [`tests/`](tests
|
|
315
|
-
| [`paper/`](paper
|
|
316
|
-
| [`docs/`](docs
|
|
317
|
-
| [`examples/`](examples
|
|
318
|
-
| [`envs/`](envs
|
|
319
|
-
| [`scripts/`](scripts
|
|
320
|
-
| [`.github/workflows/`](.github/workflows
|
|
312
|
+
| [`bindsight/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight) | The Python package — [`io`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/io), [`deg`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/deg), [`targets`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/targets), [`surfaceome`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/surfaceome), [`structures`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/structures), [`epitopes`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/epitopes), [`design`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/design), [`runners`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/runners), [`validate`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/validate), [`rank`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/rank), [`benchmark`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/benchmark), [`pipelines`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/pipelines), [`provenance`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/provenance), [`export`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/export), [`report`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/bindsight/report) |
|
|
313
|
+
| [`benchmarks/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks) | All the evidence — the [study](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/study), the [calibration control](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/calibration), the [designer benchmark](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/designer_benchmark), the [provenance join](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/benchmarks/provenance_join), and the held-out antigen set |
|
|
314
|
+
| [`tests/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/tests) | 2,000+ tests. Many are guards on published claims, not on code |
|
|
315
|
+
| [`paper/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/paper) | JOSS and bioRxiv manuscripts, and the validation write-up |
|
|
316
|
+
| [`docs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/docs) | Long-form documentation (mkdocs-material source) |
|
|
317
|
+
| [`examples/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/examples) | Runnable pipeline configs |
|
|
318
|
+
| [`envs/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/envs) | Conda environment for the discovery half, with pinned constraints |
|
|
319
|
+
| [`scripts/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/scripts) | Generators for vendored data and published pages |
|
|
320
|
+
| [`.github/workflows/`](https://github.com/mikhaeelatefrizk/bindsight/tree/v0.3.6/.github/workflows) | CI, docs, docker, release artifacts, and the two paper PDFs |
|
|
321
321
|
|
|
322
322
|
| File | What it is |
|
|
323
323
|
|---|---|
|
|
324
|
-
| [ARCHITECTURE.md](ARCHITECTURE.md) | The architectural source of truth |
|
|
325
|
-
| [CHANGELOG.md](CHANGELOG.md) | Per-version changes |
|
|
326
|
-
| [CONTRIBUTING.md](CONTRIBUTING.md) | Dev setup, testing, commit conventions |
|
|
327
|
-
| [LICENSING.md](LICENSING.md) | Per-dependency licence inventory and commercial-use guidance |
|
|
328
|
-
| [SECURITY.md](SECURITY.md) | How to report a vulnerability |
|
|
329
|
-
| [CITATION.cff](CITATION.cff) | Citation metadata |
|
|
330
|
-
| [Snakefile](Snakefile) | The Snakemake DAG front-end |
|
|
324
|
+
| [ARCHITECTURE.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/ARCHITECTURE.md) | The architectural source of truth |
|
|
325
|
+
| [CHANGELOG.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CHANGELOG.md) | Per-version changes |
|
|
326
|
+
| [CONTRIBUTING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CONTRIBUTING.md) | Dev setup, testing, commit conventions |
|
|
327
|
+
| [LICENSING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSING.md) | Per-dependency licence inventory and commercial-use guidance |
|
|
328
|
+
| [SECURITY.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/SECURITY.md) | How to report a vulnerability |
|
|
329
|
+
| [CITATION.cff](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CITATION.cff) | Citation metadata |
|
|
330
|
+
| [Snakefile](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/Snakefile) | The Snakemake DAG front-end |
|
|
331
331
|
|
|
332
332
|
---
|
|
333
333
|
|
|
@@ -353,14 +353,14 @@ subdirectories are documented in the table below rather than individually.
|
|
|
353
353
|
| Citability | Code dump | Tagged releases with SHA-256 checksums, JSON-Schema-validated outputs |
|
|
354
354
|
|
|
355
355
|
For the full landscape comparison, see
|
|
356
|
-
[ARCHITECTURE.md § 8](ARCHITECTURE.md#8-comparison-vs-existing-tools).
|
|
356
|
+
[ARCHITECTURE.md § 8](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/ARCHITECTURE.md#8-comparison-vs-existing-tools).
|
|
357
357
|
|
|
358
358
|
---
|
|
359
359
|
|
|
360
360
|
## Acknowledgments
|
|
361
361
|
|
|
362
362
|
bindsight is an opinionated wrapper. Real intellectual credit belongs to the upstream
|
|
363
|
-
tool authors. See [LICENSING.md](LICENSING.md) for the full inventory; the work this
|
|
363
|
+
tool authors. See [LICENSING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSING.md) for the full inventory; the work this
|
|
364
364
|
builds on most directly:
|
|
365
365
|
|
|
366
366
|
- [SURFACE-Bind](https://github.com/hamedkhakzad/SURFACE-Bind) (Balbi et al., PNAS 2026) — the targetable-sites catalog that makes the bridge tractable
|
|
@@ -380,7 +380,7 @@ and the checksums attached to the release, plus the author:
|
|
|
380
380
|
> novo protein binder design* (version X.Y.Z).
|
|
381
381
|
> <https://github.com/mikhaeelatefrizk/bindsight>
|
|
382
382
|
|
|
383
|
-
Citation metadata also lives in [CITATION.cff](CITATION.cff); GitHub's "Cite this
|
|
383
|
+
Citation metadata also lives in [CITATION.cff](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/CITATION.cff); GitHub's "Cite this
|
|
384
384
|
repository" button generates BibTeX and APA from it. Every release attaches a
|
|
385
385
|
wheel, an sdist and a `SHA256SUMS` file, and every image is digest-pinned, so
|
|
386
386
|
the artifacts behind a version are checkable even though the version has no
|
|
@@ -399,9 +399,9 @@ independent researcher in Cairo, Egypt.
|
|
|
399
399
|
|
|
400
400
|
## License
|
|
401
401
|
|
|
402
|
-
- **Code:** [GNU AGPL-3.0-or-later](LICENSE) — copyright notice in [COPYRIGHT](COPYRIGHT). You may use, study, modify, and
|
|
402
|
+
- **Code:** [GNU AGPL-3.0-or-later](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSE) — copyright notice in [COPYRIGHT](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/COPYRIGHT). You may use, study, modify, and
|
|
403
403
|
redistribute bindsight freely; if you distribute a modified version **or run it as
|
|
404
404
|
a network service**, you must make your source available under the same licence,
|
|
405
|
-
with attribution preserved. See [LICENSING.md](LICENSING.md) for component-level
|
|
405
|
+
with attribution preserved. See [LICENSING.md](https://github.com/mikhaeelatefrizk/bindsight/blob/v0.3.6/LICENSING.md) for component-level
|
|
406
406
|
details — bindsight orchestrates external tools that keep their own licences, and
|
|
407
407
|
some carry non-commercial terms.
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
</p>
|
|
10
10
|
|
|
11
11
|
<div class="card">
|
|
12
|
-
<h2 class="card__title">What this runs</
|
|
12
|
+
<h2 class="card__title">What this runs</h2>
|
|
13
13
|
<div class="grid grid--2">
|
|
14
14
|
{#- `.fact`, not `.stat`. A `.stat` is a measurement and must carry its
|
|
15
15
|
denominator or interval; these are descriptions, and borrowing the
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
</p>
|
|
11
11
|
|
|
12
12
|
<div class="card">
|
|
13
|
-
<h2 class="card__title">Files</
|
|
13
|
+
<h2 class="card__title">Files</h2>
|
|
14
14
|
<div class="field">
|
|
15
15
|
<label for="counts">Counts matrix <span class="muted">(.tsv, .txt, .gz)</span></label>
|
|
16
16
|
<input type="file" id="counts" accept=".tsv,.txt,.gz">
|
|
@@ -48,7 +48,13 @@ class LocalDockerRunner:
|
|
|
48
48
|
designer: str = "rfdiff_mpnn",
|
|
49
49
|
n_units_per_target: int = 50,
|
|
50
50
|
gpu_type: str = "A100-40GB",
|
|
51
|
-
|
|
51
|
+
# `:latest` because it is the only tag `docker.yml` always publishes:
|
|
52
|
+
# the others are the commit SHA and, on a tag push, the release. There
|
|
53
|
+
# has never been a `:dev`. A moving tag is safe here in a way it is not
|
|
54
|
+
# for a CI action -- the image carries its own bindsight and runs it, and
|
|
55
|
+
# `pipelines.full_run._container_ref` records the resolved *digest* in the
|
|
56
|
+
# manifest, never the tag, for exactly this reason.
|
|
57
|
+
image: str = "ghcr.io/mikhaeelatefrizk/bindsight:latest",
|
|
52
58
|
native: bool | None = None,
|
|
53
59
|
) -> None:
|
|
54
60
|
self.designer = designer
|