iris-pex-embedded-python 3.4.1b3__tar.gz → 3.4.1b4__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.

Potentially problematic release.


This version of iris-pex-embedded-python might be problematic. Click here for more details.

Files changed (85) hide show
  1. {iris_pex_embedded_python-3.4.1b3/src/iris_pex_embedded_python.egg-info → iris_pex_embedded_python-3.4.1b4}/PKG-INFO +1 -1
  2. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/pyproject.toml +1 -1
  3. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_serialization.py +15 -7
  4. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4/src/iris_pex_embedded_python.egg-info}/PKG-INFO +1 -1
  5. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/LICENSE +0 -0
  6. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/README.md +0 -0
  7. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/setup.cfg +0 -0
  8. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/setup.py +0 -0
  9. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/__init__.py +0 -0
  10. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/BusinessOperation.cls +0 -0
  11. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/BusinessProcess.cls +0 -0
  12. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/BusinessService.cls +0 -0
  13. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Common.cls +0 -0
  14. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Director.cls +0 -0
  15. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Duplex/Operation.cls +0 -0
  16. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Duplex/Process.cls +0 -0
  17. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Duplex/Service.cls +0 -0
  18. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/InboundAdapter.cls +0 -0
  19. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Message.cls +0 -0
  20. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/OutboundAdapter.cls +0 -0
  21. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/PickleMessage.cls +0 -0
  22. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/PrivateSession/Duplex.cls +0 -0
  23. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Ack.cls +0 -0
  24. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Poll.cls +0 -0
  25. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Start.cls +0 -0
  26. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Stop.cls +0 -0
  27. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Test.cls +0 -0
  28. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/PEX/Utils.cls +0 -0
  29. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/cls/Grongier/Service/WSGI.cls +0 -0
  30. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/__init__.py +0 -0
  31. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/__main__.py +0 -0
  32. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/_business_host.py +0 -0
  33. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/_cli.py +0 -0
  34. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/_common.py +0 -0
  35. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/_director.py +0 -0
  36. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/_utils.py +0 -0
  37. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/grongier/pex/wsgi/handlers.py +0 -0
  38. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/__init__.py +0 -0
  39. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/__main__.py +0 -0
  40. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_async_request.py +0 -0
  41. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_business_host.py +0 -0
  42. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_business_operation.py +0 -0
  43. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_business_process.py +0 -0
  44. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_business_service.py +0 -0
  45. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_cli.py +0 -0
  46. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_common.py +0 -0
  47. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_decorators.py +0 -0
  48. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_director.py +0 -0
  49. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_dispatch.py +0 -0
  50. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_inbound_adapter.py +0 -0
  51. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_iris.py +0 -0
  52. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_log_manager.py +0 -0
  53. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_message.py +0 -0
  54. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_message_validator.py +0 -0
  55. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_outbound_adapter.py +0 -0
  56. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_private_session_duplex.py +0 -0
  57. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_private_session_process.py +0 -0
  58. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/_utils.py +0 -0
  59. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/BusinessOperation.cls +0 -0
  60. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/BusinessProcess.cls +0 -0
  61. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/BusinessService.cls +0 -0
  62. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Common.cls +0 -0
  63. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Director.cls +0 -0
  64. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Duplex/Operation.cls +0 -0
  65. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Duplex/Process.cls +0 -0
  66. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Duplex/Service.cls +0 -0
  67. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/InboundAdapter.cls +0 -0
  68. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Message/JSONSchema.cls +0 -0
  69. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Message.cls +0 -0
  70. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/OutboundAdapter.cls +0 -0
  71. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/PickleMessage.cls +0 -0
  72. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/PrivateSession/Duplex.cls +0 -0
  73. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/PrivateSession/Message/Ack.cls +0 -0
  74. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/PrivateSession/Message/Poll.cls +0 -0
  75. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/PrivateSession/Message/Start.cls +0 -0
  76. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/PrivateSession/Message/Stop.cls +0 -0
  77. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Service/WSGI.cls +0 -0
  78. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Test.cls +0 -0
  79. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/cls/IOP/Utils.cls +0 -0
  80. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iop/wsgi/handlers.py +0 -0
  81. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iris_pex_embedded_python.egg-info/SOURCES.txt +0 -0
  82. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iris_pex_embedded_python.egg-info/dependency_links.txt +0 -0
  83. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iris_pex_embedded_python.egg-info/entry_points.txt +0 -0
  84. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iris_pex_embedded_python.egg-info/requires.txt +0 -0
  85. {iris_pex_embedded_python-3.4.1b3 → iris_pex_embedded_python-3.4.1b4}/src/iris_pex_embedded_python.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: iris_pex_embedded_python
3
- Version: 3.4.1b3
3
+ Version: 3.4.1b4
4
4
  Summary: Iris Interoperability based on Embedded Python
5
5
  Author-email: grongier <guillaume.rongier@intersystems.com>
6
6
  License: MIT License
@@ -3,7 +3,7 @@ requires = ["setuptools", "wheel"]
3
3
 
4
4
  [project]
5
5
  name = "iris_pex_embedded_python"
6
- version = "3.4.1b3"
6
+ version = "3.4.1b4"
7
7
  description = "Iris Interoperability based on Embedded Python"
8
8
  readme = "README.md"
9
9
  authors = [
@@ -4,7 +4,7 @@ import importlib
4
4
  import inspect
5
5
  import pickle
6
6
  import json
7
- from dataclasses import asdict, is_dataclass
7
+ from dataclasses import is_dataclass
8
8
  from typing import Any, Dict, Type
9
9
 
10
10
  from . import _iris
@@ -149,12 +149,20 @@ def dataclass_from_dict(klass: Type, dikt: Dict) -> Any:
149
149
  def dataclass_to_dict(instance: Any) -> Dict:
150
150
  """Converts a class instance to a dictionary.
151
151
  Handles non attended fields."""
152
- dikt = asdict(instance)
153
- # assign any extra fields
154
- for k, v in vars(instance).items():
155
- if k not in dikt:
156
- dikt[k] = v
157
- return dikt
152
+ result = {}
153
+ for field in instance.__dict__:
154
+ value = getattr(instance, field)
155
+ if is_dataclass(value):
156
+ result[field] = dataclass_to_dict(value)
157
+ elif isinstance(value, list):
158
+ result[field] = [dataclass_to_dict(i) if is_dataclass(i) else i for i in value]
159
+ elif isinstance(value, dict):
160
+ result[field] = {k: dataclass_to_dict(v) if is_dataclass(v) else v for k, v in value.items()}
161
+ elif hasattr(value, '__dict__'):
162
+ result[field] = dataclass_to_dict(value)
163
+ else:
164
+ result[field] = value
165
+ return result
158
166
 
159
167
  # Maintain backwards compatibility
160
168
  serialize_pickle_message = lambda msg: MessageSerializer.serialize(msg, use_pickle=True)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: iris_pex_embedded_python
3
- Version: 3.4.1b3
3
+ Version: 3.4.1b4
4
4
  Summary: Iris Interoperability based on Embedded Python
5
5
  Author-email: grongier <guillaume.rongier@intersystems.com>
6
6
  License: MIT License