nerdd-module 0.3.34__tar.gz → 0.3.36__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 (99) hide show
  1. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/PKG-INFO +1 -1
  2. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/simple_model.py +1 -1
  3. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/write_output_step.py +6 -4
  4. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/sdf_writer.py +17 -2
  5. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module.egg-info/PKG-INFO +1 -1
  6. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/pyproject.toml +1 -1
  7. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/LICENSE +0 -0
  8. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/README.md +0 -0
  9. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/__init__.py +0 -0
  10. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/cli.py +0 -0
  11. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/__init__.py +0 -0
  12. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/configuration.py +0 -0
  13. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/default_configuration.py +0 -0
  14. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/dict_configuration.py +0 -0
  15. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/merged_configuration.py +0 -0
  16. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/models.py +0 -0
  17. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/package_configuration.py +0 -0
  18. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/search_yaml_configuration.py +0 -0
  19. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/config/yaml_configuration.py +0 -0
  20. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/__init__.py +0 -0
  21. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/basic_type_converter.py +0 -0
  22. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/converter.py +0 -0
  23. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/converter_config.py +0 -0
  24. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/mol_converter.py +0 -0
  25. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/problem_list_converter.py +0 -0
  26. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/representation_converter.py +0 -0
  27. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/source_list_converter.py +0 -0
  28. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/converters/void_converter.py +0 -0
  29. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/__init__.py +0 -0
  30. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/depth_first_explorer.py +0 -0
  31. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/explorer.py +0 -0
  32. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/file_reader.py +0 -0
  33. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/gzip_reader.py +0 -0
  34. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/inchi_reader.py +0 -0
  35. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/list_reader.py +0 -0
  36. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/mol_reader.py +0 -0
  37. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/reader.py +0 -0
  38. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/reader_config.py +0 -0
  39. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/sdf_reader.py +0 -0
  40. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/smiles_reader.py +0 -0
  41. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/string_reader.py +0 -0
  42. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/tar_reader.py +0 -0
  43. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/input/zip_reader.py +0 -0
  44. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/__init__.py +0 -0
  45. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/assign_name_step.py +0 -0
  46. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/convert_representations_step.py +0 -0
  47. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/enforce_schema_step.py +0 -0
  48. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/model.py +0 -0
  49. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/model/read_input_step.py +0 -0
  50. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/__init__.py +0 -0
  51. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/csv_writer.py +0 -0
  52. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/file_writer.py +0 -0
  53. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/iterator_writer.py +0 -0
  54. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/pandas_writer.py +0 -0
  55. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/record_list_writer.py +0 -0
  56. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/writer.py +0 -0
  57. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/output/writer_config.py +0 -0
  58. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/__init__.py +0 -0
  59. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/block_logs.py +0 -0
  60. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/files.py +0 -0
  61. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/get_entry_points.py +0 -0
  62. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/literal.py +0 -0
  63. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/typed_dict.py +0 -0
  64. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/types.py +0 -0
  65. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/polyfills/version.py +0 -0
  66. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/__init__.py +0 -0
  67. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/check_valid_smiles.py +0 -0
  68. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/chembl_structure_pipeline.py +0 -0
  69. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/filter_by_element.py +0 -0
  70. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/filter_by_weight.py +0 -0
  71. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/preprocessing_step.py +0 -0
  72. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/remove_stereochemistry.py +0 -0
  73. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/preprocessing/sanitize.py +0 -0
  74. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/problem.py +0 -0
  75. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/py.typed +0 -0
  76. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/steps/__init__.py +0 -0
  77. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/steps/map_step.py +0 -0
  78. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/steps/output_step.py +0 -0
  79. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/steps/step.py +0 -0
  80. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/__init__.py +0 -0
  81. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/checks.py +0 -0
  82. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/files.py +0 -0
  83. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/models/AtomicMassModel.py +0 -0
  84. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/models/MolWeightModel.py +0 -0
  85. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/models/__init__.py +0 -0
  86. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/predictions.py +0 -0
  87. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/preprocessing/DummyPreprocessingStep.py +0 -0
  88. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/preprocessing/__init__.py +0 -0
  89. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/tests/representations.py +0 -0
  90. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/util/__init__.py +0 -0
  91. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/util/call_with_mappings.py +0 -0
  92. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/util/package.py +0 -0
  93. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module/version.py +0 -0
  94. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module.egg-info/SOURCES.txt +0 -0
  95. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module.egg-info/dependency_links.txt +0 -0
  96. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module.egg-info/requires.txt +0 -0
  97. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/nerdd_module.egg-info/top_level.txt +0 -0
  98. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/setup.cfg +0 -0
  99. {nerdd_module-0.3.34 → nerdd_module-0.3.36}/tests/test_features.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nerdd-module
3
- Version: 0.3.34
3
+ Version: 0.3.36
4
4
  Summary: Base package to create NERDD modules
5
5
  Author-email: Steffen Hirte <steffen.hirte@univie.ac.at>
6
6
  Maintainer-email: Steffen Hirte <steffen.hirte@univie.ac.at>
@@ -64,7 +64,7 @@ class SimpleModel(Model):
64
64
  return [
65
65
  EnforceSchemaStep(self.config, output_format),
66
66
  ConvertRepresentationsStep(self.config, output_format, **kwargs),
67
- WriteOutputStep(output_format, **kwargs),
67
+ WriteOutputStep(output_format, config=self.config, **kwargs),
68
68
  ]
69
69
 
70
70
  def _preprocess(self, mol: Mol) -> Tuple[Optional[Mol], List[Problem]]:
@@ -1,5 +1,6 @@
1
1
  from typing import Any, Iterator
2
2
 
3
+ from ..config import Module
3
4
  from ..output import Writer
4
5
  from ..steps import OutputStep
5
6
 
@@ -7,16 +8,17 @@ __all__ = ["WriteOutputStep"]
7
8
 
8
9
 
9
10
  class WriteOutputStep(OutputStep):
10
- def __init__(self, output_format: str, **kwargs: Any) -> None:
11
+ def __init__(self, output_format: str, config: Module, **kwargs: Any) -> None:
11
12
  super().__init__()
12
13
  self._output_format = output_format
13
- self._kawrgs = kwargs
14
+ self._config = config
15
+ self._kwargs = kwargs
14
16
 
15
17
  def _get_result(self, source: Iterator[dict]) -> Any:
16
18
  # get the correct output writer
17
- writer = Writer.get_writer(self._output_format, **self._kawrgs)
19
+ writer = Writer.get_writer(self._output_format, config=self._config, **self._kwargs)
18
20
  result = writer.write(source)
19
21
  return result
20
22
 
21
23
  def __repr__(self) -> str:
22
- return f"WriteOutputStep(output_format={self._output_format}, kwargs={self._kawrgs})"
24
+ return f"WriteOutputStep(output_format={self._output_format}, kwargs={self._kwargs})"
@@ -1,6 +1,6 @@
1
1
  from typing import IO, Any, Dict, Iterable
2
2
 
3
- from rdkit.Chem import Mol, SDWriter
3
+ from rdkit.Chem import Mol, SanitizeMol, SDWriter
4
4
 
5
5
  from .file_writer import FileLike, FileWriter
6
6
  from .writer_config import WriterConfig
@@ -19,6 +19,12 @@ class SdfWriter(FileWriter):
19
19
  # assume that there is a mol object
20
20
  mol = entry["input_mol"]
21
21
 
22
+ # sanitize molecule to avoid basic writing errors (e.g. AtomKekulizeException)
23
+ try:
24
+ SanitizeMol(mol)
25
+ except: # noqa: E722
26
+ mol = None
27
+
22
28
  # if the molecule is erroneous, use an empty molecule
23
29
  if mol is None:
24
30
  mol = Mol()
@@ -38,7 +44,16 @@ class SdfWriter(FileWriter):
38
44
  mol.SetProp(key, value_as_str)
39
45
 
40
46
  # write molecule
41
- writer.write(mol)
47
+ try:
48
+ writer.write(mol)
49
+ except: # noqa: E722
50
+ # if the molecule can't be written, try to use an empty molecule
51
+ empty_mol = Mol()
52
+ # copy all properties from the original molecule
53
+ for key, value in mol.GetPropsAsDict().items():
54
+ empty_mol.SetProp(key, value)
55
+ # write the empty molecule
56
+ writer.write(mol)
42
57
  finally:
43
58
  writer.close()
44
59
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nerdd-module
3
- Version: 0.3.34
3
+ Version: 0.3.36
4
4
  Summary: Base package to create NERDD modules
5
5
  Author-email: Steffen Hirte <steffen.hirte@univie.ac.at>
6
6
  Maintainer-email: Steffen Hirte <steffen.hirte@univie.ac.at>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "nerdd-module"
7
- version = "0.3.34"
7
+ version = "0.3.36"
8
8
  description = "Base package to create NERDD modules"
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
File without changes
File without changes
File without changes