Skip to content

Add support for parsing custom CIF files as PLINDER systems#105

Open
Ninjani wants to merge 26 commits intomainfrom
custom_cif
Open

Add support for parsing custom CIF files as PLINDER systems#105
Ninjani wants to merge 26 commits intomainfrom
custom_cif

Conversation

@Ninjani
Copy link
Contributor

@Ninjani Ninjani commented Apr 8, 2025

  • Allows parsing any cif files with Entry.from_custom_cif_file
  • Bump BindingDB version
  • Better handling of counts for pocket residues, interactions etc only considering proper ligands
  • Release date fix (needs data regen)
  • Use proper_ligand-based counts for scoring
  • PDB conversion fix, rename residues with >3 characters
  • Residue export, add auth_number
  • Fallible rdkit parsing
  • crystal contact detection within asymmetric units
  • install cleanly to macOS
  • resolve sdf issue v2000 vs v3000 for dative bonds
  • clean up docs
  • upgrade to new posebusters
  • add test for from_custom_cif_file @Ninjani

Closes #102


Removed from TODO for a later PR:

  • Fix BindingDB to PDB mapping (based on 100% pocket sequence coverage and identity)

@github-actions
Copy link

github-actions bot commented Apr 8, 2025

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  src/plinder/core/scores
  index.py
  src/plinder/core/structure
  contacts.py
  src/plinder/core/utils
  io.py 79-84
  src/plinder/data
  clusters.py 12, 78
  src/plinder/data/pipeline
  io.py 111
  transform.py 170
  utils.py 159-160
  src/plinder/data/utils/annotations
  aggregate_annotations.py 286-290, 547, 1015, 1138-1179, 1483, 1485-1486
  get_similarity_scores.py 369-374, 394-398, 417-455, 530-555, 762-769, 866-868
  interaction_utils.py 274
  interface_gap.py
  ligand_utils.py 679-680
  rdkit_utils.py 41, 144-146
  save_utils.py 39
  src/plinder/eval/docking
  utils.py
Project Total  

This report was generated by python-coverage-comment-action

@weitse-hsu
Copy link

Hi @Ninjani, thanks so much for working on this PR to address #102—really appreciate the progress so far. I noticed most of the checklist is complete and just wanted to check in on any updates.

Also, is there a plan for supporting custom PDB files in the codebase? Thanks a lot!

OleinikovasV and others added 14 commits February 19, 2026 04:01
* feat: update crystal mates detection, bugfix
* chore: clean up docs
* chore: fix test values
* upgrade to numpy 2
* upgrade openstructure, networkit
* fix: python 3.12 support
* fix: force LD_LIBRARY_PATH to conda
* chore: update development.md
* Proxima (formerly VantAI)
* test: update tests for updated call signatures
* Update tests/core/test_core_system.py
* Update tests/test_annotations.py

---------

Co-authored-by: Thomas Duignan <thomas.j.duignan@gmail.com>
Co-authored-by: Tom Duignan <tjduigna@users.noreply.github.com>
@OleinikovasV OleinikovasV added the enhancement New feature or request label Feb 20, 2026
edi.UpdateICS()
ligands = entry._collect_ligands_from_biounit(
biounit,
"1", # TODO: @JAY - is this necessary to be different from `from_cif_file` ?
Copy link
Member

Choose a reason for hiding this comment

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

@Ninjani could you review is all the custom changes compared to from_cif_file are important to be different. Maybe we can refactor for it to be closer aligned and reuse more code?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Possibility of using plinder codebase to perform splitting for other datasets

5 participants