nerdd-module 0.3.52__tar.gz → 0.3.53__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 (102) hide show
  1. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/PKG-INFO +1 -1
  2. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/cli.py +4 -5
  3. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/merged_configuration.py +16 -10
  4. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module.egg-info/PKG-INFO +1 -1
  5. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/pyproject.toml +2 -1
  6. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/LICENSE +0 -0
  7. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/README.md +0 -0
  8. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/__init__.py +0 -0
  9. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/__init__.py +0 -0
  10. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/configuration.py +0 -0
  11. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/default_configuration.py +0 -0
  12. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/dict_configuration.py +0 -0
  13. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/models.py +0 -0
  14. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/package_configuration.py +0 -0
  15. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/search_yaml_configuration.py +0 -0
  16. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/config/yaml_configuration.py +0 -0
  17. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/__init__.py +0 -0
  18. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/basic_type_converter.py +0 -0
  19. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/converter.py +0 -0
  20. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/converter_config.py +0 -0
  21. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/mol_converter.py +0 -0
  22. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/problem_list_converter.py +0 -0
  23. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/representation_converter.py +0 -0
  24. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/source_list_converter.py +0 -0
  25. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/converters/void_converter.py +0 -0
  26. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/__init__.py +0 -0
  27. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/depth_first_explorer.py +0 -0
  28. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/explorer.py +0 -0
  29. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/file_reader.py +0 -0
  30. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/gzip_reader.py +0 -0
  31. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/inchi_reader.py +0 -0
  32. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/list_reader.py +0 -0
  33. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/mol_reader.py +0 -0
  34. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/reader.py +0 -0
  35. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/reader_config.py +0 -0
  36. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/sdf_reader.py +0 -0
  37. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/smiles_reader.py +0 -0
  38. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/stream_reader.py +0 -0
  39. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/string_reader.py +0 -0
  40. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/tar_reader.py +0 -0
  41. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/input/zip_reader.py +0 -0
  42. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/__init__.py +0 -0
  43. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/assign_name_step.py +0 -0
  44. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/convert_representations_step.py +0 -0
  45. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/enforce_schema_step.py +0 -0
  46. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/model.py +0 -0
  47. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/prediction_step.py +0 -0
  48. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/read_input_step.py +0 -0
  49. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/model/write_output_step.py +0 -0
  50. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/__init__.py +0 -0
  51. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/csv_writer.py +0 -0
  52. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/file_writer.py +0 -0
  53. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/iterator_writer.py +0 -0
  54. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/pandas_writer.py +0 -0
  55. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/record_list_writer.py +0 -0
  56. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/sdf_writer.py +0 -0
  57. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/writer.py +0 -0
  58. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/output/writer_config.py +0 -0
  59. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/__init__.py +0 -0
  60. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/block_logs.py +0 -0
  61. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/files.py +0 -0
  62. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/get_entry_points.py +0 -0
  63. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/literal.py +0 -0
  64. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/typed_dict.py +0 -0
  65. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/types.py +0 -0
  66. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/polyfills/version.py +0 -0
  67. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/__init__.py +0 -0
  68. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/check_valid_smiles.py +0 -0
  69. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/chembl_structure_pipeline.py +0 -0
  70. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/filter_by_element.py +0 -0
  71. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/filter_by_weight.py +0 -0
  72. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/preprocessing_step.py +0 -0
  73. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/remove_hydrogens.py +0 -0
  74. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/remove_small_fragments.py +0 -0
  75. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/remove_stereochemistry.py +0 -0
  76. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/preprocessing/sanitize.py +0 -0
  77. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/problem.py +0 -0
  78. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/py.typed +0 -0
  79. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/steps/__init__.py +0 -0
  80. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/steps/map_step.py +0 -0
  81. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/steps/output_step.py +0 -0
  82. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/steps/step.py +0 -0
  83. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/__init__.py +0 -0
  84. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/checks.py +0 -0
  85. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/files.py +0 -0
  86. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/models/AtomicMassModel.py +0 -0
  87. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/models/MolWeightModel.py +0 -0
  88. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/models/__init__.py +0 -0
  89. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/predictions.py +0 -0
  90. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/preprocessing/DummyPreprocessingStep.py +0 -0
  91. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/preprocessing/__init__.py +0 -0
  92. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/tests/representations.py +0 -0
  93. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/util/__init__.py +0 -0
  94. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/util/call_with_mappings.py +0 -0
  95. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/util/package.py +0 -0
  96. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module/version.py +0 -0
  97. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module.egg-info/SOURCES.txt +0 -0
  98. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module.egg-info/dependency_links.txt +0 -0
  99. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module.egg-info/requires.txt +0 -0
  100. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/nerdd_module.egg-info/top_level.txt +0 -0
  101. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/setup.cfg +0 -0
  102. {nerdd_module-0.3.52 → nerdd_module-0.3.53}/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.52
3
+ Version: 0.3.53
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>
@@ -30,7 +30,7 @@ def infer_click_type(param: JobParameter) -> click.ParamType:
30
30
  choices = [str(c.value) for c in param.choices]
31
31
  return click.Choice(choices)
32
32
 
33
- type_map = {
33
+ type_map: dict[str, click.ParamType] = {
34
34
  "float": click.FLOAT,
35
35
  "integer": click.INT,
36
36
  "string": click.STRING,
@@ -67,10 +67,9 @@ def auto_cli(f: Callable[..., Model], *args: Any, **kwargs: Any) -> None:
67
67
 
68
68
  # compose footer with examples
69
69
  examples = []
70
- if hasattr(model, "config"):
71
- example_smiles = model.config.example_smiles
72
- if example_smiles is not None:
73
- examples.append(example_smiles)
70
+ example_smiles = model.config.example_smiles
71
+ if example_smiles is not None:
72
+ examples.append(example_smiles)
74
73
 
75
74
  for ReaderClass in Reader.get_reader_mapping():
76
75
  if hasattr(ReaderClass, "config"):
@@ -1,4 +1,5 @@
1
1
  from collections import Counter
2
+ from typing import Any
2
3
 
3
4
  from .configuration import Configuration
4
5
  from .dict_configuration import DictConfiguration
@@ -6,27 +7,32 @@ from .dict_configuration import DictConfiguration
6
7
  __all__ = ["MergedConfiguration"]
7
8
 
8
9
 
9
- def merge(*args: dict) -> dict:
10
+ def merge(*args: Any) -> Any:
10
11
  assert len(args) > 0
11
12
 
12
- first_entry = args[0]
13
- assert all(isinstance(d, type(first_entry)) for d in args)
13
+ if all(arg is None for arg in args):
14
+ return None
14
15
 
15
- if isinstance(first_entry, list):
16
- return [e for d in args for e in d]
17
- if isinstance(first_entry, dict):
18
- count_fields = Counter([k for d in args for k in d.keys()])
16
+ valid_args = [arg for arg in args if arg is not None]
17
+
18
+ first_valid_entry = valid_args[0]
19
+ assert all(isinstance(d, type(first_valid_entry)) for d in valid_args)
20
+
21
+ if isinstance(first_valid_entry, list):
22
+ return [e for d in valid_args for e in d]
23
+ if isinstance(first_valid_entry, dict):
24
+ count_fields = Counter([k for d in valid_args for k in d.keys()])
19
25
 
20
26
  # merge fields that occur in multiple dicts
21
27
  overlapping_fields = [k for k, v in count_fields.items() if v > 1]
22
28
  merged_overlapping_fields = {
23
- k: merge(*[d[k] for d in args if k in d]) for k in overlapping_fields
29
+ k: merge(*[d[k] for d in valid_args if k in d]) for k in overlapping_fields
24
30
  }
25
31
 
26
32
  # collect fields that occur in only one dict
27
33
  non_overlapping_fields = [k for k, v in count_fields.items() if v == 1]
28
34
  merged_non_overlapping_fields = {
29
- k: v for d in args for k, v in d.items() if k in non_overlapping_fields
35
+ k: v for d in valid_args for k, v in d.items() if k in non_overlapping_fields
30
36
  }
31
37
 
32
38
  return {
@@ -36,7 +42,7 @@ def merge(*args: dict) -> dict:
36
42
  else:
37
43
  # merge all configurations starting from the first one
38
44
  # --> last configuration has the highest priority
39
- return args[-1]
45
+ return valid_args[-1]
40
46
 
41
47
 
42
48
  class MergedConfiguration(DictConfiguration):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nerdd-module
3
- Version: 0.3.52
3
+ Version: 0.3.53
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.52"
7
+ version = "0.3.53"
8
8
  description = "Base package to create NERDD modules"
9
9
  readme = "README.md"
10
10
  license = "BSD-3-Clause"
@@ -88,6 +88,7 @@ Repository = "https://github.com/molinfo-vienna/nerdd-module"
88
88
  #
89
89
  # TOOLS
90
90
  #
91
+
91
92
  [tool.setuptools.packages.find]
92
93
  where = ["."]
93
94
  include = ["nerdd_module*"]
File without changes
File without changes
File without changes