nerdd-module 0.3.24__tar.gz → 0.3.26__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 (100) hide show
  1. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/PKG-INFO +1 -1
  2. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/converter.py +7 -7
  3. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/converter_config.py +5 -4
  4. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/__init__.py +0 -1
  5. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/read_input_step.py +2 -1
  6. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/simple_model.py +5 -4
  7. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/__init__.py +1 -0
  8. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/csv_writer.py +4 -1
  9. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/file_writer.py +4 -1
  10. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/iterator_writer.py +4 -1
  11. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/pandas_writer.py +4 -1
  12. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/record_list_writer.py +4 -1
  13. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/sdf_writer.py +4 -1
  14. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/output/writer.py +8 -3
  15. nerdd_module-0.3.26/nerdd_module/output/writer_config.py +8 -0
  16. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module.egg-info/PKG-INFO +1 -1
  17. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module.egg-info/SOURCES.txt +1 -1
  18. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/pyproject.toml +1 -1
  19. nerdd_module-0.3.24/nerdd_module/model/assign_mol_id_step.py +0 -17
  20. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/LICENSE +0 -0
  21. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/README.md +0 -0
  22. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/__init__.py +0 -0
  23. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/cli.py +0 -0
  24. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/__init__.py +0 -0
  25. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/configuration.py +0 -0
  26. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/default_configuration.py +0 -0
  27. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/dict_configuration.py +0 -0
  28. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/merged_configuration.py +0 -0
  29. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/models.py +0 -0
  30. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/package_configuration.py +0 -0
  31. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/search_yaml_configuration.py +0 -0
  32. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/config/yaml_configuration.py +0 -0
  33. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/__init__.py +0 -0
  34. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/basic_type_converter.py +0 -0
  35. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/mol_converter.py +0 -0
  36. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/problem_list_converter.py +0 -0
  37. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/representation_converter.py +0 -0
  38. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/source_list_converter.py +0 -0
  39. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/converters/void_converter.py +0 -0
  40. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/__init__.py +0 -0
  41. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/depth_first_explorer.py +0 -0
  42. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/explorer.py +0 -0
  43. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/file_reader.py +0 -0
  44. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/gzip_reader.py +0 -0
  45. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/inchi_reader.py +0 -0
  46. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/list_reader.py +0 -0
  47. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/mol_reader.py +0 -0
  48. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/reader.py +0 -0
  49. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/reader_config.py +0 -0
  50. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/sdf_reader.py +0 -0
  51. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/smiles_reader.py +0 -0
  52. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/string_reader.py +0 -0
  53. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/tar_reader.py +0 -0
  54. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/input/zip_reader.py +0 -0
  55. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/assign_name_step.py +0 -0
  56. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/convert_representations_step.py +0 -0
  57. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/enforce_schema_step.py +0 -0
  58. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/model.py +0 -0
  59. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/model/write_output_step.py +0 -0
  60. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/__init__.py +0 -0
  61. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/block_logs.py +0 -0
  62. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/files.py +0 -0
  63. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/get_entry_points.py +0 -0
  64. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/literal.py +0 -0
  65. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/typed_dict.py +0 -0
  66. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/types.py +0 -0
  67. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/polyfills/version.py +0 -0
  68. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/__init__.py +0 -0
  69. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/check_valid_smiles.py +0 -0
  70. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/chembl_structure_pipeline.py +0 -0
  71. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/filter_by_element.py +0 -0
  72. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/filter_by_weight.py +0 -0
  73. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/preprocessing_step.py +0 -0
  74. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/remove_stereochemistry.py +0 -0
  75. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/preprocessing/sanitize.py +0 -0
  76. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/problem.py +0 -0
  77. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/py.typed +0 -0
  78. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/steps/__init__.py +0 -0
  79. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/steps/map_step.py +0 -0
  80. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/steps/output_step.py +0 -0
  81. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/steps/step.py +0 -0
  82. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/__init__.py +0 -0
  83. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/checks.py +0 -0
  84. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/files.py +0 -0
  85. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/models/AtomicMassModel.py +0 -0
  86. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/models/MolWeightModel.py +0 -0
  87. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/models/__init__.py +0 -0
  88. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/predictions.py +0 -0
  89. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/preprocessing/DummyPreprocessingStep.py +0 -0
  90. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/preprocessing/__init__.py +0 -0
  91. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/tests/representations.py +0 -0
  92. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/util/__init__.py +0 -0
  93. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/util/call_with_mappings.py +0 -0
  94. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/util/package.py +0 -0
  95. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module/version.py +0 -0
  96. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module.egg-info/dependency_links.txt +0 -0
  97. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module.egg-info/requires.txt +0 -0
  98. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/nerdd_module.egg-info/top_level.txt +0 -0
  99. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/setup.cfg +0 -0
  100. {nerdd_module-0.3.24 → nerdd_module-0.3.26}/tests/test_features.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: nerdd-module
3
- Version: 0.3.24
3
+ Version: 0.3.26
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>
@@ -38,17 +38,17 @@ class Converter(ABC):
38
38
  @classmethod
39
39
  def __init_subclass__(
40
40
  cls,
41
- is_abstract: bool = False,
42
41
  **kwargs: Any,
43
42
  ) -> None:
44
43
  super().__init_subclass__(**kwargs)
45
44
 
46
- if hasattr(cls, "config"):
47
- data_types = cls.config["data_types"]
48
- output_formats = cls.config["output_formats"]
49
- else:
50
- data_types = None
51
- output_formats = None
45
+ assert hasattr(
46
+ cls, "config"
47
+ ), "All subclasses of Converter need to have a config attribute of type ConverterConfig"
48
+
49
+ data_types = cls.config["data_types"]
50
+ output_formats = cls.config["output_formats"]
51
+ is_abstract = cls.config.get("is_abstract", False)
52
52
 
53
53
  if not is_abstract:
54
54
  if isinstance(data_types, str) or data_types is ALL:
@@ -1,4 +1,4 @@
1
- from typing import List, Optional, Union
1
+ from typing import List, Union
2
2
 
3
3
  from ..polyfills import Literal, TypedDict
4
4
 
@@ -10,6 +10,7 @@ ALL_TYPE = Literal["ALL"]
10
10
  ALL: ALL_TYPE = "ALL"
11
11
 
12
12
 
13
- class ConverterConfig(TypedDict):
14
- data_types: Optional[Union[str, List[str], ALL_TYPE]]
15
- output_formats: Optional[Union[str, List[str], ALL_TYPE]]
13
+ class ConverterConfig(TypedDict, total=False):
14
+ data_types: Union[str, List[str], ALL_TYPE]
15
+ output_formats: Union[str, List[str], ALL_TYPE]
16
+ is_abstract: bool
@@ -1,4 +1,3 @@
1
- from .assign_mol_id_step import *
2
1
  from .assign_name_step import *
3
2
  from .convert_representations_step import *
4
3
  from .model import *
@@ -13,8 +13,9 @@ class ReadInputStep(Step):
13
13
  self._input = input
14
14
 
15
15
  def _run(self, source: Iterator[dict]) -> Iterator[dict]:
16
- for entry in self._explorer.explore(self._input):
16
+ for mol_id, entry in enumerate(self._explorer.explore(self._input)):
17
17
  record = dict(
18
+ mol_id=mol_id,
18
19
  input_text=entry.raw_input,
19
20
  source=entry.source,
20
21
  input_type=entry.input_type,
@@ -18,7 +18,6 @@ from ..preprocessing import PreprocessingStep
18
18
  from ..problem import Problem
19
19
  from ..steps import Step
20
20
  from ..util import get_file_path_to_instance
21
- from .assign_mol_id_step import AssignMolIdStep
22
21
  from .assign_name_step import AssignNameStep
23
22
  from .convert_representations_step import ConvertRepresentationsStep
24
23
  from .enforce_schema_step import EnforceSchemaStep
@@ -52,11 +51,10 @@ class SimpleModel(Model):
52
51
  self, input: Any, input_format: Optional[str], **kwargs: Any
53
52
  ) -> List[Step]:
54
53
  return [
55
- AssignMolIdStep(),
56
54
  AssignNameStep(),
57
55
  *self._preprocessing_steps,
58
56
  # the following step ensures that the column preprocessed_mol is created
59
- # (even is self._preprocessing_steps is empty)
57
+ # (even if self._preprocessing_steps is empty)
60
58
  CustomPreprocessingStep(self),
61
59
  ]
62
60
 
@@ -214,4 +212,7 @@ class CustomPreprocessingStep(PreprocessingStep):
214
212
  self.model = model
215
213
 
216
214
  def _preprocess(self, mol: Mol) -> Tuple[Optional[Mol], List[Problem]]:
217
- return self.model._preprocess(mol)
215
+ try:
216
+ return self.model._preprocess(mol)
217
+ except Exception as e:
218
+ return None, [Problem(type="preprocessing_error", message=str(e))]
@@ -5,3 +5,4 @@ from .pandas_writer import *
5
5
  from .record_list_writer import *
6
6
  from .sdf_writer import *
7
7
  from .writer import *
8
+ from .writer_config import *
@@ -3,11 +3,12 @@ from itertools import chain
3
3
  from typing import IO, Any, Dict, Iterable
4
4
 
5
5
  from .file_writer import FileLike, FileWriter
6
+ from .writer_config import WriterConfig
6
7
 
7
8
  __all__ = ["CsvWriter"]
8
9
 
9
10
 
10
- class CsvWriter(FileWriter, output_format="csv"):
11
+ class CsvWriter(FileWriter):
11
12
  def __init__(self, output_file: FileLike) -> None:
12
13
  super().__init__(output_file, writes_bytes=False)
13
14
 
@@ -22,3 +23,5 @@ class CsvWriter(FileWriter, output_format="csv"):
22
23
  writer.writeheader()
23
24
  for entry in chain([first_entry], entry_iter):
24
25
  writer.writerow(entry)
26
+
27
+ config = WriterConfig(output_format="csv")
@@ -4,6 +4,7 @@ from pathlib import Path
4
4
  from typing import IO, Any, BinaryIO, Iterable, TextIO, Union
5
5
 
6
6
  from .writer import Writer
7
+ from .writer_config import WriterConfig
7
8
 
8
9
  StreamWriter = codecs.getwriter("utf-8")
9
10
 
@@ -13,7 +14,7 @@ __all__ = ["FileWriter", "FileLike"]
13
14
  FileLike = Union[str, Path, TextIO, BinaryIO]
14
15
 
15
16
 
16
- class FileWriter(Writer, is_abstract=True):
17
+ class FileWriter(Writer):
17
18
  """Abstract class for writers."""
18
19
 
19
20
  def __init__(self, output_file: FileLike, writes_bytes: bool = False) -> None:
@@ -39,3 +40,5 @@ class FileWriter(Writer, is_abstract=True):
39
40
  def writes_bytes(self) -> bool:
40
41
  """Whether the writer writes bytes."""
41
42
  return self._writes_bytes
43
+
44
+ config = WriterConfig(is_abstract=True, output_format="file")
@@ -1,13 +1,16 @@
1
1
  from typing import Iterable
2
2
 
3
3
  from .writer import Writer
4
+ from .writer_config import WriterConfig
4
5
 
5
6
  __all__ = ["IteratorWriter"]
6
7
 
7
8
 
8
- class IteratorWriter(Writer, output_format="iterator"):
9
+ class IteratorWriter(Writer):
9
10
  def __init__(self) -> None:
10
11
  pass
11
12
 
12
13
  def write(self, records: Iterable[dict]) -> Iterable[dict]:
13
14
  return records
15
+
16
+ config = WriterConfig(output_format="iterator")
@@ -3,14 +3,17 @@ from typing import Iterable
3
3
  import pandas as pd
4
4
 
5
5
  from .writer import Writer
6
+ from .writer_config import WriterConfig
6
7
 
7
8
  __all__ = ["PandasWriter"]
8
9
 
9
10
 
10
- class PandasWriter(Writer, output_format="pandas"):
11
+ class PandasWriter(Writer):
11
12
  def __init__(self) -> None:
12
13
  pass
13
14
 
14
15
  def write(self, records: Iterable[dict]) -> pd.DataFrame:
15
16
  df = pd.DataFrame(records)
16
17
  return df
18
+
19
+ config = WriterConfig(output_format="pandas")
@@ -1,13 +1,16 @@
1
1
  from typing import Iterable, List
2
2
 
3
3
  from .writer import Writer
4
+ from .writer_config import WriterConfig
4
5
 
5
6
  __all__ = ["RecordListWriter"]
6
7
 
7
8
 
8
- class RecordListWriter(Writer, output_format="record_list"):
9
+ class RecordListWriter(Writer):
9
10
  def __init__(self) -> None:
10
11
  pass
11
12
 
12
13
  def write(self, records: Iterable[dict]) -> List[dict]:
13
14
  return list(records)
15
+
16
+ config = WriterConfig(output_format="record_list")
@@ -3,11 +3,12 @@ from typing import IO, Any, Dict, Iterable
3
3
  from rdkit.Chem import Mol, SDWriter
4
4
 
5
5
  from .file_writer import FileLike, FileWriter
6
+ from .writer_config import WriterConfig
6
7
 
7
8
  __all__ = ["SdfWriter"]
8
9
 
9
10
 
10
- class SdfWriter(FileWriter, output_format="sdf"):
11
+ class SdfWriter(FileWriter):
11
12
  def __init__(self, output_file: FileLike) -> None:
12
13
  super().__init__(output_file, writes_bytes=False)
13
14
 
@@ -40,3 +41,5 @@ class SdfWriter(FileWriter, output_format="sdf"):
40
41
  writer.write(mol)
41
42
  finally:
42
43
  writer.close()
44
+
45
+ config = WriterConfig(output_format="sdf")
@@ -3,7 +3,7 @@ from __future__ import annotations
3
3
  import codecs
4
4
  from abc import ABC, abstractmethod
5
5
  from functools import partial
6
- from typing import Any, Dict, Iterable, List, Optional
6
+ from typing import Any, Dict, Iterable, List
7
7
 
8
8
  from typing_extensions import Protocol
9
9
 
@@ -27,11 +27,16 @@ class Writer(ABC):
27
27
  @classmethod
28
28
  def __init_subclass__(
29
29
  cls,
30
- output_format: Optional[str] = None,
31
- is_abstract: bool = False,
32
30
  **kwargs: Any,
33
31
  ) -> None:
34
32
  super().__init_subclass__(**kwargs)
33
+
34
+ assert hasattr(
35
+ cls, "config"
36
+ ), "All subclasses of Writer need to have a config attribute of type WriterConfig"
37
+ output_format = cls.config["output_format"]
38
+ is_abstract = cls.config.get("is_abstract", False)
39
+
35
40
  if not is_abstract:
36
41
  assert output_format is not None, "output_format must not be None"
37
42
  _factories[output_format] = partial(call_with_mappings, cls)
@@ -0,0 +1,8 @@
1
+ from ..polyfills import TypedDict
2
+
3
+ __all__ = ["WriterConfig"]
4
+
5
+
6
+ class WriterConfig(TypedDict, total=False):
7
+ output_format: str
8
+ is_abstract: bool
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: nerdd-module
3
- Version: 0.3.24
3
+ Version: 0.3.26
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>
@@ -45,7 +45,6 @@ nerdd_module/input/string_reader.py
45
45
  nerdd_module/input/tar_reader.py
46
46
  nerdd_module/input/zip_reader.py
47
47
  nerdd_module/model/__init__.py
48
- nerdd_module/model/assign_mol_id_step.py
49
48
  nerdd_module/model/assign_name_step.py
50
49
  nerdd_module/model/convert_representations_step.py
51
50
  nerdd_module/model/enforce_schema_step.py
@@ -61,6 +60,7 @@ nerdd_module/output/pandas_writer.py
61
60
  nerdd_module/output/record_list_writer.py
62
61
  nerdd_module/output/sdf_writer.py
63
62
  nerdd_module/output/writer.py
63
+ nerdd_module/output/writer_config.py
64
64
  nerdd_module/polyfills/__init__.py
65
65
  nerdd_module/polyfills/block_logs.py
66
66
  nerdd_module/polyfills/files.py
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "nerdd-module"
7
- version = "0.3.24"
7
+ version = "0.3.26"
8
8
  description = "Base package to create NERDD modules"
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
@@ -1,17 +0,0 @@
1
- from typing import Iterator
2
-
3
- from ..steps import Step
4
-
5
- __all__ = ["AssignMolIdStep"]
6
-
7
-
8
- class AssignMolIdStep(Step):
9
- def __init__(self) -> None:
10
- super().__init__()
11
-
12
- def _run(self, source: Iterator[dict]) -> Iterator[dict]:
13
- mol_id = 0
14
- for record in source:
15
- record["mol_id"] = mol_id
16
- mol_id += 1
17
- yield record
File without changes
File without changes
File without changes