rowan-python 3.0.6__tar.gz → 3.0.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 (132) hide show
  1. {rowan_python-3.0.6 → rowan_python-3.0.7}/PKG-INFO +1 -1
  2. rowan_python-3.0.7/examples/pocket_detection.py +28 -0
  3. {rowan_python-3.0.6 → rowan_python-3.0.7}/pixi.lock +88 -89
  4. {rowan_python-3.0.6 → rowan_python-3.0.7}/pyproject.toml +1 -1
  5. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/__init__.py +1 -0
  6. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/electronic_properties.py +11 -1
  7. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/pka.py +10 -1
  8. rowan_python-3.0.7/rowan/workflows/pocket_detection.py +112 -0
  9. {rowan_python-3.0.6 → rowan_python-3.0.7}/.envrc +0 -0
  10. {rowan_python-3.0.6 → rowan_python-3.0.7}/.github/workflows/build-and-deploy-docs.yml +0 -0
  11. {rowan_python-3.0.6 → rowan_python-3.0.7}/.github/workflows/python-publish.yml +0 -0
  12. {rowan_python-3.0.6 → rowan_python-3.0.7}/.github/workflows/test.yml +0 -0
  13. {rowan_python-3.0.6 → rowan_python-3.0.7}/.gitignore +0 -0
  14. {rowan_python-3.0.6 → rowan_python-3.0.7}/.pre-commit-config.yaml +0 -0
  15. {rowan_python-3.0.6 → rowan_python-3.0.7}/AGENTS.md +0 -0
  16. {rowan_python-3.0.6 → rowan_python-3.0.7}/CLAUDE.md +0 -0
  17. {rowan_python-3.0.6 → rowan_python-3.0.7}/GEMINI.md +0 -0
  18. {rowan_python-3.0.6 → rowan_python-3.0.7}/LICENSE +0 -0
  19. {rowan_python-3.0.6 → rowan_python-3.0.7}/README.md +0 -0
  20. {rowan_python-3.0.6 → rowan_python-3.0.7}/docs/images/deciduous-tree-favicon.png +0 -0
  21. {rowan_python-3.0.6 → rowan_python-3.0.7}/docs/index.md +0 -0
  22. {rowan_python-3.0.6 → rowan_python-3.0.7}/docs/rowan_rdkit.md +0 -0
  23. {rowan_python-3.0.6 → rowan_python-3.0.7}/docs/stylesheets/colors.css +0 -0
  24. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/PROTAC_solubility.py +0 -0
  25. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/admet.py +0 -0
  26. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/analogue_docking.py +0 -0
  27. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/aqueous_solubility.py +0 -0
  28. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/basic_calculation.py +0 -0
  29. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/basic_calculation_from_json.py +0 -0
  30. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/basic_calculation_with_constraint.py +0 -0
  31. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/basic_calculation_with_solvent.py +0 -0
  32. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/batch_docking.py +0 -0
  33. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/bde.py +0 -0
  34. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/boltz_paired_msa.py +0 -0
  35. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/boltz_single_msa.py +0 -0
  36. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/chai_paired_msa.py +0 -0
  37. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/chai_single_msa.py +0 -0
  38. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/cofolding_screen.py +0 -0
  39. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/colabfold_paired_msa.py +0 -0
  40. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/colabfold_single_msa.py +0 -0
  41. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/conformer_dependent_redox.py +0 -0
  42. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/conformers.py +0 -0
  43. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/data/1iep_receptorH.pdb +0 -0
  44. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/data/Al_FCC.xyz +0 -0
  45. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/data/citalopram_1iep.xyz +0 -0
  46. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/data/tyk2_ligands.sdf +0 -0
  47. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/data/tyk2_structure.pdb +0 -0
  48. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/data/workflow_example.json +0 -0
  49. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/dcd_download.py +0 -0
  50. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/descriptors.py +0 -0
  51. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/docking_screen.py +0 -0
  52. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/double_ended_ts_search.py +0 -0
  53. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/electronic_properties.py +0 -0
  54. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/estimate_workflow.py +0 -0
  55. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/fukui_index.py +0 -0
  56. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/hydrogen_bond_basicity.py +0 -0
  57. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/interaction_energy_decomposition.py +0 -0
  58. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/ion_mobility.py +0 -0
  59. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/irc.py +0 -0
  60. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/macropka.py +0 -0
  61. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/membrane_permeability.py +0 -0
  62. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/multistage_optimization.py +0 -0
  63. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/nmr.py +0 -0
  64. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/optimization.py +0 -0
  65. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/pdb_download.py +0 -0
  66. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/periodic_dft.py +0 -0
  67. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/phenol_pka.py +0 -0
  68. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/pka.py +0 -0
  69. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/pose_analysis_md.py +0 -0
  70. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/protein_binder_design.py +0 -0
  71. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/protein_cofolding.py +0 -0
  72. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/protein_md.py +0 -0
  73. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/rbfe_graph.py +0 -0
  74. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/redox_potential.py +0 -0
  75. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/relative_binding_free_energy_perturbation.py +0 -0
  76. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/retrieve_workflow.py +0 -0
  77. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/scan.py +0 -0
  78. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/solvent_dependent_conformers.py +0 -0
  79. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/spin_states.py +0 -0
  80. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/strain.py +0 -0
  81. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/tautomer.py +0 -0
  82. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/template.py +0 -0
  83. {rowan_python-3.0.6 → rowan_python-3.0.7}/examples/webhook.py +0 -0
  84. {rowan_python-3.0.6 → rowan_python-3.0.7}/mkdocs.yml +0 -0
  85. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/__init__.py +0 -0
  86. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/calculation.py +0 -0
  87. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/config.py +0 -0
  88. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/constants.py +0 -0
  89. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/folder.py +0 -0
  90. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/molecule.py +0 -0
  91. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/project.py +0 -0
  92. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/protein.py +0 -0
  93. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/py.typed +0 -0
  94. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/rowan_rdkit/__init__.py +0 -0
  95. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/rowan_rdkit/chem_utils.py +0 -0
  96. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/types.py +0 -0
  97. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/user.py +0 -0
  98. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/utils.py +0 -0
  99. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/admet.py +0 -0
  100. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/analogue_docking.py +0 -0
  101. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/base.py +0 -0
  102. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/basic_calculation.py +0 -0
  103. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/batch_docking.py +0 -0
  104. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/bde.py +0 -0
  105. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/conformer_search.py +0 -0
  106. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/constants.py +0 -0
  107. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/descriptors.py +0 -0
  108. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/docking.py +0 -0
  109. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/double_ended_ts_search.py +0 -0
  110. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/fukui.py +0 -0
  111. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/hydrogen_bond_donor_acceptor_strength.py +0 -0
  112. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/interaction_energy_decomposition.py +0 -0
  113. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/ion_mobility.py +0 -0
  114. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/irc.py +0 -0
  115. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/macropka.py +0 -0
  116. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/membrane_permeability.py +0 -0
  117. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/msa.py +0 -0
  118. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/multistage_optimization.py +0 -0
  119. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/nmr.py +0 -0
  120. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/pose_analysis_md.py +0 -0
  121. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/protein_binder_design.py +0 -0
  122. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/protein_cofolding.py +0 -0
  123. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/protein_md.py +0 -0
  124. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/rbfe_graph.py +0 -0
  125. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/redox_potential.py +0 -0
  126. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/relative_binding_free_energy_perturbation.py +0 -0
  127. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/scan.py +0 -0
  128. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/solubility.py +0 -0
  129. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/solvent_dependent_conformers.py +0 -0
  130. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/spin_states.py +0 -0
  131. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/strain.py +0 -0
  132. {rowan_python-3.0.6 → rowan_python-3.0.7}/rowan/workflows/tautomer_search.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rowan-python
3
- Version: 3.0.6
3
+ Version: 3.0.7
4
4
  Summary: Rowan Python Library
5
5
  Project-URL: Homepage, https://github.com/rowansci/rowan-client
6
6
  Project-URL: Bug Tracker, https://github.com/rowansci/rowan-client/issues
@@ -0,0 +1,28 @@
1
+ import rowan
2
+
3
+ # Set your API key or use the ROWAN_API_KEY environment variable
4
+ # rowan.api_key = "rowan-sk..."
5
+ folder = rowan.get_folder("examples")
6
+
7
+ protein = rowan.create_protein_from_pdb_id(
8
+ "thymidine phosphorylase", "1OTP", project_uuid=rowan.default_project().uuid
9
+ )
10
+
11
+ protein.prepare()
12
+
13
+ workflow = rowan.submit_pocket_detection_workflow(
14
+ protein=protein,
15
+ name="Pocket detection on thymidine phosphorylase",
16
+ folder=folder,
17
+ )
18
+
19
+ result = workflow.result()
20
+
21
+ print(f"Detected {len(result.pockets)} pocket(s):")
22
+ for i, pocket in enumerate(result.pockets):
23
+ print(f" Pocket {i}: score={pocket.score}, volume={pocket.volume} ų")
24
+ print(f" center={pocket.pocket_center}")
25
+ print(f" sides={pocket.pocket_sides}")
26
+ print(f" residues={pocket.residue_numbers}")
27
+
28
+ print(f"View workflow privately at: https://labs.rowansci.com/pocket-detection/{workflow.uuid}")
@@ -11,7 +11,7 @@ environments:
11
11
  linux-64:
12
12
  - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
13
13
  - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda
14
- - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
14
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.4.22-hbd8a1cb_0.conda
15
15
  - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda
16
16
  - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda
17
17
  - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda
@@ -34,18 +34,18 @@ environments:
34
34
  - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.7-hb78ec9c_6.conda
35
35
  - pypi: https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl
36
36
  - pypi: https://files.pythonhosted.org/packages/da/42/e921fccf5015463e32a3cf6ee7f980a6ed0f395ceeaa45060b61d86486c2/anyio-4.13.0-py3-none-any.whl
37
- - pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
37
+ - pypi: https://files.pythonhosted.org/packages/22/30/7cd8fdcdfbc5b869528b079bfb76dcdf6056b1a2097a662e5e8c04f42965/certifi-2026.4.22-py3-none-any.whl
38
38
  - pypi: https://files.pythonhosted.org/packages/47/5c/032c2d5a07fe4d4855fea851209cca2b6f03ebeb6d4e3afdb3358386a684/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
39
39
  - pypi: https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl
40
40
  - pypi: https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl
41
41
  - pypi: https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl
42
- - pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
42
+ - pypi: https://files.pythonhosted.org/packages/5d/13/ad7d7ca3808a898b4612b6fe93cde56b53f3034dcde235acb1f0e1df24c6/idna-3.13-py3-none-any.whl
43
43
  - pypi: https://files.pythonhosted.org/packages/cb/98/6af411189d9413534c3eb691182bff1f5c6d44ed2f93f2edfe52a1bbceb8/more_itertools-11.0.2-py3-none-any.whl
44
44
  - pypi: https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl
45
45
  - pypi: https://files.pythonhosted.org/packages/98/7c/21252050676612625449b4807d6b695b9ce8a7c9e1c197ee6216c8a65c7c/numpy-2.4.4-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
46
46
  - pypi: https://files.pythonhosted.org/packages/11/8d/d2532ad2a603ca2b93ad9f5135732124e57811d0168155852f37fbce2458/pillow-12.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
47
- - pypi: https://files.pythonhosted.org/packages/81/5a/2225f4c176dbfed0d809e848b50ef08f70e61daa667b7fa14b0d311ae44d/pydantic-2.13.1-py3-none-any.whl
48
- - pypi: https://files.pythonhosted.org/packages/76/fd/19d711e4e9331f9d77f222bffc202bf30ea0d74f6419046376bb82f244c8/pydantic_core-2.46.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
47
+ - pypi: https://files.pythonhosted.org/packages/f3/0a/fd7d723f8f8153418fb40cf9c940e82004fce7e987026b08a68a36dd3fe7/pydantic-2.13.3-py3-none-any.whl
48
+ - pypi: https://files.pythonhosted.org/packages/fd/86/ef96a4c6e79e7a2d0410826a68fbc0eccc0fd44aa733be199d5fcac3bb87/pydantic_core-2.46.3-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
49
49
  - pypi: https://files.pythonhosted.org/packages/27/60/41cf00319d2a01946854e634f9a5791b0370c08bffbe4d094b0743213f6c/rdkit-2026.3.1-cp314-cp314-manylinux_2_28_x86_64.whl
50
50
  - pypi: https://files.pythonhosted.org/packages/d7/8e/7540e8a2036f79a125c1d2ebadf69ed7901608859186c856fa0388ef4197/requests-2.33.1-py3-none-any.whl
51
51
  - pypi: https://files.pythonhosted.org/packages/9d/76/f789f7a86709c6b087c5a2f52f911838cad707cc613162401badc665acfe/setuptools-82.0.1-py3-none-any.whl
@@ -56,7 +56,7 @@ environments:
56
56
  - pypi: ./
57
57
  osx-arm64:
58
58
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda
59
- - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
59
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.4.22-hbd8a1cb_0.conda
60
60
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda
61
61
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda
62
62
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda
@@ -73,18 +73,18 @@ environments:
73
73
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/zstd-1.5.7-hbf9d68e_6.conda
74
74
  - pypi: https://files.pythonhosted.org/packages/78/b6/6307fbef88d9b5ee7421e68d78a9f162e0da4900bc5f5793f6d3d0e34fb8/annotated_types-0.7.0-py3-none-any.whl
75
75
  - pypi: https://files.pythonhosted.org/packages/da/42/e921fccf5015463e32a3cf6ee7f980a6ed0f395ceeaa45060b61d86486c2/anyio-4.13.0-py3-none-any.whl
76
- - pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
76
+ - pypi: https://files.pythonhosted.org/packages/22/30/7cd8fdcdfbc5b869528b079bfb76dcdf6056b1a2097a662e5e8c04f42965/certifi-2026.4.22-py3-none-any.whl
77
77
  - pypi: https://files.pythonhosted.org/packages/97/c8/c67cb8c70e19ef1960b97b22ed2a1567711de46c4ddf19799923adc836c2/charset_normalizer-3.4.7-cp314-cp314-macosx_10_15_universal2.whl
78
78
  - pypi: https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl
79
79
  - pypi: https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl
80
80
  - pypi: https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl
81
- - pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
81
+ - pypi: https://files.pythonhosted.org/packages/5d/13/ad7d7ca3808a898b4612b6fe93cde56b53f3034dcde235acb1f0e1df24c6/idna-3.13-py3-none-any.whl
82
82
  - pypi: https://files.pythonhosted.org/packages/cb/98/6af411189d9413534c3eb691182bff1f5c6d44ed2f93f2edfe52a1bbceb8/more_itertools-11.0.2-py3-none-any.whl
83
83
  - pypi: https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl
84
84
  - pypi: https://files.pythonhosted.org/packages/4c/39/8a320264a84404c74cc7e79715de85d6130fa07a0898f67fb5cd5bd79908/numpy-2.4.4-cp314-cp314-macosx_11_0_arm64.whl
85
85
  - pypi: https://files.pythonhosted.org/packages/ba/8c/1a9e46228571de18f8e28f16fabdfc20212a5d019f3e3303452b3f0a580d/pillow-12.2.0-cp314-cp314-macosx_11_0_arm64.whl
86
- - pypi: https://files.pythonhosted.org/packages/81/5a/2225f4c176dbfed0d809e848b50ef08f70e61daa667b7fa14b0d311ae44d/pydantic-2.13.1-py3-none-any.whl
87
- - pypi: https://files.pythonhosted.org/packages/d2/87/e9a905ddfcc2fd7bd862b340c02be6ab1f827922822d425513635d0ac774/pydantic_core-2.46.1-cp314-cp314-macosx_11_0_arm64.whl
86
+ - pypi: https://files.pythonhosted.org/packages/f3/0a/fd7d723f8f8153418fb40cf9c940e82004fce7e987026b08a68a36dd3fe7/pydantic-2.13.3-py3-none-any.whl
87
+ - pypi: https://files.pythonhosted.org/packages/24/35/e4066358a22e3e99519db370494c7528f5a2aa1367370e80e27e20283543/pydantic_core-2.46.3-cp314-cp314-macosx_11_0_arm64.whl
88
88
  - pypi: https://files.pythonhosted.org/packages/6a/a4/c05a31806eaf366af246903230fe441cef8b7949cc4592656025ac8975e6/rdkit-2026.3.1-cp314-cp314-macosx_11_0_arm64.whl
89
89
  - pypi: https://files.pythonhosted.org/packages/d7/8e/7540e8a2036f79a125c1d2ebadf69ed7901608859186c856fa0388ef4197/requests-2.33.1-py3-none-any.whl
90
90
  - pypi: https://files.pythonhosted.org/packages/9d/76/f789f7a86709c6b087c5a2f52f911838cad707cc613162401badc665acfe/setuptools-82.0.1-py3-none-any.whl
@@ -104,7 +104,7 @@ environments:
104
104
  linux-64:
105
105
  - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-20_gnu.conda
106
106
  - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hda65f42_9.conda
107
- - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
107
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.4.22-hbd8a1cb_0.conda
108
108
  - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-78.3-h33c6efd_0.conda
109
109
  - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.45.1-default_hbd61a6d_102.conda
110
110
  - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.7.5-hecca717_0.conda
@@ -130,24 +130,24 @@ environments:
130
130
  - pypi: https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl
131
131
  - pypi: https://files.pythonhosted.org/packages/77/f5/21d2de20e8b8b0408f0681956ca2c69f1320a3848ac50e6e7f39c6159675/babel-2.18.0-py3-none-any.whl
132
132
  - pypi: https://files.pythonhosted.org/packages/af/75/be12ba31a6eb20dccef2320cd8ccb3f7d9013b68ba4c70156259fee9e409/backrefs-6.2-py314-none-any.whl
133
- - pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
133
+ - pypi: https://files.pythonhosted.org/packages/22/30/7cd8fdcdfbc5b869528b079bfb76dcdf6056b1a2097a662e5e8c04f42965/certifi-2026.4.22-py3-none-any.whl
134
134
  - pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
135
135
  - pypi: https://files.pythonhosted.org/packages/47/5c/032c2d5a07fe4d4855fea851209cca2b6f03ebeb6d4e3afdb3358386a684/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
136
- - pypi: https://files.pythonhosted.org/packages/e4/20/71885d8b97d4f3dde17b1fdb92dbd4908b00541c5a3379787137285f602e/click-8.3.2-py3-none-any.whl
136
+ - pypi: https://files.pythonhosted.org/packages/ae/44/c1221527f6a71a01ec6fbad7fa78f1d50dfa02217385cf0fa3eec7087d59/click-8.3.3-py3-none-any.whl
137
137
  - pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
138
138
  - pypi: https://files.pythonhosted.org/packages/22/e5/06b1f88f42a5a99df42ce61208bdec3bddb3d261412874280a19796fc09c/coverage-7.13.5-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
139
139
  - pypi: https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl
140
140
  - pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
141
141
  - pypi: https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl
142
- - pypi: https://files.pythonhosted.org/packages/3b/21/2f728888c45033d34a417bfcd248ea2564c9e08ab1bfd301377cf05d5586/filelock-3.28.0-py3-none-any.whl
142
+ - pypi: https://files.pythonhosted.org/packages/81/47/dd9a212ef6e343a6857485ffe25bba537304f1913bdbed446a23f7f592e1/filelock-3.29.0-py3-none-any.whl
143
143
  - pypi: https://files.pythonhosted.org/packages/f7/ec/67fbef5d497f86283db54c22eec6f6140243aae73265799baaaa19cd17fb/ghp_import-2.1.0-py3-none-any.whl
144
144
  - pypi: https://files.pythonhosted.org/packages/2d/88/17d656aa97406cd509e2be0e6eddcf81fc1666104bf81042b89721d4a44c/griffe_pydantic-1.3.1-py3-none-any.whl
145
145
  - pypi: https://files.pythonhosted.org/packages/11/8c/c9138d881c79aa0ea9ed83cbd58d5ca75624378b38cee225dcf5c42cc91f/griffelib-2.0.2-py3-none-any.whl
146
146
  - pypi: https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl
147
147
  - pypi: https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl
148
148
  - pypi: https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl
149
- - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
150
- - pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
149
+ - pypi: https://files.pythonhosted.org/packages/94/84/d9273cd09688070a6523c4aee4663a8538721b2b755c4962aafae0011e72/identify-2.6.19-py2.py3-none-any.whl
150
+ - pypi: https://files.pythonhosted.org/packages/5d/13/ad7d7ca3808a898b4612b6fe93cde56b53f3034dcde235acb1f0e1df24c6/idna-3.13-py3-none-any.whl
151
151
  - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
152
152
  - pypi: https://files.pythonhosted.org/packages/59/22/906c8108974c673ebef6356c506cebb6870d48cedea3c41e949e2dd556bb/ipython-9.12.0-py3-none-any.whl
153
153
  - pypi: https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl
@@ -166,7 +166,7 @@ environments:
166
166
  - pypi: https://files.pythonhosted.org/packages/6e/94/be70f8ee9c45f2f62b39a1f0e9303bc20e138a8f3b8e50ffd89498e177e1/mkdocstrings-1.0.4-py3-none-any.whl
167
167
  - pypi: https://files.pythonhosted.org/packages/32/28/79f0f8de97cce916d5ae88a7bee1ad724855e83e6019c0b4d5b3fabc80f3/mkdocstrings_python-2.0.3-py3-none-any.whl
168
168
  - pypi: https://files.pythonhosted.org/packages/cb/98/6af411189d9413534c3eb691182bff1f5c6d44ed2f93f2edfe52a1bbceb8/more_itertools-11.0.2-py3-none-any.whl
169
- - pypi: https://files.pythonhosted.org/packages/d7/aa/a19d884a8d28fcd3c065776323029f204dbc774e70ec9c85eba228b680de/mypy-1.20.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
169
+ - pypi: https://files.pythonhosted.org/packages/19/65/0cd9285ab010ee8214c83d67c6b49417c40d86ce46f1aa109457b5a9b8d7/mypy-1.20.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
170
170
  - pypi: https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl
171
171
  - pypi: https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl
172
172
  - pypi: https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl
@@ -174,17 +174,17 @@ environments:
174
174
  - pypi: https://files.pythonhosted.org/packages/7a/c2/920ef838e2f0028c8262f16101ec09ebd5969864e5a64c4c05fad0617c56/packaging-26.1-py3-none-any.whl
175
175
  - pypi: https://files.pythonhosted.org/packages/90/96/04b8e52da071d28f5e21a805b19cb9390aa17a47462ac87f5e2696b9566d/paginate-0.5.7-py2.py3-none-any.whl
176
176
  - pypi: https://files.pythonhosted.org/packages/b6/61/fae042894f4296ec49e3f193aff5d7c18440da9e48102c3315e1bc4519a7/parso-0.8.6-py2.py3-none-any.whl
177
- - pypi: https://files.pythonhosted.org/packages/ef/3c/2c197d226f9ea224a9ab8d197933f9da0ae0aac5b6e0f884e2b8d9c8e9f7/pathspec-1.0.4-py3-none-any.whl
177
+ - pypi: https://files.pythonhosted.org/packages/fa/c9/8eed0486f074e9f1ca7f8ce5ad663e65f12fdab344028d658fa1b03d35e0/pathspec-1.1.0-py3-none-any.whl
178
178
  - pypi: https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl
179
179
  - pypi: https://files.pythonhosted.org/packages/11/8d/d2532ad2a603ca2b93ad9f5135732124e57811d0168155852f37fbce2458/pillow-12.2.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
180
180
  - pypi: https://files.pythonhosted.org/packages/75/a6/a0a304dc33b49145b21f4808d763822111e67d1c3a32b524a1baf947b6e1/platformdirs-4.9.6-py3-none-any.whl
181
181
  - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
182
- - pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
182
+ - pypi: https://files.pythonhosted.org/packages/80/6e/4b28b62ecb6aae56769c34a8ff1d661473ec1e9519e2d5f8b2c150086b26/pre_commit-4.6.0-py2.py3-none-any.whl
183
183
  - pypi: https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl
184
184
  - pypi: https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl
185
185
  - pypi: https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl
186
- - pypi: https://files.pythonhosted.org/packages/81/5a/2225f4c176dbfed0d809e848b50ef08f70e61daa667b7fa14b0d311ae44d/pydantic-2.13.1-py3-none-any.whl
187
- - pypi: https://files.pythonhosted.org/packages/76/fd/19d711e4e9331f9d77f222bffc202bf30ea0d74f6419046376bb82f244c8/pydantic_core-2.46.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
186
+ - pypi: https://files.pythonhosted.org/packages/f3/0a/fd7d723f8f8153418fb40cf9c940e82004fce7e987026b08a68a36dd3fe7/pydantic-2.13.3-py3-none-any.whl
187
+ - pypi: https://files.pythonhosted.org/packages/fd/86/ef96a4c6e79e7a2d0410826a68fbc0eccc0fd44aa733be199d5fcac3bb87/pydantic_core-2.46.3-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
188
188
  - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl
189
189
  - pypi: https://files.pythonhosted.org/packages/f7/27/a2fc51a4a122dfd1015e921ae9d22fee3d20b0b8080d9a704578bf9deece/pymdown_extensions-10.21.2-py3-none-any.whl
190
190
  - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl
@@ -197,7 +197,7 @@ environments:
197
197
  - pypi: https://files.pythonhosted.org/packages/27/60/41cf00319d2a01946854e634f9a5791b0370c08bffbe4d094b0743213f6c/rdkit-2026.3.1-cp314-cp314-manylinux_2_28_x86_64.whl
198
198
  - pypi: https://files.pythonhosted.org/packages/d9/0f/90088510d4758e0ee475ae1fc7f96e7bccd0e31f24107567075482b2fe9e/rdkit_stubs-0.8-py3-none-any.whl
199
199
  - pypi: https://files.pythonhosted.org/packages/d7/8e/7540e8a2036f79a125c1d2ebadf69ed7901608859186c856fa0388ef4197/requests-2.33.1-py3-none-any.whl
200
- - pypi: https://files.pythonhosted.org/packages/bc/bb/7ddb00a83760ff4a83c4e2fc231fd63937cc7317c10c82f583302e0f6586/ruff-0.15.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
200
+ - pypi: https://files.pythonhosted.org/packages/30/c3/bb5168fc4d233cc06e95f482770d0f3c87945a0cd9f614b90ea8dc2f2833/ruff-0.15.11-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
201
201
  - pypi: https://files.pythonhosted.org/packages/9d/76/f789f7a86709c6b087c5a2f52f911838cad707cc613162401badc665acfe/setuptools-82.0.1-py3-none-any.whl
202
202
  - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
203
203
  - pypi: https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl
@@ -212,7 +212,7 @@ environments:
212
212
  - pypi: ./
213
213
  osx-arm64:
214
214
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/bzip2-1.0.8-hd037594_9.conda
215
- - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
215
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.4.22-hbd8a1cb_0.conda
216
216
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libexpat-2.7.5-hf6b4638_0.conda
217
217
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/libffi-3.5.2-hcf2aa1b_0.conda
218
218
  - conda: https://conda.anaconda.org/conda-forge/osx-arm64/liblzma-5.8.3-h8088a28_0.conda
@@ -232,24 +232,24 @@ environments:
232
232
  - pypi: https://files.pythonhosted.org/packages/d2/39/e7eaf1799466a4aef85b6a4fe7bd175ad2b1c6345066aa33f1f58d4b18d0/asttokens-3.0.1-py3-none-any.whl
233
233
  - pypi: https://files.pythonhosted.org/packages/77/f5/21d2de20e8b8b0408f0681956ca2c69f1320a3848ac50e6e7f39c6159675/babel-2.18.0-py3-none-any.whl
234
234
  - pypi: https://files.pythonhosted.org/packages/af/75/be12ba31a6eb20dccef2320cd8ccb3f7d9013b68ba4c70156259fee9e409/backrefs-6.2-py314-none-any.whl
235
- - pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
235
+ - pypi: https://files.pythonhosted.org/packages/22/30/7cd8fdcdfbc5b869528b079bfb76dcdf6056b1a2097a662e5e8c04f42965/certifi-2026.4.22-py3-none-any.whl
236
236
  - pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
237
237
  - pypi: https://files.pythonhosted.org/packages/97/c8/c67cb8c70e19ef1960b97b22ed2a1567711de46c4ddf19799923adc836c2/charset_normalizer-3.4.7-cp314-cp314-macosx_10_15_universal2.whl
238
- - pypi: https://files.pythonhosted.org/packages/e4/20/71885d8b97d4f3dde17b1fdb92dbd4908b00541c5a3379787137285f602e/click-8.3.2-py3-none-any.whl
238
+ - pypi: https://files.pythonhosted.org/packages/ae/44/c1221527f6a71a01ec6fbad7fa78f1d50dfa02217385cf0fa3eec7087d59/click-8.3.3-py3-none-any.whl
239
239
  - pypi: https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl
240
240
  - pypi: https://files.pythonhosted.org/packages/e2/3e/51dff36d99ae14639a133d9b164d63e628532e2974d8b1edb99dd1ebc733/coverage-7.13.5-cp314-cp314-macosx_11_0_arm64.whl
241
241
  - pypi: https://files.pythonhosted.org/packages/4e/8c/f3147f5c4b73e7550fe5f9352eaa956ae838d5c51eb58e7a25b9f3e2643b/decorator-5.2.1-py3-none-any.whl
242
242
  - pypi: https://files.pythonhosted.org/packages/33/6b/e0547afaf41bf2c42e52430072fa5658766e3d65bd4b03a563d1b6336f57/distlib-0.4.0-py2.py3-none-any.whl
243
243
  - pypi: https://files.pythonhosted.org/packages/c1/ea/53f2148663b321f21b5a606bd5f191517cf40b7072c0497d3c92c4a13b1e/executing-2.2.1-py2.py3-none-any.whl
244
- - pypi: https://files.pythonhosted.org/packages/3b/21/2f728888c45033d34a417bfcd248ea2564c9e08ab1bfd301377cf05d5586/filelock-3.28.0-py3-none-any.whl
244
+ - pypi: https://files.pythonhosted.org/packages/81/47/dd9a212ef6e343a6857485ffe25bba537304f1913bdbed446a23f7f592e1/filelock-3.29.0-py3-none-any.whl
245
245
  - pypi: https://files.pythonhosted.org/packages/f7/ec/67fbef5d497f86283db54c22eec6f6140243aae73265799baaaa19cd17fb/ghp_import-2.1.0-py3-none-any.whl
246
246
  - pypi: https://files.pythonhosted.org/packages/2d/88/17d656aa97406cd509e2be0e6eddcf81fc1666104bf81042b89721d4a44c/griffe_pydantic-1.3.1-py3-none-any.whl
247
247
  - pypi: https://files.pythonhosted.org/packages/11/8c/c9138d881c79aa0ea9ed83cbd58d5ca75624378b38cee225dcf5c42cc91f/griffelib-2.0.2-py3-none-any.whl
248
248
  - pypi: https://files.pythonhosted.org/packages/04/4b/29cac41a4d98d144bf5f6d33995617b185d14b22401f75ca86f384e87ff1/h11-0.16.0-py3-none-any.whl
249
249
  - pypi: https://files.pythonhosted.org/packages/7e/f5/f66802a942d491edb555dd61e3a9961140fd64c90bce1eafd741609d334d/httpcore-1.0.9-py3-none-any.whl
250
250
  - pypi: https://files.pythonhosted.org/packages/2a/39/e50c7c3a983047577ee07d2a9e53faf5a69493943ec3f6a384bdc792deb2/httpx-0.28.1-py3-none-any.whl
251
- - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
252
- - pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
251
+ - pypi: https://files.pythonhosted.org/packages/94/84/d9273cd09688070a6523c4aee4663a8538721b2b755c4962aafae0011e72/identify-2.6.19-py2.py3-none-any.whl
252
+ - pypi: https://files.pythonhosted.org/packages/5d/13/ad7d7ca3808a898b4612b6fe93cde56b53f3034dcde235acb1f0e1df24c6/idna-3.13-py3-none-any.whl
253
253
  - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
254
254
  - pypi: https://files.pythonhosted.org/packages/59/22/906c8108974c673ebef6356c506cebb6870d48cedea3c41e949e2dd556bb/ipython-9.12.0-py3-none-any.whl
255
255
  - pypi: https://files.pythonhosted.org/packages/d9/33/1f075bf72b0b747cb3288d011319aaf64083cf2efef8354174e3ed4540e2/ipython_pygments_lexers-1.1.1-py3-none-any.whl
@@ -268,7 +268,7 @@ environments:
268
268
  - pypi: https://files.pythonhosted.org/packages/6e/94/be70f8ee9c45f2f62b39a1f0e9303bc20e138a8f3b8e50ffd89498e177e1/mkdocstrings-1.0.4-py3-none-any.whl
269
269
  - pypi: https://files.pythonhosted.org/packages/32/28/79f0f8de97cce916d5ae88a7bee1ad724855e83e6019c0b4d5b3fabc80f3/mkdocstrings_python-2.0.3-py3-none-any.whl
270
270
  - pypi: https://files.pythonhosted.org/packages/cb/98/6af411189d9413534c3eb691182bff1f5c6d44ed2f93f2edfe52a1bbceb8/more_itertools-11.0.2-py3-none-any.whl
271
- - pypi: https://files.pythonhosted.org/packages/d5/82/74e62e7097fa67da328ac8ece8de09133448c04d20ddeaeba251a3000f01/mypy-1.20.1-cp314-cp314-macosx_11_0_arm64.whl
271
+ - pypi: https://files.pythonhosted.org/packages/3a/63/d2c2ff4fa66bc49477d32dfa26e8a167ba803ea6a69c5efb416036909d30/mypy-1.20.2-cp314-cp314-macosx_11_0_arm64.whl
272
272
  - pypi: https://files.pythonhosted.org/packages/79/7b/2c79738432f5c924bef5071f933bcc9efd0473bac3b4aa584a6f7c1c8df8/mypy_extensions-1.1.0-py3-none-any.whl
273
273
  - pypi: https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl
274
274
  - pypi: https://files.pythonhosted.org/packages/88/b2/d0896bdcdc8d28a7fc5717c305f1a861c26e18c05047949fb371034d98bd/nodeenv-1.10.0-py2.py3-none-any.whl
@@ -276,17 +276,17 @@ environments:
276
276
  - pypi: https://files.pythonhosted.org/packages/7a/c2/920ef838e2f0028c8262f16101ec09ebd5969864e5a64c4c05fad0617c56/packaging-26.1-py3-none-any.whl
277
277
  - pypi: https://files.pythonhosted.org/packages/90/96/04b8e52da071d28f5e21a805b19cb9390aa17a47462ac87f5e2696b9566d/paginate-0.5.7-py2.py3-none-any.whl
278
278
  - pypi: https://files.pythonhosted.org/packages/b6/61/fae042894f4296ec49e3f193aff5d7c18440da9e48102c3315e1bc4519a7/parso-0.8.6-py2.py3-none-any.whl
279
- - pypi: https://files.pythonhosted.org/packages/ef/3c/2c197d226f9ea224a9ab8d197933f9da0ae0aac5b6e0f884e2b8d9c8e9f7/pathspec-1.0.4-py3-none-any.whl
279
+ - pypi: https://files.pythonhosted.org/packages/fa/c9/8eed0486f074e9f1ca7f8ce5ad663e65f12fdab344028d658fa1b03d35e0/pathspec-1.1.0-py3-none-any.whl
280
280
  - pypi: https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl
281
281
  - pypi: https://files.pythonhosted.org/packages/ba/8c/1a9e46228571de18f8e28f16fabdfc20212a5d019f3e3303452b3f0a580d/pillow-12.2.0-cp314-cp314-macosx_11_0_arm64.whl
282
282
  - pypi: https://files.pythonhosted.org/packages/75/a6/a0a304dc33b49145b21f4808d763822111e67d1c3a32b524a1baf947b6e1/platformdirs-4.9.6-py3-none-any.whl
283
283
  - pypi: https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl
284
- - pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
284
+ - pypi: https://files.pythonhosted.org/packages/80/6e/4b28b62ecb6aae56769c34a8ff1d661473ec1e9519e2d5f8b2c150086b26/pre_commit-4.6.0-py2.py3-none-any.whl
285
285
  - pypi: https://files.pythonhosted.org/packages/84/03/0d3ce49e2505ae70cf43bc5bb3033955d2fc9f932163e84dc0779cc47f48/prompt_toolkit-3.0.52-py3-none-any.whl
286
286
  - pypi: https://files.pythonhosted.org/packages/22/a6/858897256d0deac81a172289110f31629fc4cee19b6f01283303e18c8db3/ptyprocess-0.7.0-py2.py3-none-any.whl
287
287
  - pypi: https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl
288
- - pypi: https://files.pythonhosted.org/packages/81/5a/2225f4c176dbfed0d809e848b50ef08f70e61daa667b7fa14b0d311ae44d/pydantic-2.13.1-py3-none-any.whl
289
- - pypi: https://files.pythonhosted.org/packages/d2/87/e9a905ddfcc2fd7bd862b340c02be6ab1f827922822d425513635d0ac774/pydantic_core-2.46.1-cp314-cp314-macosx_11_0_arm64.whl
288
+ - pypi: https://files.pythonhosted.org/packages/f3/0a/fd7d723f8f8153418fb40cf9c940e82004fce7e987026b08a68a36dd3fe7/pydantic-2.13.3-py3-none-any.whl
289
+ - pypi: https://files.pythonhosted.org/packages/24/35/e4066358a22e3e99519db370494c7528f5a2aa1367370e80e27e20283543/pydantic_core-2.46.3-cp314-cp314-macosx_11_0_arm64.whl
290
290
  - pypi: https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl
291
291
  - pypi: https://files.pythonhosted.org/packages/f7/27/a2fc51a4a122dfd1015e921ae9d22fee3d20b0b8080d9a704578bf9deece/pymdown_extensions-10.21.2-py3-none-any.whl
292
292
  - pypi: https://files.pythonhosted.org/packages/d4/24/a372aaf5c9b7208e7112038812994107bc65a84cd00e0354a88c2c77a617/pytest-9.0.3-py3-none-any.whl
@@ -299,7 +299,7 @@ environments:
299
299
  - pypi: https://files.pythonhosted.org/packages/6a/a4/c05a31806eaf366af246903230fe441cef8b7949cc4592656025ac8975e6/rdkit-2026.3.1-cp314-cp314-macosx_11_0_arm64.whl
300
300
  - pypi: https://files.pythonhosted.org/packages/d9/0f/90088510d4758e0ee475ae1fc7f96e7bccd0e31f24107567075482b2fe9e/rdkit_stubs-0.8-py3-none-any.whl
301
301
  - pypi: https://files.pythonhosted.org/packages/d7/8e/7540e8a2036f79a125c1d2ebadf69ed7901608859186c856fa0388ef4197/requests-2.33.1-py3-none-any.whl
302
- - pypi: https://files.pythonhosted.org/packages/f2/c0/4ac978fe874d0618c7da647862afe697b281c2806f13ce904ad652fa87e4/ruff-0.15.10-py3-none-macosx_11_0_arm64.whl
302
+ - pypi: https://files.pythonhosted.org/packages/03/71/850b1d6ffa9564fbb6740429bad53df1094082fe515c8c1e74b6d8d05f18/ruff-0.15.11-py3-none-macosx_11_0_arm64.whl
303
303
  - pypi: https://files.pythonhosted.org/packages/9d/76/f789f7a86709c6b087c5a2f52f911838cad707cc613162401badc665acfe/setuptools-82.0.1-py3-none-any.whl
304
304
  - pypi: https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl
305
305
  - pypi: https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl
@@ -398,19 +398,19 @@ packages:
398
398
  purls: []
399
399
  size: 124834
400
400
  timestamp: 1771350416561
401
- - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.2.25-hbd8a1cb_0.conda
402
- sha256: 67cc7101b36421c5913a1687ef1b99f85b5d6868da3abbf6ec1a4181e79782fc
403
- md5: 4492fd26db29495f0ba23f146cd5638d
401
+ - conda: https://conda.anaconda.org/conda-forge/noarch/ca-certificates-2026.4.22-hbd8a1cb_0.conda
402
+ sha256: c9dbcc8039a52023660d6d1bbf87594a93dd69c6ac5a2a44323af2c92976728d
403
+ md5: e18ad67cf881dcadee8b8d9e2f8e5f73
404
404
  depends:
405
405
  - __unix
406
406
  license: ISC
407
407
  purls: []
408
- size: 147413
409
- timestamp: 1772006283803
410
- - pypi: https://files.pythonhosted.org/packages/9a/3c/c17fb3ca2d9c3acff52e30b309f538586f9f5b9c9cf454f3845fc9af4881/certifi-2026.2.25-py3-none-any.whl
408
+ size: 131039
409
+ timestamp: 1776865545798
410
+ - pypi: https://files.pythonhosted.org/packages/22/30/7cd8fdcdfbc5b869528b079bfb76dcdf6056b1a2097a662e5e8c04f42965/certifi-2026.4.22-py3-none-any.whl
411
411
  name: certifi
412
- version: 2026.2.25
413
- sha256: 027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa
412
+ version: 2026.4.22
413
+ sha256: 3cb2210c8f88ba2318d29b0388d1023c8492ff72ecdde4ebdaddbb13a31b1c4a
414
414
  requires_python: '>=3.7'
415
415
  - pypi: https://files.pythonhosted.org/packages/db/3c/33bac158f8ab7f89b2e59426d5fe2e4f63f7ed25df84c036890172b412b5/cfgv-3.5.0-py2.py3-none-any.whl
416
416
  name: cfgv
@@ -427,10 +427,10 @@ packages:
427
427
  version: 3.4.7
428
428
  sha256: c36c333c39be2dbca264d7803333c896ab8fa7d4d6f0ab7edb7dfd7aea6e98c0
429
429
  requires_python: '>=3.7'
430
- - pypi: https://files.pythonhosted.org/packages/e4/20/71885d8b97d4f3dde17b1fdb92dbd4908b00541c5a3379787137285f602e/click-8.3.2-py3-none-any.whl
430
+ - pypi: https://files.pythonhosted.org/packages/ae/44/c1221527f6a71a01ec6fbad7fa78f1d50dfa02217385cf0fa3eec7087d59/click-8.3.3-py3-none-any.whl
431
431
  name: click
432
- version: 8.3.2
433
- sha256: 1924d2c27c5653561cd2cae4548d1406039cb79b858b747cfea24924bbc1616d
432
+ version: 8.3.3
433
+ sha256: a2bf429bb3033c89fa4936ffb35d5cb471e3719e1f3c8a7c3fff0b8314305613
434
434
  requires_dist:
435
435
  - colorama ; sys_platform == 'win32'
436
436
  requires_python: '>=3.10'
@@ -475,10 +475,10 @@ packages:
475
475
  - littleutils ; extra == 'tests'
476
476
  - rich ; python_full_version >= '3.11' and extra == 'tests'
477
477
  requires_python: '>=3.8'
478
- - pypi: https://files.pythonhosted.org/packages/3b/21/2f728888c45033d34a417bfcd248ea2564c9e08ab1bfd301377cf05d5586/filelock-3.28.0-py3-none-any.whl
478
+ - pypi: https://files.pythonhosted.org/packages/81/47/dd9a212ef6e343a6857485ffe25bba537304f1913bdbed446a23f7f592e1/filelock-3.29.0-py3-none-any.whl
479
479
  name: filelock
480
- version: 3.28.0
481
- sha256: de9af6712788e7171df1b28b15eba2446c69721433fa427a9bee07b17820a9db
480
+ version: 3.29.0
481
+ sha256: 96f5f6344709aa1572bbf631c640e4ebeeb519e08da902c39a001882f30ac258
482
482
  requires_python: '>=3.10'
483
483
  - pypi: https://files.pythonhosted.org/packages/f7/ec/67fbef5d497f86283db54c22eec6f6140243aae73265799baaaa19cd17fb/ghp_import-2.1.0-py3-none-any.whl
484
484
  name: ghp-import
@@ -553,22 +553,21 @@ packages:
553
553
  purls: []
554
554
  size: 12723451
555
555
  timestamp: 1773822285671
556
- - pypi: https://files.pythonhosted.org/packages/46/33/92ef41c6fad0233e41d3d84ba8e8ad18d1780f1e5d99b3c683e6d7f98b63/identify-2.6.18-py2.py3-none-any.whl
556
+ - pypi: https://files.pythonhosted.org/packages/94/84/d9273cd09688070a6523c4aee4663a8538721b2b755c4962aafae0011e72/identify-2.6.19-py2.py3-none-any.whl
557
557
  name: identify
558
- version: 2.6.18
559
- sha256: 8db9d3c8ea9079db92cafb0ebf97abdc09d52e97f4dcf773a2e694048b7cd737
558
+ version: 2.6.19
559
+ sha256: 20e6a87f786f768c092a721ad107fc9df0eb89347be9396cadf3f4abbd1fb78a
560
560
  requires_dist:
561
561
  - ukkonen ; extra == 'license'
562
562
  requires_python: '>=3.10'
563
- - pypi: https://files.pythonhosted.org/packages/0e/61/66938bbb5fc52dbdf84594873d5b51fb1f7c7794e9c0f5bd885f30bc507b/idna-3.11-py3-none-any.whl
563
+ - pypi: https://files.pythonhosted.org/packages/5d/13/ad7d7ca3808a898b4612b6fe93cde56b53f3034dcde235acb1f0e1df24c6/idna-3.13-py3-none-any.whl
564
564
  name: idna
565
- version: '3.11'
566
- sha256: 771a87f49d9defaf64091e6e6fe9c18d4833f140bd19464795bc32d966ca37ea
565
+ version: '3.13'
566
+ sha256: 892ea0cde124a99ce773decba204c5552b69c3c67ffd5f232eb7696135bc8bb3
567
567
  requires_dist:
568
568
  - ruff>=0.6.2 ; extra == 'all'
569
569
  - mypy>=1.11.2 ; extra == 'all'
570
570
  - pytest>=8.3.2 ; extra == 'all'
571
- - flake8>=7.1.1 ; extra == 'all'
572
571
  requires_python: '>=3.8'
573
572
  - pypi: https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl
574
573
  name: iniconfig
@@ -1039,12 +1038,13 @@ packages:
1039
1038
  version: 11.0.2
1040
1039
  sha256: 6e35b35f818b01f691643c6c611bc0902f2e92b46c18fffa77ae1e7c46e912e4
1041
1040
  requires_python: '>=3.10'
1042
- - pypi: https://files.pythonhosted.org/packages/d5/82/74e62e7097fa67da328ac8ece8de09133448c04d20ddeaeba251a3000f01/mypy-1.20.1-cp314-cp314-macosx_11_0_arm64.whl
1041
+ - pypi: https://files.pythonhosted.org/packages/19/65/0cd9285ab010ee8214c83d67c6b49417c40d86ce46f1aa109457b5a9b8d7/mypy-1.20.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
1043
1042
  name: mypy
1044
- version: 1.20.1
1045
- sha256: 752507dd481e958b2c08fc966d3806c962af5a9433b5bf8f3bdd7175c20e34fe
1043
+ version: 1.20.2
1044
+ sha256: 5a65aa591af023864fd08a97da9974e919452cfe19cb146c8a5dc692626445dc
1046
1045
  requires_dist:
1047
- - typing-extensions>=4.6.0
1046
+ - typing-extensions>=4.6.0 ; python_full_version < '3.15'
1047
+ - typing-extensions>=4.14.0 ; python_full_version >= '3.15'
1048
1048
  - mypy-extensions>=1.0.0
1049
1049
  - pathspec>=1.0.0
1050
1050
  - tomli>=1.1.0 ; python_full_version < '3.11'
@@ -1056,12 +1056,13 @@ packages:
1056
1056
  - orjson ; extra == 'faster-cache'
1057
1057
  - ast-serialize>=0.1.1,<1.0.0 ; extra == 'native-parser'
1058
1058
  requires_python: '>=3.10'
1059
- - pypi: https://files.pythonhosted.org/packages/d7/aa/a19d884a8d28fcd3c065776323029f204dbc774e70ec9c85eba228b680de/mypy-1.20.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
1059
+ - pypi: https://files.pythonhosted.org/packages/3a/63/d2c2ff4fa66bc49477d32dfa26e8a167ba803ea6a69c5efb416036909d30/mypy-1.20.2-cp314-cp314-macosx_11_0_arm64.whl
1060
1060
  name: mypy
1061
- version: 1.20.1
1062
- sha256: 2c3f6221a76f34d5100c6d35b3ef6b947054123c3f8d6938a4ba00b1308aa572
1061
+ version: 1.20.2
1062
+ sha256: e73c07f23009962885c197ccb9b41356a30cc0e5a1d0c2ea8fd8fb1362d7f924
1063
1063
  requires_dist:
1064
- - typing-extensions>=4.6.0
1064
+ - typing-extensions>=4.6.0 ; python_full_version < '3.15'
1065
+ - typing-extensions>=4.14.0 ; python_full_version >= '3.15'
1065
1066
  - mypy-extensions>=1.0.0
1066
1067
  - pathspec>=1.0.0
1067
1068
  - tomli>=1.1.0 ; python_full_version < '3.11'
@@ -1164,16 +1165,14 @@ packages:
1164
1165
  - zuban==0.5.1 ; extra == 'qa'
1165
1166
  - types-setuptools==67.2.0.1 ; extra == 'qa'
1166
1167
  requires_python: '>=3.6'
1167
- - pypi: https://files.pythonhosted.org/packages/ef/3c/2c197d226f9ea224a9ab8d197933f9da0ae0aac5b6e0f884e2b8d9c8e9f7/pathspec-1.0.4-py3-none-any.whl
1168
+ - pypi: https://files.pythonhosted.org/packages/fa/c9/8eed0486f074e9f1ca7f8ce5ad663e65f12fdab344028d658fa1b03d35e0/pathspec-1.1.0-py3-none-any.whl
1168
1169
  name: pathspec
1169
- version: 1.0.4
1170
- sha256: fb6ae2fd4e7c921a165808a552060e722767cfa526f99ca5156ed2ce45a5c723
1170
+ version: 1.1.0
1171
+ sha256: 574b128f7456bd899045ccd142dd446af7e6cfd0072d63ad73fbc55fbb4aaa42
1171
1172
  requires_dist:
1172
1173
  - hyperscan>=0.7 ; extra == 'hyperscan'
1173
1174
  - typing-extensions>=4 ; extra == 'optional'
1174
1175
  - google-re2>=1.1 ; extra == 're2'
1175
- - pytest>=9 ; extra == 'tests'
1176
- - typing-extensions>=4.15 ; extra == 'tests'
1177
1176
  requires_python: '>=3.9'
1178
1177
  - pypi: https://files.pythonhosted.org/packages/9e/c3/059298687310d527a58bb01f3b1965787ee3b40dce76752eda8b44e9a2c5/pexpect-4.9.0-py2.py3-none-any.whl
1179
1178
  name: pexpect
@@ -1261,10 +1260,10 @@ packages:
1261
1260
  - pytest-benchmark ; extra == 'testing'
1262
1261
  - coverage ; extra == 'testing'
1263
1262
  requires_python: '>=3.9'
1264
- - pypi: https://files.pythonhosted.org/packages/5d/19/fd3ef348460c80af7bb4669ea7926651d1f95c23ff2df18b9d24bab4f3fa/pre_commit-4.5.1-py2.py3-none-any.whl
1263
+ - pypi: https://files.pythonhosted.org/packages/80/6e/4b28b62ecb6aae56769c34a8ff1d661473ec1e9519e2d5f8b2c150086b26/pre_commit-4.6.0-py2.py3-none-any.whl
1265
1264
  name: pre-commit
1266
- version: 4.5.1
1267
- sha256: 3b3afd891e97337708c1674210f8eba659b52a38ea5f822ff142d10786221f77
1265
+ version: 4.6.0
1266
+ sha256: e2cf246f7299edcabcf15f9b0571fdce06058527f0a06535068a86d38089f29b
1268
1267
  requires_dist:
1269
1268
  - cfgv>=2.0.0
1270
1269
  - identify>=1.0.0
@@ -1289,29 +1288,29 @@ packages:
1289
1288
  sha256: 1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0
1290
1289
  requires_dist:
1291
1290
  - pytest ; extra == 'tests'
1292
- - pypi: https://files.pythonhosted.org/packages/81/5a/2225f4c176dbfed0d809e848b50ef08f70e61daa667b7fa14b0d311ae44d/pydantic-2.13.1-py3-none-any.whl
1291
+ - pypi: https://files.pythonhosted.org/packages/f3/0a/fd7d723f8f8153418fb40cf9c940e82004fce7e987026b08a68a36dd3fe7/pydantic-2.13.3-py3-none-any.whl
1293
1292
  name: pydantic
1294
- version: 2.13.1
1295
- sha256: 9557ecc2806faaf6037f85b1fbd963d01e30511c48085f0d573650fdeaad378a
1293
+ version: 2.13.3
1294
+ sha256: 6db14ac8dfc9a1e57f87ea2c0de670c251240f43cb0c30a5130e9720dc612927
1296
1295
  requires_dist:
1297
1296
  - annotated-types>=0.6.0
1298
- - pydantic-core==2.46.1
1297
+ - pydantic-core==2.46.3
1299
1298
  - typing-extensions>=4.14.1
1300
1299
  - typing-inspection>=0.4.2
1301
1300
  - email-validator>=2.0.0 ; extra == 'email'
1302
1301
  - tzdata ; python_full_version >= '3.9' and sys_platform == 'win32' and extra == 'timezone'
1303
1302
  requires_python: '>=3.9'
1304
- - pypi: https://files.pythonhosted.org/packages/76/fd/19d711e4e9331f9d77f222bffc202bf30ea0d74f6419046376bb82f244c8/pydantic_core-2.46.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1303
+ - pypi: https://files.pythonhosted.org/packages/24/35/e4066358a22e3e99519db370494c7528f5a2aa1367370e80e27e20283543/pydantic_core-2.46.3-cp314-cp314-macosx_11_0_arm64.whl
1305
1304
  name: pydantic-core
1306
- version: 2.46.1
1307
- sha256: b83ce9fede4bc4fb649281d9857f06d30198b8f70168f18b987518d713111572
1305
+ version: 2.46.3
1306
+ sha256: ced3310e51aa425f7f77da8bbbb5212616655bedbe82c70944320bc1dbe5e018
1308
1307
  requires_dist:
1309
1308
  - typing-extensions>=4.14.1
1310
1309
  requires_python: '>=3.9'
1311
- - pypi: https://files.pythonhosted.org/packages/d2/87/e9a905ddfcc2fd7bd862b340c02be6ab1f827922822d425513635d0ac774/pydantic_core-2.46.1-cp314-cp314-macosx_11_0_arm64.whl
1310
+ - pypi: https://files.pythonhosted.org/packages/fd/86/ef96a4c6e79e7a2d0410826a68fbc0eccc0fd44aa733be199d5fcac3bb87/pydantic_core-2.46.3-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1312
1311
  name: pydantic-core
1313
- version: 2.46.1
1314
- sha256: 0e749679ca9f8a9d0bff95fb7f6b57bb53f2207fa42ffcc1ec86de7e0029ab89
1312
+ version: 2.46.3
1313
+ sha256: ed42e6cc8e1b0e2b9b96e2276bad70ae625d10d6d524aed0c93de974ae029f9f
1315
1314
  requires_dist:
1316
1315
  - typing-extensions>=4.14.1
1317
1316
  requires_python: '>=3.9'
@@ -1531,8 +1530,8 @@ packages:
1531
1530
  requires_python: '>=3.10'
1532
1531
  - pypi: ./
1533
1532
  name: rowan-python
1534
- version: 3.0.6
1535
- sha256: 511acf0d60990b7bf5a6ca9567cd6417cc18dd5e2b2cce084394de59e5327a08
1533
+ version: 3.0.7
1534
+ sha256: 2232580b732f4d9fc95809aef5ab942d5cb0b4768cb92807cdb2d4102bfa8b28
1536
1535
  requires_dist:
1537
1536
  - httpx
1538
1537
  - stjames>=0.0.174
@@ -1540,15 +1539,15 @@ packages:
1540
1539
  - rdkit
1541
1540
  - nest-asyncio
1542
1541
  requires_python: '>=3.12'
1543
- - pypi: https://files.pythonhosted.org/packages/bc/bb/7ddb00a83760ff4a83c4e2fc231fd63937cc7317c10c82f583302e0f6586/ruff-0.15.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1542
+ - pypi: https://files.pythonhosted.org/packages/03/71/850b1d6ffa9564fbb6740429bad53df1094082fe515c8c1e74b6d8d05f18/ruff-0.15.11-py3-none-macosx_11_0_arm64.whl
1544
1543
  name: ruff
1545
- version: 0.15.10
1546
- sha256: 51cb8cc943e891ba99989dd92d61e29b1d231e14811db9be6440ecf25d5c1609
1544
+ version: 0.15.11
1545
+ sha256: d4176f3d194afbdaee6e41b9ccb1a2c287dba8700047df474abfbe773825d1cb
1547
1546
  requires_python: '>=3.7'
1548
- - pypi: https://files.pythonhosted.org/packages/f2/c0/4ac978fe874d0618c7da647862afe697b281c2806f13ce904ad652fa87e4/ruff-0.15.10-py3-none-macosx_11_0_arm64.whl
1547
+ - pypi: https://files.pythonhosted.org/packages/30/c3/bb5168fc4d233cc06e95f482770d0f3c87945a0cd9f614b90ea8dc2f2833/ruff-0.15.11-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
1549
1548
  name: ruff
1550
- version: 0.15.10
1551
- sha256: 93cc06a19e5155b4441dd72808fdf84290d84ad8a39ca3b0f994363ade4cebb1
1549
+ version: 0.15.11
1550
+ sha256: 1bef2cb556d509259f1fe440bb9cd33c756222cf0a7afe90d15edf0866702431
1552
1551
  requires_python: '>=3.7'
1553
1552
  - pypi: https://files.pythonhosted.org/packages/9d/76/f789f7a86709c6b087c5a2f52f911838cad707cc613162401badc665acfe/setuptools-82.0.1-py3-none-any.whl
1554
1553
  name: setuptools
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "rowan-python"
3
- version = "3.0.6"
3
+ version = "3.0.7"
4
4
  description = "Rowan Python Library"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"
@@ -84,6 +84,7 @@ from .multistage_optimization import (
84
84
  )
85
85
  from .nmr import NMRPeak, NMRResult, submit_nmr_workflow
86
86
  from .pka import pKaMicrostate, pKaResult, submit_pka_workflow
87
+ from .pocket_detection import Pocket, PocketDetectionResult, submit_pocket_detection_workflow
87
88
  from .pose_analysis_md import PoseAnalysisMDResult, submit_pose_analysis_md_workflow
88
89
  from .protein_binder_design import (
89
90
  ProteinBinder,
@@ -3,6 +3,7 @@
3
3
  from dataclasses import dataclass
4
4
 
5
5
  import stjames
6
+ from stjames import ENGINE_METHODS, Engine, Method
6
7
 
7
8
  from ..folder import Folder
8
9
  from ..types import MoleculeInput
@@ -155,6 +156,7 @@ def submit_electronic_properties_workflow(
155
156
  :param webhook_url: URL that Rowan will POST to when the workflow completes.
156
157
  :param is_draft: If True, submit the workflow as a draft without starting execution.
157
158
  :returns: Workflow object representing the submitted workflow.
159
+ :raises ValueError: If the method is not supported by the psi4 engine.
158
160
  :raises requests.HTTPError: if the request to the API fails.
159
161
  """
160
162
  if folder and folder_uuid:
@@ -164,7 +166,15 @@ def submit_electronic_properties_workflow(
164
166
  initial_molecule = molecule_to_dict(initial_molecule)
165
167
 
166
168
  if isinstance(method, str):
167
- method = stjames.Method(method)
169
+ method = Method(method)
170
+
171
+ supported_methods = ENGINE_METHODS[Engine.PSI4]
172
+ if method not in supported_methods:
173
+ supported_names = sorted(m.value for m in supported_methods)
174
+ raise ValueError(
175
+ f"Method '{method.value}' is not supported by the psi4 engine. "
176
+ f"Supported methods: {', '.join(supported_names)}"
177
+ )
168
178
 
169
179
  settings = stjames.Settings(method=method, basis_set=basis_set)
170
180
 
@@ -188,7 +188,16 @@ def submit_pka_workflow(
188
188
  if method in _PKA_WATER_ONLY_METHODS and solvent != "water":
189
189
  raise ValueError(f"{method} only supports water as solvent.")
190
190
 
191
- protonate_elements = protonate_elements or [7]
191
+ if method == "chemprop_nevolianis2025" and protonate_elements:
192
+ raise ValueError(
193
+ "chemprop_nevolianis2025 was only trained on deprotonation data; "
194
+ "protonation is disabled. Leave `protonate_elements` unset or pass []."
195
+ )
196
+
197
+ if method == "chemprop_nevolianis2025":
198
+ protonate_elements = []
199
+ else:
200
+ protonate_elements = protonate_elements or [7]
192
201
  deprotonate_elements = deprotonate_elements or [7, 8, 16]
193
202
 
194
203
  workflow = stjames.pKaWorkflow(