iris-pex-embedded-python 3.5.4b4__tar.gz → 3.5.5__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 (97) hide show
  1. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/PKG-INFO +1 -1
  2. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/pyproject.toml +1 -1
  3. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_business_process.py +3 -2
  4. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_cli.py +32 -1
  5. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Director.cls +8 -0
  6. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iris_pex_embedded_python.egg-info/PKG-INFO +1 -1
  7. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/LICENSE +0 -0
  8. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/README.md +0 -0
  9. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/setup.cfg +0 -0
  10. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/setup.py +0 -0
  11. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/__init__.py +0 -0
  12. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/BusinessOperation.cls +0 -0
  13. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/BusinessProcess.cls +0 -0
  14. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/BusinessService.cls +0 -0
  15. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Common.cls +0 -0
  16. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Director.cls +0 -0
  17. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Duplex/Operation.cls +0 -0
  18. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Duplex/Process.cls +0 -0
  19. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Duplex/Service.cls +0 -0
  20. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/InboundAdapter.cls +0 -0
  21. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Message.cls +0 -0
  22. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/OutboundAdapter.cls +0 -0
  23. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/PickleMessage.cls +0 -0
  24. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/PrivateSession/Duplex.cls +0 -0
  25. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Ack.cls +0 -0
  26. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Poll.cls +0 -0
  27. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Start.cls +0 -0
  28. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/PrivateSession/Message/Stop.cls +0 -0
  29. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Test.cls +0 -0
  30. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/PEX/Utils.cls +0 -0
  31. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/cls/Grongier/Service/WSGI.cls +0 -0
  32. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/__init__.py +0 -0
  33. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/__main__.py +0 -0
  34. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/_business_host.py +0 -0
  35. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/_cli.py +0 -0
  36. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/_common.py +0 -0
  37. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/_director.py +0 -0
  38. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/_utils.py +0 -0
  39. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/grongier/pex/wsgi/handlers.py +0 -0
  40. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/__init__.py +0 -0
  41. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/__main__.py +0 -0
  42. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_async_request.py +0 -0
  43. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_business_host.py +0 -0
  44. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_business_operation.py +0 -0
  45. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_business_service.py +0 -0
  46. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_common.py +0 -0
  47. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_debugpy.py +0 -0
  48. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_decorators.py +0 -0
  49. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_director.py +0 -0
  50. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_dispatch.py +0 -0
  51. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_generator_request.py +0 -0
  52. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_inbound_adapter.py +0 -0
  53. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_iris.py +0 -0
  54. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_log_manager.py +0 -0
  55. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_message.py +0 -0
  56. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_message_validator.py +0 -0
  57. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_outbound_adapter.py +0 -0
  58. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_private_session_duplex.py +0 -0
  59. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_private_session_process.py +0 -0
  60. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_remote.py +0 -0
  61. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_serialization.py +0 -0
  62. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/_utils.py +0 -0
  63. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/BusinessOperation.cls +0 -0
  64. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/BusinessProcess.cls +0 -0
  65. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/BusinessService.cls +0 -0
  66. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Common.cls +0 -0
  67. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Duplex/Operation.cls +0 -0
  68. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Duplex/Process.cls +0 -0
  69. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Duplex/Service.cls +0 -0
  70. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Generator/Message/Ack.cls +0 -0
  71. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Generator/Message/Poll.cls +0 -0
  72. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Generator/Message/Start.cls +0 -0
  73. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Generator/Message/StartPickle.cls +0 -0
  74. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Generator/Message/Stop.cls +0 -0
  75. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/InboundAdapter.cls +0 -0
  76. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Message/JSONSchema.cls +0 -0
  77. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Message.cls +0 -0
  78. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/OutboundAdapter.cls +0 -0
  79. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/PickleMessage.cls +0 -0
  80. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/PrivateSession/Duplex.cls +0 -0
  81. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/PrivateSession/Message/Ack.cls +0 -0
  82. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/PrivateSession/Message/Poll.cls +0 -0
  83. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/PrivateSession/Message/Start.cls +0 -0
  84. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/PrivateSession/Message/Stop.cls +0 -0
  85. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Projection.cls +0 -0
  86. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Service/Remote/Handler.cls +0 -0
  87. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Service/Remote/Rest/v1.cls +0 -0
  88. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Service/WSGI.cls +0 -0
  89. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Test.cls +0 -0
  90. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Utils.cls +0 -0
  91. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/cls/IOP/Wrapper.cls +0 -0
  92. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iop/wsgi/handlers.py +0 -0
  93. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iris_pex_embedded_python.egg-info/SOURCES.txt +0 -0
  94. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iris_pex_embedded_python.egg-info/dependency_links.txt +0 -0
  95. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iris_pex_embedded_python.egg-info/entry_points.txt +0 -0
  96. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/src/iris_pex_embedded_python.egg-info/requires.txt +0 -0
  97. {iris_pex_embedded_python-3.5.4b4 → iris_pex_embedded_python-3.5.5}/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.5.4b4
3
+ Version: 3.5.5
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.5.4b4"
6
+ version = "3.5.5"
7
7
  description = "Iris Interoperability based on Embedded Python"
8
8
  readme = "README.md"
9
9
  authors = [
@@ -86,10 +86,11 @@ class _BusinessProcess(_BusinessHost):
86
86
  Raises:
87
87
  TypeError: If request is not of type Message or IRISObject
88
88
  """
89
+ # Convert boolean to int for Iris API
89
90
  if response_required:
90
- response_required = True
91
+ response_required = 1 # type: ignore
91
92
  else:
92
- response_required = False
93
+ response_required = 0 # type: ignore
93
94
  return self.iris_handle.dispatchSendRequestAsync(target, request, response_required, completion_key, description)
94
95
 
95
96
  def set_timer(self, timeout: Union[int, str], completion_key: Optional[str]=None) -> None:
@@ -28,6 +28,7 @@ class CommandType(Enum):
28
28
  LOG = auto()
29
29
  INIT = auto()
30
30
  HELP = auto()
31
+ UPDATE = auto()
31
32
 
32
33
  @dataclass
33
34
  class CommandArgs:
@@ -50,6 +51,7 @@ class CommandArgs:
50
51
  body: Optional[str] = None
51
52
  namespace: Optional[str] = None
52
53
  force_local: bool = False
54
+ update: bool = False
53
55
 
54
56
  class Command:
55
57
  def __init__(self, args: CommandArgs):
@@ -59,7 +61,29 @@ class Command:
59
61
  # set environment variable IRISNAMESPACE
60
62
  os.environ['IRISNAMESPACE'] = self.args.namespace
61
63
 
64
+ def _has_primary_command(self) -> bool:
65
+ return any([
66
+ self.args.default,
67
+ self.args.list,
68
+ self.args.start,
69
+ self.args.stop,
70
+ self.args.kill,
71
+ self.args.restart,
72
+ self.args.status,
73
+ self.args.test,
74
+ self.args.version,
75
+ self.args.export,
76
+ self.args.migrate,
77
+ self.args.log,
78
+ self.args.init,
79
+ self.args.update,
80
+ ])
81
+
62
82
  def execute(self) -> None:
83
+ if self.args.namespace == 'not_set' and not self._has_primary_command():
84
+ print(os.getenv('IRISNAMESPACE', 'not set'))
85
+ return
86
+
63
87
  command_type = self._determine_command_type()
64
88
  command_handlers = {
65
89
  CommandType.DEFAULT: self._handle_default,
@@ -75,7 +99,8 @@ class Command:
75
99
  CommandType.MIGRATE: self._handle_migrate,
76
100
  CommandType.LOG: self._handle_log,
77
101
  CommandType.INIT: self._handle_init,
78
- CommandType.HELP: self._handle_help
102
+ CommandType.HELP: self._handle_help,
103
+ CommandType.UPDATE: self._handle_update,
79
104
  }
80
105
  handler = command_handlers.get(command_type)
81
106
  if handler:
@@ -95,6 +120,7 @@ class Command:
95
120
  if self.args.migrate: return CommandType.MIGRATE
96
121
  if self.args.log: return CommandType.LOG
97
122
  if self.args.init: return CommandType.INIT
123
+ if self.args.update: return CommandType.UPDATE
98
124
  return CommandType.HELP
99
125
 
100
126
  def _handle_default(self) -> None:
@@ -128,6 +154,9 @@ class Command:
128
154
  def _handle_status(self) -> None:
129
155
  print(json.dumps(_Director.status_production(), indent=4))
130
156
 
157
+ def _handle_update(self) -> None:
158
+ _Director.update_production()
159
+
131
160
  def _handle_test(self) -> None:
132
161
  test_name = None if self.args.test == 'not_set' else self.args.test
133
162
  response = _Director.test_component(
@@ -164,6 +193,7 @@ class Command:
164
193
  create_parser().print_help()
165
194
  try:
166
195
  print(f"\nDefault production: {_Director.get_default_production()}")
196
+ print(f"\nNamespace: {os.getenv('IRISNAMESPACE','not set')}")
167
197
  except Exception:
168
198
  logging.warning("Could not retrieve default production.")
169
199
 
@@ -186,6 +216,7 @@ def create_parser() -> argparse.ArgumentParser:
186
216
  parser.add_argument('-L', '--log', help='display log', nargs='?', const='not_set')
187
217
  parser.add_argument('-i', '--init', help='init the pex module in iris', nargs='?', const='not_set')
188
218
  parser.add_argument('-t', '--test', help='test the pex module in iris', nargs='?', const='not_set')
219
+ parser.add_argument('-u', '--update', help='update a production', action='store_true')
189
220
 
190
221
  # Command groups
191
222
  start = main_parser.add_argument_group('start arguments')
@@ -56,6 +56,14 @@ ClassMethod StatusProduction() As %String
56
56
  $$$eProductionStateSuspended:"suspended",
57
57
  $$$eProductionStateTroubled:"toubled",
58
58
  :"unknown"))
59
+ // Get if production needs update
60
+ set tNeedsUpdate = ##class(Ens.Director).ProductionNeedsUpdate(.tMsgUpdate)
61
+ do tInfo."__setitem__"("NeedsUpdate",tNeedsUpdate)
62
+ // If needs update get message
63
+ if tNeedsUpdate {
64
+ do tInfo."__setitem__"("UpdateMessage",tMsgUpdate)
65
+ }
66
+ // Get last start time
59
67
  Return tInfo
60
68
  }
61
69
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: iris_pex_embedded_python
3
- Version: 3.5.4b4
3
+ Version: 3.5.5
4
4
  Summary: Iris Interoperability based on Embedded Python
5
5
  Author-email: grongier <guillaume.rongier@intersystems.com>
6
6
  License: MIT License