iris-pex-embedded-python 3.1.1b7__py3-none-any.whl → 3.1.2b1__py3-none-any.whl

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.

iop/cls/IOP/Utils.cls CHANGED
@@ -125,16 +125,24 @@ ClassMethod GetRemoteClassInfo(
125
125
  set importlib = ##class(%SYS.Python).Import("importlib")
126
126
  set builtins = ##class(%SYS.Python).Import("builtins")
127
127
  set sys = ##class(%SYS.Python).Import("sys")
128
+ set os = ##class(%SYS.Python).Import("os")
128
129
  // Load the module form a specific path
129
- set spec = importlib.util."spec_from_file_location"(pModule, onePath_pModule_".py")
130
- set module = importlib.util."module_from_spec"(spec)
131
- do sys.modules."__setitem__"(pModule, module)
132
- do spec.loader."exec_module"(module)
130
+ // Guess the full path to the module
131
+ set path = ..GuessFullPath(pModule, onePath)
132
+ Try {
133
+ set spec = importlib.util."spec_from_file_location"(pModule, path)
134
+ set module = importlib.util."module_from_spec"(spec)
135
+ do sys.modules."__setitem__"(pModule, module)
136
+ do spec.loader."exec_module"(module)
137
+ }
138
+ Catch ex {
139
+ set module = importlib."import_module"(pModule)
140
+ }
141
+
133
142
  // Get the class
134
143
  set class = builtins.getattr(module, pRemoteClassname)
135
144
  set tClass = class."__new__"(class)
136
145
 
137
-
138
146
  If $IsObject(tClass) {
139
147
  #; List of information about the class as a whole - $lb(SuperClass, Description, InfoURL, IconURL, Adapter)
140
148
  Set pClassDetails = tClass."_get_info"()
@@ -152,13 +160,21 @@ ClassMethod GetRemoteClassInfo(
152
160
  Quit tSC
153
161
  }
154
162
 
155
- /// Set tConnectionSettings("Classpaths") = pCLASSPATHS
156
- /// Set tConnectionSettings("Module") = pModule
157
- /// Set tConnectionSettings("Classname") = pRemoteClassname
158
- /// Set:(""=pProxyClassname) pProxyClassname = pRemoteClassname
159
- ///
160
- /// Set tSC = ..GenerateProxyClass(pProxyClassname,.tConnectionSettings,tClassDetails,tRemoteSettings,pOverwrite)
161
- /// "bo","Duplex","/irisdev/app/src/python/demo/duplex/",1,"Duplex.Duplex"
163
+ ClassMethod GuessFullPath(
164
+ module As %String,
165
+ path As %String) As %String
166
+ {
167
+ If $Find(module, ".") {
168
+ Set module = $Piece(module, ".", *)
169
+ }
170
+ If $Find(path, module) {
171
+ Set path = $Piece(path, module, 1)
172
+ }
173
+ // append the module to the path
174
+ Set path = path _ module _ ".py"
175
+ Return path
176
+ }
177
+
162
178
  ClassMethod GenerateProxyClass(
163
179
  pClassname As %String,
164
180
  ByRef pConnectionSettings,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: iris_pex_embedded_python
3
- Version: 3.1.1b7
3
+ Version: 3.1.2b1
4
4
  Summary: Iris Interoperability based on Embedded Python
5
5
  Author-email: grongier <guillaume.rongier@intersystems.com>
6
6
  License: MIT License
@@ -116,7 +116,7 @@ iop/cls/IOP/Message.cls,sha256=n0r0FslXdDfPcHIiAlW7n596DDsDSNlTX8UTPaMnSV8,9911
116
116
  iop/cls/IOP/OutboundAdapter.cls,sha256=9eOwy5ojwcTzwrHs6LNrFQvUD8aqcoNCZrILN1ycdDM,958
117
117
  iop/cls/IOP/PickleMessage.cls,sha256=S3y7AClQ8mAILjxPuHdCjGosBZYzGbUQ5WTv4mYPNMQ,1673
118
118
  iop/cls/IOP/Test.cls,sha256=gAC9PEfMZsvAEWIa241-ug2FWAhITbN1SOispZzJPnI,2094
119
- iop/cls/IOP/Utils.cls,sha256=UgSEH2gqiNKYK_NAc2QUXF0A0VXHK-vbwWsHplHV2T8,13994
119
+ iop/cls/IOP/Utils.cls,sha256=1fkb3ff-FhRRx5nIqPUzj7sndlo0ptHfOvMoC4bw0eY,14073
120
120
  iop/cls/IOP/Duplex/Operation.cls,sha256=K_fmgeLjPZQbHgNrc0kd6DUQoW0fDn1VHQjJxHo95Zk,525
121
121
  iop/cls/IOP/Duplex/Process.cls,sha256=xbefZ4z84a_IUhavWN6P_gZBzqkdJ5XRTXxro6iDvAg,6986
122
122
  iop/cls/IOP/Duplex/Service.cls,sha256=sTMOQUCMBgVitmQkM8bbsrmrRtCdj91VlctJ3I7b8WU,161
@@ -135,9 +135,9 @@ iris/iris_ipm.pyi,sha256=j7CNUZcjeDu5sgeWUZJO_Qi4vQmHh6aD-jPWv8OdoUs,374
135
135
  iris/iris_utils.py,sha256=kg80O3yRpHIutM-mCyr4xCeTvKWPE-Kai-b6Dxw4vQ4,9882
136
136
  irisnative/_IRISNative.py,sha256=HQ4nBhc8t8_5OtxdMG-kx1aa-T1znf2I8obZOPLOPzg,665
137
137
  irisnative/__init__.py,sha256=6YmvBLQSURsCPKaNg7LK-xpo4ipDjrlhKuwdfdNb3Kg,341
138
- iris_pex_embedded_python-3.1.1b7.dist-info/LICENSE,sha256=rZSiBFId_sfbJ6RL0GjjPX-InNLkNS9ou7eQsikciI8,1089
139
- iris_pex_embedded_python-3.1.1b7.dist-info/METADATA,sha256=-epE6C4-AGz-o93Vh3xX2rRDUoN1wToTM121HiKWm68,50122
140
- iris_pex_embedded_python-3.1.1b7.dist-info/WHEEL,sha256=uCRv0ZEik_232NlR4YDw4Pv3Ajt5bKvMH13NUU7hFuI,91
141
- iris_pex_embedded_python-3.1.1b7.dist-info/entry_points.txt,sha256=pj-i4LSDyiSP6xpHlVjMCbg1Pik7dC3_sdGY3Yp9Vhk,38
142
- iris_pex_embedded_python-3.1.1b7.dist-info/top_level.txt,sha256=jkWtvFKOp1Q-uO_VpGpfx5TcW7DS39z1liOAVp6zLig,47
143
- iris_pex_embedded_python-3.1.1b7.dist-info/RECORD,,
138
+ iris_pex_embedded_python-3.1.2b1.dist-info/LICENSE,sha256=rZSiBFId_sfbJ6RL0GjjPX-InNLkNS9ou7eQsikciI8,1089
139
+ iris_pex_embedded_python-3.1.2b1.dist-info/METADATA,sha256=rEj2oBw5yxW16dG9w6zJrUUYr1_Kf5-1FXdou5hbf0M,50122
140
+ iris_pex_embedded_python-3.1.2b1.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
141
+ iris_pex_embedded_python-3.1.2b1.dist-info/entry_points.txt,sha256=pj-i4LSDyiSP6xpHlVjMCbg1Pik7dC3_sdGY3Yp9Vhk,38
142
+ iris_pex_embedded_python-3.1.2b1.dist-info/top_level.txt,sha256=jkWtvFKOp1Q-uO_VpGpfx5TcW7DS39z1liOAVp6zLig,47
143
+ iris_pex_embedded_python-3.1.2b1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (74.1.1)
2
+ Generator: setuptools (74.1.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5