helmkit 0.7.2__tar.gz → 0.7.4__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.
- {helmkit-0.7.2 → helmkit-0.7.4}/PKG-INFO +1 -1
- {helmkit-0.7.2 → helmkit-0.7.4}/pyproject.toml +1 -1
- {helmkit-0.7.2 → helmkit-0.7.4}/src/helmkit/molecule.py +30 -35
- {helmkit-0.7.2 → helmkit-0.7.4}/uv.lock +52 -52
- {helmkit-0.7.2 → helmkit-0.7.4}/.gitignore +0 -0
- {helmkit-0.7.2 → helmkit-0.7.4}/.python-version +0 -0
- {helmkit-0.7.2 → helmkit-0.7.4}/LICENSE +0 -0
- {helmkit-0.7.2 → helmkit-0.7.4}/README.md +0 -0
- {helmkit-0.7.2 → helmkit-0.7.4}/src/helmkit/__init__.py +0 -0
- {helmkit-0.7.2 → helmkit-0.7.4}/src/helmkit/data/monomers.sdf +0 -0
- {helmkit-0.7.2 → helmkit-0.7.4}/src/helmkit/py.typed +0 -0
|
@@ -89,7 +89,6 @@ class MonomerData(TypedDict):
|
|
|
89
89
|
m_RgroupIdx: list[int | None]
|
|
90
90
|
m_attachmentPointIdx: list[int | None]
|
|
91
91
|
m_type: str
|
|
92
|
-
m_subtype: str
|
|
93
92
|
m_abbr: str
|
|
94
93
|
|
|
95
94
|
|
|
@@ -123,14 +122,17 @@ def load_monomer_library(library_path: str | None = None) -> MonomerLibrary:
|
|
|
123
122
|
rgroup_idx = parse_comma_separated_property(mol, "m_RgroupIdx", int)
|
|
124
123
|
attachment_point_idx = infer_attachment_points(mol, rgroup_idx)
|
|
125
124
|
|
|
125
|
+
abbr = get_molecule_property(mol, "m_abbr", "")
|
|
126
|
+
if not abbr:
|
|
127
|
+
continue
|
|
128
|
+
|
|
126
129
|
monomers_dict[m_type][symbol] = {
|
|
127
130
|
"m_romol": mol,
|
|
128
131
|
"m_Rgroups": rgroups,
|
|
129
132
|
"m_RgroupIdx": rgroup_idx,
|
|
130
133
|
"m_attachmentPointIdx": attachment_point_idx,
|
|
131
134
|
"m_type": m_type,
|
|
132
|
-
"
|
|
133
|
-
"m_abbr": get_molecule_property(mol, "m_abbr", ""),
|
|
135
|
+
"m_abbr": abbr,
|
|
134
136
|
}
|
|
135
137
|
|
|
136
138
|
return monomers_dict
|
|
@@ -224,12 +226,9 @@ def _create_missing_monomer(monomer_name: str, m_type: str = "aa") -> MonomerDat
|
|
|
224
226
|
rgroup_idx_full[1] = new_idx
|
|
225
227
|
attachment_points[1] = attachment_id
|
|
226
228
|
|
|
227
|
-
mol.SetProp("m_name", monomer_name)
|
|
228
|
-
|
|
229
229
|
mol.SetProp("symbol", monomer_name)
|
|
230
230
|
mol.SetProp("m_abbr", monomer_name)
|
|
231
231
|
mol.SetProp("m_type", m_type)
|
|
232
|
-
mol.SetProp("m_subtype", "non-natural" if m_type == "aa" else "")
|
|
233
232
|
mol.SetProp("m_RgroupIdx", ",".join(map(str, rgroup_idx_full)))
|
|
234
233
|
mol.SetProp("m_Rgroups", ",".join(map(str, rgroup_vals)))
|
|
235
234
|
mol.SetProp("m_attachmentPointIdx", ",".join(map(str, attachment_points)))
|
|
@@ -241,7 +240,6 @@ def _create_missing_monomer(monomer_name: str, m_type: str = "aa") -> MonomerDat
|
|
|
241
240
|
"m_RgroupIdx": rgroup_idx_full,
|
|
242
241
|
"m_attachmentPointIdx": attachment_points,
|
|
243
242
|
"m_type": m_type,
|
|
244
|
-
"m_subtype": "non-natural" if m_type == "aa" else "",
|
|
245
243
|
"m_abbr": monomer_name,
|
|
246
244
|
}
|
|
247
245
|
|
|
@@ -255,7 +253,7 @@ class Molecule:
|
|
|
255
253
|
|
|
256
254
|
def __init__(self, helm: str, monomer_df: MonomerLibrary | None = None):
|
|
257
255
|
"""Initialize a Molecule object from a HELM string."""
|
|
258
|
-
self.
|
|
256
|
+
self._mol = None
|
|
259
257
|
self.offset = []
|
|
260
258
|
self.bondlist = []
|
|
261
259
|
self.monomers = []
|
|
@@ -272,9 +270,14 @@ class Molecule:
|
|
|
272
270
|
self._parse_helm_string(helm)
|
|
273
271
|
self._build_molecule()
|
|
274
272
|
|
|
275
|
-
if not isinstance(self.
|
|
273
|
+
if not isinstance(self._mol, Chem.rdchem.Mol):
|
|
276
274
|
raise TypeError("Failed to initialize RDKit Mol object")
|
|
277
275
|
|
|
276
|
+
@property
|
|
277
|
+
def mol(self) -> Chem.Mol:
|
|
278
|
+
assert self._mol is not None
|
|
279
|
+
return self._mol
|
|
280
|
+
|
|
278
281
|
def _parse_helm_string(self, helm: str) -> None:
|
|
279
282
|
"""Parse a HELM string into molecular components."""
|
|
280
283
|
polymer_sections, connection_sections, hydrogen_bonds_sections, _, _ = (
|
|
@@ -344,7 +347,7 @@ class Molecule:
|
|
|
344
347
|
|
|
345
348
|
def _process_monomer(
|
|
346
349
|
self, monomer_name: str, chain_id: str, residue_idx: int, polymer_type: str
|
|
347
|
-
) -> MonomerData
|
|
350
|
+
) -> MonomerData:
|
|
348
351
|
"""Process a single monomer."""
|
|
349
352
|
monomer_name = (
|
|
350
353
|
monomer_name[1:-1]
|
|
@@ -375,25 +378,17 @@ class Molecule:
|
|
|
375
378
|
if m_type in self.monomer_df and monomer_name in self.monomer_df[m_type]:
|
|
376
379
|
monomer_info = self.monomer_df[m_type][monomer_name]
|
|
377
380
|
else:
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
self.monomer_df[m_type][monomer_name] = monomer_info
|
|
383
|
-
except ValueError as e:
|
|
384
|
-
warnings.warn(str(e))
|
|
385
|
-
return None
|
|
381
|
+
monomer_info = _create_missing_monomer(monomer_name, m_type)
|
|
382
|
+
if m_type not in self.monomer_df:
|
|
383
|
+
self.monomer_df[m_type] = {}
|
|
384
|
+
self.monomer_df[m_type][monomer_name] = monomer_info
|
|
386
385
|
|
|
387
386
|
return {
|
|
388
|
-
"m_name": monomer_name,
|
|
389
|
-
"m_chainID": chain_id,
|
|
390
|
-
"m_resID": residue_idx,
|
|
391
387
|
"m_romol": monomer_info["m_romol"],
|
|
392
388
|
"m_Rgroups": monomer_info["m_Rgroups"][:],
|
|
393
389
|
"m_RgroupIdx": monomer_info["m_RgroupIdx"],
|
|
394
390
|
"m_attachmentPointIdx": monomer_info["m_attachmentPointIdx"],
|
|
395
391
|
"m_type": monomer_info["m_type"],
|
|
396
|
-
"m_subtype": monomer_info["m_subtype"],
|
|
397
392
|
"m_abbr": monomer_info["m_abbr"],
|
|
398
393
|
}
|
|
399
394
|
|
|
@@ -464,12 +459,12 @@ class Molecule:
|
|
|
464
459
|
attachment_point1 = monomer1["m_attachmentPointIdx"][1]
|
|
465
460
|
if attachment_point1 is None:
|
|
466
461
|
raise ValueError(
|
|
467
|
-
f"R-group 2 is not present in monomer {monomer_idx} ({monomer1['
|
|
462
|
+
f"R-group 2 is not present in monomer {monomer_idx} ({monomer1['m_abbr']}). Check monomers."
|
|
468
463
|
)
|
|
469
464
|
attachment_point2 = monomer2["m_attachmentPointIdx"][0]
|
|
470
465
|
if attachment_point2 is None:
|
|
471
466
|
raise ValueError(
|
|
472
|
-
f"R-group 1 is not present in monomer {monomer_idx + 1} ({monomer2['
|
|
467
|
+
f"R-group 1 is not present in monomer {monomer_idx + 1} ({monomer2['m_abbr']}). Check monomers."
|
|
473
468
|
)
|
|
474
469
|
|
|
475
470
|
self.bondlist.append([
|
|
@@ -518,12 +513,12 @@ class Molecule:
|
|
|
518
513
|
attachment_point1 = None
|
|
519
514
|
if attachment_point1 is None:
|
|
520
515
|
raise ValueError(
|
|
521
|
-
f"R-group {r_index + 1} is not present in monomer {prev_monomer} ({monomer1['
|
|
516
|
+
f"R-group {r_index + 1} is not present in monomer {prev_monomer} ({monomer1['m_abbr']}). Check monomers."
|
|
522
517
|
)
|
|
523
518
|
attachment_point2 = monomer2["m_attachmentPointIdx"][0]
|
|
524
519
|
if attachment_point2 is None:
|
|
525
520
|
raise ValueError(
|
|
526
|
-
f"R-group 1 is not present in monomer {monomer_idx} ({monomer2['
|
|
521
|
+
f"R-group 1 is not present in monomer {monomer_idx} ({monomer2['m_abbr']}). Check monomers."
|
|
527
522
|
)
|
|
528
523
|
|
|
529
524
|
self.bondlist.append([
|
|
@@ -609,12 +604,12 @@ class Molecule:
|
|
|
609
604
|
attachment_idx1 = monomer1["m_attachmentPointIdx"][rgroup1]
|
|
610
605
|
if attachment_idx1 is None:
|
|
611
606
|
raise ValueError(
|
|
612
|
-
f"R-group {rgroup1} is not present in monomer {monomer_idx1 + 1} ({monomer1['
|
|
607
|
+
f"R-group {rgroup1} is not present in monomer {monomer_idx1 + 1} ({monomer1['m_abbr']}). Check connections."
|
|
613
608
|
)
|
|
614
609
|
attachment_idx2 = monomer2["m_attachmentPointIdx"][rgroup2]
|
|
615
610
|
if attachment_idx2 is None:
|
|
616
611
|
raise ValueError(
|
|
617
|
-
f"R-group {rgroup2} is not present in monomer {monomer_idx2 + 1} ({monomer2['
|
|
612
|
+
f"R-group {rgroup2} is not present in monomer {monomer_idx2 + 1} ({monomer2['m_abbr']}). Check connections."
|
|
618
613
|
)
|
|
619
614
|
|
|
620
615
|
self.bondlist.append([
|
|
@@ -657,30 +652,30 @@ class Molecule:
|
|
|
657
652
|
def _build_molecule(self) -> None:
|
|
658
653
|
"""Build the RDKit molecule from parsed monomer and bond data."""
|
|
659
654
|
if not self.monomers:
|
|
660
|
-
self.
|
|
655
|
+
self._mol = Chem.RWMol()
|
|
661
656
|
return
|
|
662
657
|
|
|
663
658
|
monomer = self.monomers[0]
|
|
664
|
-
self.
|
|
659
|
+
self._mol = Chem.RWMol(monomer["m_romol"])
|
|
665
660
|
|
|
666
661
|
rgroups = monomer["m_Rgroups"]
|
|
667
662
|
rgroup_idx = monomer["m_RgroupIdx"]
|
|
668
663
|
for i in range(min(len(rgroups), SequenceConstants.max_rgroups)):
|
|
669
664
|
if rgroups[i] is not None:
|
|
670
|
-
self._replace_rgroup(self.
|
|
665
|
+
self._replace_rgroup(self._mol, 0, rgroup_idx[i], rgroups[i])
|
|
671
666
|
|
|
672
|
-
current_offset = self.
|
|
667
|
+
current_offset = self._mol.GetNumAtoms()
|
|
673
668
|
self.offset = [0, current_offset]
|
|
674
669
|
|
|
675
670
|
for monomer in self.monomers[1:]:
|
|
676
|
-
self.
|
|
671
|
+
self._mol.InsertMol(monomer["m_romol"])
|
|
677
672
|
|
|
678
673
|
rgroups = monomer["m_Rgroups"]
|
|
679
674
|
rgroup_idx = monomer["m_RgroupIdx"]
|
|
680
675
|
for i in range(min(len(rgroups), SequenceConstants.max_rgroups)):
|
|
681
676
|
if rgroups[i] is not None:
|
|
682
677
|
self._replace_rgroup(
|
|
683
|
-
self.
|
|
678
|
+
self._mol, current_offset, rgroup_idx[i], rgroups[i]
|
|
684
679
|
)
|
|
685
680
|
|
|
686
681
|
atom_count = monomer["m_romol"].GetNumAtoms()
|
|
@@ -720,7 +715,7 @@ class Molecule:
|
|
|
720
715
|
pattern = Chem.MolFromSmarts("[#0]")
|
|
721
716
|
matches = self.mol.GetSubstructMatches(pattern)
|
|
722
717
|
atoms_to_delete = sorted({idx for match in matches for idx in match})
|
|
723
|
-
self.
|
|
718
|
+
self._mol = Chem.DeleteSubstructs(self._mol, pattern)
|
|
724
719
|
|
|
725
720
|
def correction(offset: int, idx: int) -> int:
|
|
726
721
|
return bisect.bisect_left(atoms_to_delete, idx) - bisect.bisect_left(
|
|
@@ -165,7 +165,7 @@ wheels = [
|
|
|
165
165
|
|
|
166
166
|
[[package]]
|
|
167
167
|
name = "helmkit"
|
|
168
|
-
version = "0.7.
|
|
168
|
+
version = "0.7.4"
|
|
169
169
|
source = { editable = "." }
|
|
170
170
|
dependencies = [
|
|
171
171
|
{ name = "rdkit" },
|
|
@@ -553,54 +553,54 @@ wheels = [
|
|
|
553
553
|
|
|
554
554
|
[[package]]
|
|
555
555
|
name = "polars"
|
|
556
|
-
version = "1.43.
|
|
556
|
+
version = "1.43.2"
|
|
557
557
|
source = { registry = "https://pypi.org/simple" }
|
|
558
558
|
dependencies = [
|
|
559
559
|
{ name = "polars-runtime-32" },
|
|
560
560
|
]
|
|
561
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
561
|
+
sdist = { url = "https://files.pythonhosted.org/packages/89/13/3873f213304bcbaaf39e63c8b905ceb460a0524448d57f86a829f6d4d0fd/polars-1.43.2.tar.gz", hash = "sha256:c699671b99eb71ff53334d237917aaa3db5ad4dda480abcb6c80e0eaee7b677b", size = 750312, upload-time = "2026-08-01T06:28:30.872Z" }
|
|
562
562
|
wheels = [
|
|
563
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
563
|
+
{ url = "https://files.pythonhosted.org/packages/2b/fe/0888040a24e4504098b85d8ad486b14cb01cf6b030bbe479dfc2dcffc2ac/polars-1.43.2-py3-none-any.whl", hash = "sha256:22aa0cb92a1ee2d60d6a15a638b2e8e0dd99aea21ac0cd8fb29da8e382e075a9", size = 847150, upload-time = "2026-08-01T06:27:15.543Z" },
|
|
564
564
|
]
|
|
565
565
|
|
|
566
566
|
[[package]]
|
|
567
567
|
name = "polars-runtime-32"
|
|
568
|
-
version = "1.43.
|
|
568
|
+
version = "1.43.2"
|
|
569
569
|
source = { registry = "https://pypi.org/simple" }
|
|
570
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
570
|
+
sdist = { url = "https://files.pythonhosted.org/packages/d4/06/11b578eeef05f867e3ee31b2a2fdd8e7684c2aa47822c49935d1be789c38/polars_runtime_32-1.43.2.tar.gz", hash = "sha256:d7b7c486bccee75a6af0158b87077da3d054657e3c60036b28644f4e1c7fdbf7", size = 3095669, upload-time = "2026-08-01T06:28:32.315Z" }
|
|
571
571
|
wheels = [
|
|
572
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
573
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
574
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
575
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
576
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
577
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
578
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
579
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
572
|
+
{ url = "https://files.pythonhosted.org/packages/59/fc/12e6d4ca34d820297651134cfa35f86c33e898539fc6629cbb35d0089697/polars_runtime_32-1.43.2-cp310-abi3-macosx_10_12_x86_64.whl", hash = "sha256:91abf205d4ec93f92ba95386b7f8776559ae3dfce425ed2e527efa75d117d04a", size = 53088908, upload-time = "2026-08-01T06:27:18.268Z" },
|
|
573
|
+
{ url = "https://files.pythonhosted.org/packages/32/81/833b0853551deb810854f96b43dea342b6e6c9b0ea1afcccf774157d519d/polars_runtime_32-1.43.2-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:2cc3ff96fd44789b02eb5c15b98dfcb000101636b177d3034fae2feec19b118f", size = 47540529, upload-time = "2026-08-01T06:27:21.391Z" },
|
|
574
|
+
{ url = "https://files.pythonhosted.org/packages/83/55/7b2a75af14c9294d97f3bec132dd3018ddcd988bef32b5d28322150b8c11/polars_runtime_32-1.43.2-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:10ed36e615ab362feb7406e6d084e124b445ad284caa73bd93ae7e65745ed894", size = 51366340, upload-time = "2026-08-01T06:27:24.776Z" },
|
|
575
|
+
{ url = "https://files.pythonhosted.org/packages/62/60/64deacb3abc70c52e2d88a808a052d1621c86a48fe9194f2c065579ab1cd/polars_runtime_32-1.43.2-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d5a7ae004a2723ebf4427f6d6a639f30f86af4cf077075f6b35d04711154fc3", size = 57304599, upload-time = "2026-08-01T06:27:27.875Z" },
|
|
576
|
+
{ url = "https://files.pythonhosted.org/packages/52/95/d6e3a236d7630e17c40d0ddee839bf2be9acf548fdc0e5ad65ed9ff0cac6/polars_runtime_32-1.43.2-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:09339eacc6d392206e78aabbaaa37d7276eb969b798f46cb1f367fd718798c60", size = 51520580, upload-time = "2026-08-01T06:27:30.913Z" },
|
|
577
|
+
{ url = "https://files.pythonhosted.org/packages/b6/5a/2deb8eac70e9a2ac26d88a66ae7cf52612865026f4f4a5e7ab11ad9d52bf/polars_runtime_32-1.43.2-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:452b400e59e7f56e4c6437f435e796903272a9388feee12de2bea049ae87025e", size = 55204471, upload-time = "2026-08-01T06:27:33.886Z" },
|
|
578
|
+
{ url = "https://files.pythonhosted.org/packages/29/9e/647401ae8a607bc0cc40ed7b8592d5b1be90ded0dc9b9d6d3aeb03f9524b/polars_runtime_32-1.43.2-cp310-abi3-win_amd64.whl", hash = "sha256:00e33c28e321410c8d66e814a90043101e3bdd9ed2c6dabda07565aa8adbbdf1", size = 52572176, upload-time = "2026-08-01T06:27:37.048Z" },
|
|
579
|
+
{ url = "https://files.pythonhosted.org/packages/96/8d/60a50c3f36c85218a7ffcb48c6fe2ce1f7bec799152d68b8658ebed2179c/polars_runtime_32-1.43.2-cp310-abi3-win_arm64.whl", hash = "sha256:350a4868cae85bf8b3f81b33ba47927c15256bd9264dfc8c0753f1b927eac9d3", size = 46582513, upload-time = "2026-08-01T06:27:40.025Z" },
|
|
580
580
|
]
|
|
581
581
|
|
|
582
582
|
[[package]]
|
|
583
583
|
name = "prek"
|
|
584
|
-
version = "0.4.
|
|
584
|
+
version = "0.4.12"
|
|
585
585
|
source = { registry = "https://pypi.org/simple" }
|
|
586
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
586
|
+
sdist = { url = "https://files.pythonhosted.org/packages/fc/5c/cb6e63f7e5a58a5313ddb70409174f4dc004e4b0910b8a8d3f59b2225a95/prek-0.4.12.tar.gz", hash = "sha256:04beeba7f40437cd2f36804b84101bd7f3c9fb40b52da46a25604642ab2bfb09", size = 519080, upload-time = "2026-08-03T11:28:33.147Z" }
|
|
587
587
|
wheels = [
|
|
588
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
589
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
590
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
591
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
592
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
593
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
594
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
595
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
596
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
597
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
598
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
599
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
600
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
601
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
602
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
603
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
588
|
+
{ url = "https://files.pythonhosted.org/packages/f3/23/5811a3161e072e5f93e4da01af611ee30c32922507b8ab4d9873df6affd3/prek-0.4.12-py3-none-linux_armv6l.whl", hash = "sha256:cd92000b051e433f26340821cf1cc8e6e3960f1275f3d516ca01f05905abba64", size = 5793226, upload-time = "2026-08-03T11:28:09.534Z" },
|
|
589
|
+
{ url = "https://files.pythonhosted.org/packages/a3/88/8607845d94eb1482e1bd335dadf098618f077a15775f7e98de99669052b4/prek-0.4.12-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:5904fe6c6ab26e7d8792a3c7f1e3fc8d94fcfb63ad33b247c35f004b62cb6275", size = 6132269, upload-time = "2026-08-03T11:28:11.147Z" },
|
|
590
|
+
{ url = "https://files.pythonhosted.org/packages/ac/28/571d79ba457fbd9ecf40ae879c91952e12f5fa475306218c91139b86db7a/prek-0.4.12-py3-none-macosx_11_0_arm64.whl", hash = "sha256:df3eff1db9c24dc293010a07bc7a0ae0c541d55af828f5586405dedc28c4920d", size = 5614964, upload-time = "2026-08-03T11:28:12.983Z" },
|
|
591
|
+
{ url = "https://files.pythonhosted.org/packages/b0/a9/3f5cb79a73c764a8ac38d5bcd51e0df57239856eca7949b09bdac4338bf3/prek-0.4.12-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl", hash = "sha256:c7733b44ca772ea32ec6a8bee669d0358bdf45873e79767afed196065084f31c", size = 5941047, upload-time = "2026-08-03T11:28:14.45Z" },
|
|
592
|
+
{ url = "https://files.pythonhosted.org/packages/8c/00/1dfed0ef8af10c5c32aa903486dccd33d2df171f3d945a037c5692f10760/prek-0.4.12-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:87f170cf1ffd6e3a196f947b83dff1f6c2cd68635f8d49740278bebe7b682262", size = 5707994, upload-time = "2026-08-03T11:28:15.914Z" },
|
|
593
|
+
{ url = "https://files.pythonhosted.org/packages/c0/bd/5f388f6cbdc0445b850e7c1a160d0be67fcef8bf221e3c8141a1feccef17/prek-0.4.12-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:57dad513831f060cf73808df8edec29d46ec311435aa69f21c80edebf23dc5e1", size = 6133784, upload-time = "2026-08-03T11:28:17.184Z" },
|
|
594
|
+
{ url = "https://files.pythonhosted.org/packages/ba/47/342091a987bf68a74acec6d226a40ce7d51faf0019aa4126cc7bc952f8a7/prek-0.4.12-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b204844abc7ded983471f576ae8dc13b99e9b8d022e4d4b46176c6654769c9d8", size = 6901589, upload-time = "2026-08-03T11:28:18.545Z" },
|
|
595
|
+
{ url = "https://files.pythonhosted.org/packages/5b/8a/3ef7bdc3c3441649ebc040b9e164a13163e1e5fabae23e7bbb901992f3de/prek-0.4.12-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43b0a5a9d3f2f77871fdcb7893bfc5c8fe7e44f4e603ce6e4712bfec96b2d6f2", size = 6342189, upload-time = "2026-08-03T11:28:20Z" },
|
|
596
|
+
{ url = "https://files.pythonhosted.org/packages/c4/da/6277908442301b1b92a2879f6b04aaa03accb900f80e42776fc28b8197ef/prek-0.4.12-py3-none-manylinux_2_28_aarch64.whl", hash = "sha256:0d188e572c306cc44b96e1bae5647e25b7bd311113f3f3f4a67320c257ee64a3", size = 5951250, upload-time = "2026-08-03T11:28:21.339Z" },
|
|
597
|
+
{ url = "https://files.pythonhosted.org/packages/a3/68/bff51a7332837edb1ecbe017325adb7fafd69b9c7828ddc81a1334b884af/prek-0.4.12-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:986f52d104b7066190f0f32aebe3467710356de265e9bfd892101ba99371db4d", size = 5804147, upload-time = "2026-08-03T11:28:22.656Z" },
|
|
598
|
+
{ url = "https://files.pythonhosted.org/packages/aa/de/b7f544971072ed7814125145dfeb1f7c15cce6b78ccea65a96298ff37838/prek-0.4.12-py3-none-musllinux_1_1_armv7l.whl", hash = "sha256:13e34d9e09bafcbf1f25a01cf86985e2c5e486591d3f45b2786ba3de82e5153a", size = 5680104, upload-time = "2026-08-03T11:28:24.271Z" },
|
|
599
|
+
{ url = "https://files.pythonhosted.org/packages/68/94/95942bcc20a6a91ec2989aa30fdeb00ad095be736ec48b4bbcf0376166b1/prek-0.4.12-py3-none-musllinux_1_1_i686.whl", hash = "sha256:3d0208370da73e8b5bc97f2492dc3975f8dd2c22f4bf6e1f2cf3342503764b52", size = 5975030, upload-time = "2026-08-03T11:28:25.683Z" },
|
|
600
|
+
{ url = "https://files.pythonhosted.org/packages/ef/6d/26e6497198d81cf9aa82495400aef46adea8df3e4a4efc5f00e3b6ab3292/prek-0.4.12-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:b1005f42920111bec1403c25e8f2f12ec7af0be06686cc3b8dcf85429af908a8", size = 6458532, upload-time = "2026-08-03T11:28:27.121Z" },
|
|
601
|
+
{ url = "https://files.pythonhosted.org/packages/44/02/ee140c2eb4701bd194db429d84630733492be94897d5f72b61d6f11e6619/prek-0.4.12-py3-none-win32.whl", hash = "sha256:afee229488dcceaea282288e4d7096a93da5a8b85649d9ef506dbdbcd78f38a7", size = 5502213, upload-time = "2026-08-03T11:28:28.691Z" },
|
|
602
|
+
{ url = "https://files.pythonhosted.org/packages/e5/7b/744cff84def48c1ce38c0b4f643a3553c66976c5bb7869ab7317044870e4/prek-0.4.12-py3-none-win_amd64.whl", hash = "sha256:fdd27bad8adafea8fe77606950ca09200d59296a47ab131cfb88718d460949d7", size = 5868065, upload-time = "2026-08-03T11:28:30.377Z" },
|
|
603
|
+
{ url = "https://files.pythonhosted.org/packages/46/1d/e2c0fc222904ef73df1739b11a83edc29e38bc4bc61259f2ca6d2f15abb0/prek-0.4.12-py3-none-win_arm64.whl", hash = "sha256:45e34a24fba4a4e4568682477158591698efc2375b8d1d418ae424691c4bd01b", size = 5632819, upload-time = "2026-08-03T11:28:31.743Z" },
|
|
604
604
|
]
|
|
605
605
|
|
|
606
606
|
[[package]]
|
|
@@ -668,7 +668,7 @@ wheels = [
|
|
|
668
668
|
|
|
669
669
|
[[package]]
|
|
670
670
|
name = "rdkit"
|
|
671
|
-
version = "2026.3.
|
|
671
|
+
version = "2026.3.5"
|
|
672
672
|
source = { registry = "https://pypi.org/simple" }
|
|
673
673
|
dependencies = [
|
|
674
674
|
{ name = "numpy", version = "2.4.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.12'" },
|
|
@@ -676,22 +676,22 @@ dependencies = [
|
|
|
676
676
|
{ name = "pillow" },
|
|
677
677
|
]
|
|
678
678
|
wheels = [
|
|
679
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
680
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
681
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
682
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
683
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
684
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
685
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
686
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
687
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
688
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
689
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
690
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
691
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
692
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
693
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
694
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
679
|
+
{ url = "https://files.pythonhosted.org/packages/99/9f/60a2bb04417e7d84cac157d7d1bb6472a72f6c9eef475396c3330eaa6ee8/rdkit-2026.3.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f3b0102b8d8a2f45faf039d31440e7fcf0dcd423d1416def321e2d772b270f41", size = 29896240, upload-time = "2026-08-03T09:07:18.153Z" },
|
|
680
|
+
{ url = "https://files.pythonhosted.org/packages/1d/bd/6ef0dce1657aaf3663d0a879f32500dc040dee9d056d2a75e6951839c798/rdkit-2026.3.5-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:ed230d8d085a85aa45e02509689ea181aad3a1ddcc9aed7f03d03fede8bbee7f", size = 36016367, upload-time = "2026-08-03T09:07:22.675Z" },
|
|
681
|
+
{ url = "https://files.pythonhosted.org/packages/22/5d/2a49e695c60d954f08f81cc0ca98366f4a029075e6e3b6604d72a4eeee51/rdkit-2026.3.5-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:989323fee0059fa468f408f86012e3bbd3252fa9d0355382cc22c29d1cb0cd78", size = 37513291, upload-time = "2026-08-03T09:07:27.194Z" },
|
|
682
|
+
{ url = "https://files.pythonhosted.org/packages/d8/fc/0b367709984cdbaf816a3b4b82af9beb0a778b1f1250783a5ce69f9a99c3/rdkit-2026.3.5-cp311-cp311-win_amd64.whl", hash = "sha256:47ae231c5e8aa03359b91e9639025501cc966b17cc9d8f4ea9f0fcf14bfdb469", size = 24726623, upload-time = "2026-08-03T09:07:30.727Z" },
|
|
683
|
+
{ url = "https://files.pythonhosted.org/packages/8c/03/bbc5e9d4aaa2f1c4a942bbeb0c6eff79e56ec370ad8670e029ae6d156489/rdkit-2026.3.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:74e621083f26360ae3128b2c283def72e1729c114577c58115294b1cefe0200b", size = 29938929, upload-time = "2026-08-03T09:07:34.356Z" },
|
|
684
|
+
{ url = "https://files.pythonhosted.org/packages/c5/92/3029aca05b70d6da7208332bf7487fd93f10d18e897b10ec3d9a29ce437b/rdkit-2026.3.5-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:d6c6b167b4c795468cdd273d35a323226dddbeb204aa34350257ad26d5dfd024", size = 35892992, upload-time = "2026-08-03T09:07:37.816Z" },
|
|
685
|
+
{ url = "https://files.pythonhosted.org/packages/17/66/1ef1960ffa751df4f6ed05a76ba677e331ce451902f319d14c3f8ae81215/rdkit-2026.3.5-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:b75944ba959d908e97b4d68754e5950216ac08aa81faf67cfd1d7a3cb5b2bad7", size = 37439795, upload-time = "2026-08-03T09:07:41.439Z" },
|
|
686
|
+
{ url = "https://files.pythonhosted.org/packages/7b/6b/f47f05702b4acab5c6162e181b0ef31b8e1fdb8809da2f4bd2968b13b70d/rdkit-2026.3.5-cp312-cp312-win_amd64.whl", hash = "sha256:b60a2b6e8e2cecd89f775c6a3e691d3dacc5ae05cf521154822e7e5a54602825", size = 24746892, upload-time = "2026-08-03T09:07:44.678Z" },
|
|
687
|
+
{ url = "https://files.pythonhosted.org/packages/bb/b7/0bdc51f7fe13c84466ddcd9c82a440abe32e0b50b1deea70d8598ccb6f5f/rdkit-2026.3.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f56eb842b8c0716348b31fc97fe0c6581fc39d32567085f19f96bd7f51f0a96c", size = 29937954, upload-time = "2026-08-03T09:07:48.169Z" },
|
|
688
|
+
{ url = "https://files.pythonhosted.org/packages/94/d2/9ff361bcf64fb4897a6ed3957173032d7ce571ac3fa6f7dd86dd9805cb7a/rdkit-2026.3.5-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:91358e266e5189c2402cc8c7df1f34688ec9e25a7235f2191b829f92fadc56df", size = 35892303, upload-time = "2026-08-03T09:07:51.983Z" },
|
|
689
|
+
{ url = "https://files.pythonhosted.org/packages/6f/c6/9e51ca59bbe53c44299f8f750f07c5e39b16f990c9de999d6454d1300503/rdkit-2026.3.5-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:04a75a048cd61ef934fd2fd474ff426f40cf22e83fe8cd038d1563d695f7e314", size = 37438348, upload-time = "2026-08-03T09:07:56.025Z" },
|
|
690
|
+
{ url = "https://files.pythonhosted.org/packages/6c/56/e442c85c1390bab7bce137e243aab94ce704a6957e7bc308a9e20d7497d8/rdkit-2026.3.5-cp313-cp313-win_amd64.whl", hash = "sha256:91b31d4ce9f380a09fb263a882d4d8a97eee3dca54acca5b9c568d9bc859dc96", size = 24745767, upload-time = "2026-08-03T09:07:59.238Z" },
|
|
691
|
+
{ url = "https://files.pythonhosted.org/packages/0f/1f/654a3c6364ff0eeca92f140911507497bc8a9a450b3612fc42d889bdc338/rdkit-2026.3.5-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:74c5b98da1d52e83f42ceffcc9dc91fcb0b7615eab82e9a1e736aeb4a6c1cb0e", size = 29959835, upload-time = "2026-08-03T09:08:02.751Z" },
|
|
692
|
+
{ url = "https://files.pythonhosted.org/packages/65/5c/57bd9b2c2109bc5c749cc6d90f0ea0df9aa28a5db82a4fc2c91f9078fdff/rdkit-2026.3.5-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:7fa98cb6ad79238c7a9cf0a7b42c8abbfed659e9ab5f7b2cba9b17db2915653c", size = 35929201, upload-time = "2026-08-03T09:08:06.416Z" },
|
|
693
|
+
{ url = "https://files.pythonhosted.org/packages/92/32/95245f5960b168ea4503529d174e48da5034ed14e8fc170f3a4ab9c3c269/rdkit-2026.3.5-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:b79c185602aa21bdfd1f01daae7171598090ee4c4d984d5544905b5318d29288", size = 37451351, upload-time = "2026-08-03T09:08:10.1Z" },
|
|
694
|
+
{ url = "https://files.pythonhosted.org/packages/cc/e3/e6442f51afed6ed9e75468576721a7df1a64d20306d30201824dc6b8682b/rdkit-2026.3.5-cp314-cp314-win_amd64.whl", hash = "sha256:f0096fdc40ab259151a04933e8201d877f5d274966680c922cd63d3cffb330aa", size = 25241121, upload-time = "2026-08-03T09:08:13.605Z" },
|
|
695
695
|
]
|
|
696
696
|
|
|
697
697
|
[[package]]
|
|
@@ -750,14 +750,14 @@ wheels = [
|
|
|
750
750
|
|
|
751
751
|
[[package]]
|
|
752
752
|
name = "tqdm"
|
|
753
|
-
version = "4.
|
|
753
|
+
version = "4.70.0"
|
|
754
754
|
source = { registry = "https://pypi.org/simple" }
|
|
755
755
|
dependencies = [
|
|
756
756
|
{ name = "colorama", marker = "sys_platform == 'win32'" },
|
|
757
757
|
]
|
|
758
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
758
|
+
sdist = { url = "https://files.pythonhosted.org/packages/21/3b/6c24bec5be5e743ffd99576daa5cc077722fc7d5bbc00bd133fa0c698dc6/tqdm-4.70.0.tar.gz", hash = "sha256:55b0b0dbd97462d06ebee91e4dac24ed4d4702be82b24f07e6c1d27e08cea220", size = 795438, upload-time = "2026-07-27T11:33:15.271Z" }
|
|
759
759
|
wheels = [
|
|
760
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
760
|
+
{ url = "https://files.pythonhosted.org/packages/f9/1c/01bfd571a64e7f270e6bab5e33777debe0edc56759233ce84f27dec92d14/tqdm-4.70.0-py3-none-any.whl", hash = "sha256:7f585706bfddbdebf89daac705b2dfcc16890130727d3197ca62c732b4310953", size = 80184, upload-time = "2026-07-27T11:33:13.167Z" },
|
|
761
761
|
]
|
|
762
762
|
|
|
763
763
|
[[package]]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|