RNApolis 0.10.6__tar.gz → 0.10.7__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.
Files changed (48) hide show
  1. {rnapolis-0.10.6/src/RNApolis.egg-info → rnapolis-0.10.7}/PKG-INFO +1 -1
  2. {rnapolis-0.10.6 → rnapolis-0.10.7}/setup.py +1 -1
  3. {rnapolis-0.10.6 → rnapolis-0.10.7/src/RNApolis.egg-info}/PKG-INFO +1 -1
  4. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/common.py +21 -13
  5. {rnapolis-0.10.6 → rnapolis-0.10.7}/LICENSE +0 -0
  6. {rnapolis-0.10.6 → rnapolis-0.10.7}/README.md +0 -0
  7. {rnapolis-0.10.6 → rnapolis-0.10.7}/pyproject.toml +0 -0
  8. {rnapolis-0.10.6 → rnapolis-0.10.7}/setup.cfg +0 -0
  9. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/RNApolis.egg-info/SOURCES.txt +0 -0
  10. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/RNApolis.egg-info/dependency_links.txt +0 -0
  11. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/RNApolis.egg-info/entry_points.txt +0 -0
  12. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/RNApolis.egg-info/requires.txt +0 -0
  13. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/RNApolis.egg-info/top_level.txt +0 -0
  14. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/adapter.py +0 -0
  15. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/aligner.py +0 -0
  16. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/annotator.py +0 -0
  17. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/clashfinder.py +0 -0
  18. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/component_A.csv +0 -0
  19. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/component_C.csv +0 -0
  20. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/component_G.csv +0 -0
  21. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/component_U.csv +0 -0
  22. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/distiller.py +0 -0
  23. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/metareader.py +0 -0
  24. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/mmcif_pdbx_v50.dic +0 -0
  25. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/molecule_filter.py +0 -0
  26. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/motif_extractor.py +0 -0
  27. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/parser.py +0 -0
  28. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/parser_v2.py +0 -0
  29. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/py.typed +0 -0
  30. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/rfam_folder.py +0 -0
  31. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/splitter.py +0 -0
  32. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/tertiary.py +0 -0
  33. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/tertiary_v2.py +0 -0
  34. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/transformer.py +0 -0
  35. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/unifier.py +0 -0
  36. {rnapolis-0.10.6 → rnapolis-0.10.7}/src/rnapolis/util.py +0 -0
  37. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_adapter.py +0 -0
  38. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_annotator.py +0 -0
  39. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_bugfixes.py +0 -0
  40. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_common.py +0 -0
  41. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_metareader.py +0 -0
  42. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_molecule_filter.py +0 -0
  43. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_parser.py +0 -0
  44. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_quadruplexes.py +0 -0
  45. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_rfam_folder.py +0 -0
  46. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_tertiary.py +0 -0
  47. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_transformer.py +0 -0
  48. {rnapolis-0.10.6 → rnapolis-0.10.7}/tests/test_v2.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: RNApolis
3
- Version: 0.10.6
3
+ Version: 0.10.7
4
4
  Summary: A Python library containing RNA-related bioinformatics functions and classes
5
5
  Home-page: https://github.com/tzok/rnapolis-py
6
6
  Author: Tomasz Zok
@@ -5,7 +5,7 @@ with open("README.md") as f:
5
5
 
6
6
  setup(
7
7
  name="RNApolis",
8
- version="0.10.6",
8
+ version="0.10.7",
9
9
  packages=["rnapolis"],
10
10
  package_dir={"": "src"},
11
11
  author="Tomasz Zok",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: RNApolis
3
- Version: 0.10.6
3
+ Version: 0.10.7
4
4
  Summary: A Python library containing RNA-related bioinformatics functions and classes
5
5
  Home-page: https://github.com/tzok/rnapolis-py
6
6
  Author: Tomasz Zok
@@ -1084,33 +1084,41 @@ class BaseInteractions:
1084
1084
  base_phosphate_interactions: List[BasePhosphate],
1085
1085
  other_interactions: List[OtherInteraction],
1086
1086
  ) -> "BaseInteractions":
1087
- auth2residue3d = {}
1088
- auth2label = {}
1089
- label2auth = {}
1087
+ cni2residue = {}
1088
+ cni2label = {}
1089
+ cni2auth = {}
1090
1090
 
1091
1091
  for residue3d in structure3d.residues:
1092
- auth2residue3d[residue3d.auth] = residue3d
1093
- auth2label[residue3d.auth] = residue3d.label
1094
- label2auth[residue3d.label] = residue3d.auth
1092
+ cni = (residue3d.chain, residue3d.number, residue3d.icode or None)
1093
+ cni2auth[cni] = residue3d.auth
1094
+ cni2label[cni] = residue3d.label
1095
+ cni2residue[cni] = residue3d
1095
1096
 
1096
1097
  def unify_nt(nt: Residue) -> Residue:
1097
1098
  if nt.auth is not None and nt.label is not None:
1098
1099
  return nt
1100
+ cni = (nt.chain, nt.number, nt.icode or None)
1099
1101
  if nt.auth is not None:
1100
- return Residue(label=auth2label.get(nt.auth, None), auth=nt.auth)
1102
+ return Residue(label=cni2label.get(cni, None), auth=nt.auth)
1101
1103
  if nt.label is not None:
1102
- return Residue(label=nt.label, auth=label2auth.get(nt.label, None))
1104
+ return Residue(label=nt.label, auth=cni2auth.get(cni, None))
1103
1105
  return nt
1104
1106
 
1105
1107
  base_pairs_new = []
1106
1108
  for base_pair in base_pairs:
1107
1109
  nt1 = unify_nt(base_pair.nt1)
1108
1110
  nt2 = unify_nt(base_pair.nt2)
1109
- saenger = base_pair.saenger or Saenger.from_leontis_westhof(
1110
- auth2residue3d[nt1.auth].one_letter_name,
1111
- auth2residue3d[nt2.auth].one_letter_name,
1112
- base_pair.lw,
1113
- )
1111
+
1112
+ cni1 = (nt1.chain, nt1.number, nt1.icode or None)
1113
+ cni2 = (nt2.chain, nt2.number, nt2.icode or None)
1114
+ if cni1 not in cni2residue or cni2 not in cni2residue:
1115
+ saenger = base_pair.saenger
1116
+ else:
1117
+ saenger = base_pair.saenger or Saenger.from_leontis_westhof(
1118
+ cni2residue[cni1].one_letter_name,
1119
+ cni2residue[cni2].one_letter_name,
1120
+ base_pair.lw,
1121
+ )
1114
1122
  if (
1115
1123
  nt1 != base_pair.nt1
1116
1124
  or nt2 != base_pair.nt2
File without changes
File without changes
File without changes
File without changes
File without changes