nerdd-module 0.3.44__tar.gz → 0.3.45__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 (101) hide show
  1. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/PKG-INFO +1 -1
  2. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/file_writer.py +23 -2
  3. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module.egg-info/PKG-INFO +1 -1
  4. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/pyproject.toml +1 -1
  5. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/LICENSE +0 -0
  6. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/README.md +0 -0
  7. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/__init__.py +0 -0
  8. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/cli.py +0 -0
  9. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/__init__.py +0 -0
  10. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/configuration.py +0 -0
  11. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/default_configuration.py +0 -0
  12. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/dict_configuration.py +0 -0
  13. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/merged_configuration.py +0 -0
  14. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/models.py +0 -0
  15. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/package_configuration.py +0 -0
  16. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/search_yaml_configuration.py +0 -0
  17. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/config/yaml_configuration.py +0 -0
  18. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/__init__.py +0 -0
  19. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/basic_type_converter.py +0 -0
  20. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/converter.py +0 -0
  21. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/converter_config.py +0 -0
  22. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/mol_converter.py +0 -0
  23. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/problem_list_converter.py +0 -0
  24. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/representation_converter.py +0 -0
  25. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/source_list_converter.py +0 -0
  26. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/converters/void_converter.py +0 -0
  27. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/__init__.py +0 -0
  28. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/depth_first_explorer.py +0 -0
  29. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/explorer.py +0 -0
  30. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/file_reader.py +0 -0
  31. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/gzip_reader.py +0 -0
  32. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/inchi_reader.py +0 -0
  33. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/list_reader.py +0 -0
  34. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/mol_reader.py +0 -0
  35. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/reader.py +0 -0
  36. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/reader_config.py +0 -0
  37. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/sdf_reader.py +0 -0
  38. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/smiles_reader.py +0 -0
  39. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/stream_reader.py +0 -0
  40. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/string_reader.py +0 -0
  41. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/tar_reader.py +0 -0
  42. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/input/zip_reader.py +0 -0
  43. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/__init__.py +0 -0
  44. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/assign_name_step.py +0 -0
  45. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/convert_representations_step.py +0 -0
  46. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/enforce_schema_step.py +0 -0
  47. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/model.py +0 -0
  48. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/prediction_step.py +0 -0
  49. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/read_input_step.py +0 -0
  50. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/model/write_output_step.py +0 -0
  51. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/__init__.py +0 -0
  52. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/csv_writer.py +0 -0
  53. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/iterator_writer.py +0 -0
  54. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/pandas_writer.py +0 -0
  55. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/record_list_writer.py +0 -0
  56. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/sdf_writer.py +0 -0
  57. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/writer.py +0 -0
  58. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/output/writer_config.py +0 -0
  59. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/__init__.py +0 -0
  60. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/block_logs.py +0 -0
  61. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/files.py +0 -0
  62. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/get_entry_points.py +0 -0
  63. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/literal.py +0 -0
  64. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/typed_dict.py +0 -0
  65. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/types.py +0 -0
  66. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/polyfills/version.py +0 -0
  67. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/__init__.py +0 -0
  68. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/check_valid_smiles.py +0 -0
  69. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/chembl_structure_pipeline.py +0 -0
  70. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/filter_by_element.py +0 -0
  71. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/filter_by_weight.py +0 -0
  72. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/preprocessing_step.py +0 -0
  73. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/remove_small_fragments.py +0 -0
  74. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/remove_stereochemistry.py +0 -0
  75. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/preprocessing/sanitize.py +0 -0
  76. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/problem.py +0 -0
  77. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/py.typed +0 -0
  78. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/steps/__init__.py +0 -0
  79. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/steps/map_step.py +0 -0
  80. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/steps/output_step.py +0 -0
  81. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/steps/step.py +0 -0
  82. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/__init__.py +0 -0
  83. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/checks.py +0 -0
  84. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/files.py +0 -0
  85. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/models/AtomicMassModel.py +0 -0
  86. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/models/MolWeightModel.py +0 -0
  87. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/models/__init__.py +0 -0
  88. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/predictions.py +0 -0
  89. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/preprocessing/DummyPreprocessingStep.py +0 -0
  90. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/preprocessing/__init__.py +0 -0
  91. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/tests/representations.py +0 -0
  92. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/util/__init__.py +0 -0
  93. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/util/call_with_mappings.py +0 -0
  94. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/util/package.py +0 -0
  95. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module/version.py +0 -0
  96. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module.egg-info/SOURCES.txt +0 -0
  97. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module.egg-info/dependency_links.txt +0 -0
  98. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module.egg-info/requires.txt +0 -0
  99. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/nerdd_module.egg-info/top_level.txt +0 -0
  100. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/setup.cfg +0 -0
  101. {nerdd_module-0.3.44 → nerdd_module-0.3.45}/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.44
3
+ Version: 0.3.45
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>
@@ -1,5 +1,6 @@
1
1
  import codecs
2
2
  from abc import abstractmethod
3
+ from io import BufferedIOBase, TextIOBase, TextIOWrapper
3
4
  from pathlib import Path
4
5
  from typing import IO, Any, BinaryIO, Iterable, TextIO, Union
5
6
 
@@ -14,6 +15,13 @@ __all__ = ["FileWriter", "FileLike"]
14
15
  FileLike = Union[str, Path, TextIO, BinaryIO]
15
16
 
16
17
 
18
+ def is_bytes_stream(stream: Union[TextIO, BinaryIO]) -> bool:
19
+ if hasattr(stream, "buffer"):
20
+ return False
21
+ else:
22
+ return True
23
+
24
+
17
25
  class FileWriter(Writer):
18
26
  """Abstract class for writers."""
19
27
 
@@ -28,8 +36,21 @@ class FileWriter(Writer):
28
36
  with open(self._output_file, mode) as f:
29
37
  self._write(f, entries)
30
38
  else:
31
- self._write(self._output_file, entries)
32
- self._output_file.flush()
39
+ if self._writes_bytes == is_bytes_stream(self._output_file):
40
+ stream = self._output_file
41
+ elif self._writes_bytes:
42
+ # underlying writer expects str (but the writer wants to write bytes)
43
+ assert isinstance(self._output_file, TextIOBase) and hasattr(
44
+ self._output_file, "buffer"
45
+ )
46
+ stream = self._output_file.buffer
47
+ elif not self._writes_bytes:
48
+ # underlying writer expects bytes (but the writer wants to write str)
49
+ assert isinstance(self._output_file, BufferedIOBase)
50
+ stream = TextIOWrapper(self._output_file, encoding="utf-8")
51
+
52
+ self._write(stream, entries)
53
+ stream.flush()
33
54
 
34
55
  @abstractmethod
35
56
  def _write(self, output: IO[Any], entries: Iterable[dict]) -> None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nerdd-module
3
- Version: 0.3.44
3
+ Version: 0.3.45
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.44"
7
+ version = "0.3.45"
8
8
  description = "Base package to create NERDD modules"
9
9
  readme = "README.md"
10
10
  license = "BSD-3-Clause"
File without changes
File without changes
File without changes