QuLab 2.9.9__cp310-cp310-macosx_10_9_universal2.whl → 2.9.10__cp310-cp310-macosx_10_9_universal2.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.
qulab/executor/load.py CHANGED
@@ -1,7 +1,7 @@
1
- import graphlib
1
+ import atexit
2
2
  import inspect
3
3
  import pickle
4
- import sys
4
+ import tempfile
5
5
  import warnings
6
6
  from importlib.util import module_from_spec, spec_from_file_location
7
7
  from pathlib import Path
@@ -333,17 +333,18 @@ def load_workflow_from_file(file_name: str,
333
333
  def load_workflow_from_source_code(workflow_id: str,
334
334
  source_code: str,
335
335
  package='workflows') -> WorkflowType:
336
- path = Path(workflow_id)
337
- module_name = f"{package}.{'.'.join([*path.parts[:-1], path.stem])}"
336
+ workflow_path = Path(workflow_id)
337
+ module_name = f"{package}.{'.'.join([*workflow_path.parts[:-1], workflow_path.stem])}"
338
+
339
+ temp_file = tempfile.NamedTemporaryFile(delete=False, suffix='.py').name
340
+ with open(temp_file, 'w') as f:
341
+ f.write(source_code)
342
+
343
+ atexit.register(lambda f=temp_file: Path(f).unlink(missing_ok=True))
338
344
 
339
- # 创建一个新的模块对象
340
- module = ModuleType(module_name)
341
- # 将模块注册到sys.modules中
342
- sys.modules[module_name] = module
343
- # 将源代码编译成字节码
344
- code = compile(source_code, '<string>', 'exec')
345
- # 在模块的命名空间中执行字节码
346
- exec(code, module.__dict__)
345
+ spec = spec_from_file_location(module_name, temp_file)
346
+ module = module_from_spec(spec)
347
+ spec.loader.exec_module(module)
347
348
 
348
349
  module.__source__ = source_code
349
350
  module.__mtime__ = 0
Binary file
qulab/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "2.9.9"
1
+ __version__ = "2.9.10"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: QuLab
3
- Version: 2.9.9
3
+ Version: 2.9.10
4
4
  Summary: contral instruments and manage data
5
5
  Author-email: feihoo87 <feihoo87@gmail.com>
6
6
  Maintainer-email: feihoo87 <feihoo87@gmail.com>
@@ -1,17 +1,17 @@
1
1
  qulab/__init__.py,sha256=fL8FSMGk4vzTMXLxWgNHpd1fNWau4yujSWjPEPqudos,367
2
2
  qulab/__main__.py,sha256=fjaRSL_uUjNIzBGNgjlGswb9TJ2VD5qnkZHW3hItrD4,68
3
3
  qulab/dicttree.py,sha256=tRRMpGZYVOLw0TEByE3_2Ss8FdOmzuGL9e1DWbs8qoY,13684
4
- qulab/fun.cpython-310-darwin.so,sha256=XWLiXx9_kVCfIZTM2Qd4MQICq-dRez6ZBl7nLoNxMLA,126864
4
+ qulab/fun.cpython-310-darwin.so,sha256=NbfZR-nYQKHtTOcS68QxQ1XrBEcIl9-YlAK7qBVMDXk,126864
5
5
  qulab/typing.py,sha256=vg62sGqxuD9CI5677ejlzAmf2fVdAESZCQjAE_xSxPg,69
6
6
  qulab/utils.py,sha256=BdLdlfjpe6m6gSeONYmpAKTTqxDaYHNk4exlz8kZxTg,2982
7
- qulab/version.py,sha256=gB2GONub0WyICh4-SbXI8ce5oNADu2_gH_-ZqWOveM0,21
7
+ qulab/version.py,sha256=ibM5yQ1vwSBgdRVCwiRzSGyWXnuL47O8ktNp4dWQPKM,22
8
8
  qulab/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  qulab/cli/commands.py,sha256=F1LATmSC9lOAdnrOTMK7DRjETCEcOmMsocovWRyjWTc,597
10
10
  qulab/cli/config.py,sha256=Ei7eSYnbwPPlluDnm8YmWONYiI4g7WtvlZGQdr1Z6vo,3688
11
11
  qulab/executor/__init__.py,sha256=LosPzOMaljSZY1thy_Fxtbrgq7uubJszMABEB7oM7tU,101
12
12
  qulab/executor/analyze.py,sha256=4Hau5LrKUdpweh7W94tcG4ahgxucHOevbM0hm57T7zE,5649
13
13
  qulab/executor/cli.py,sha256=xceK6XNLnNpAVtqvs0_wOAuG0sgS9jg1iTFYmxVUMWY,11795
14
- qulab/executor/load.py,sha256=qI-3b3xvsjZMCthRO3hlzHA0BZI-tH9Y_L0XLBcyWV8,18657
14
+ qulab/executor/load.py,sha256=6QLlATu2KyGY2nrWLFTVxDE4DwoCXx3WNx72QR_LZB0,18715
15
15
  qulab/executor/schedule.py,sha256=XRimchHYCgnMAOtCvNLjwMv9IkcTAyBAUCHKQs5RBRw,18745
16
16
  qulab/executor/storage.py,sha256=8K73KGLAVgchJdtd4rKHXkr1CQOJORWH-Gi57w8IYsw,21081
17
17
  qulab/executor/template.py,sha256=_HEtsUQ5_jSujCw8FBDAK1PRTMRCa4iD4DduHIpjo3c,10569
@@ -98,9 +98,9 @@ qulab/visualization/plot_seq.py,sha256=UWTS6p9nfX_7B8ehcYo6UnSTUCjkBsNU9jiOeW2ca
98
98
  qulab/visualization/qdat.py,sha256=ZeevBYWkzbww4xZnsjHhw7wRorJCBzbG0iEu-XQB4EA,5735
99
99
  qulab/visualization/rot3d.py,sha256=lMrEJlRLwYe6NMBlGkKYpp_V9CTipOAuDy6QW_cQK00,734
100
100
  qulab/visualization/widgets.py,sha256=6KkiTyQ8J-ei70LbPQZAK35wjktY47w2IveOa682ftA,3180
101
- qulab-2.9.9.dist-info/licenses/LICENSE,sha256=PRzIKxZtpQcH7whTG6Egvzl1A0BvnSf30tmR2X2KrpA,1065
102
- qulab-2.9.9.dist-info/METADATA,sha256=YNn0O6ThCfze52902y9RPVsTFtwpoVUpxzKjzqcrZmE,3752
103
- qulab-2.9.9.dist-info/WHEEL,sha256=qnIvK8L8kOW9FTrzifubcmNsZckgNfGDNKzGG7FMEdE,114
104
- qulab-2.9.9.dist-info/entry_points.txt,sha256=b0v1GXOwmxY-nCCsPN_rHZZvY9CtTbWqrGj8u1m8yHo,45
105
- qulab-2.9.9.dist-info/top_level.txt,sha256=3T886LbAsbvjonu_TDdmgxKYUn939BVTRPxPl9r4cEg,6
106
- qulab-2.9.9.dist-info/RECORD,,
101
+ qulab-2.9.10.dist-info/licenses/LICENSE,sha256=PRzIKxZtpQcH7whTG6Egvzl1A0BvnSf30tmR2X2KrpA,1065
102
+ qulab-2.9.10.dist-info/METADATA,sha256=MhYNsJiHzLm1CBvBFtOywr1NxgJ7TXZItACdTXeOJII,3753
103
+ qulab-2.9.10.dist-info/WHEEL,sha256=qnIvK8L8kOW9FTrzifubcmNsZckgNfGDNKzGG7FMEdE,114
104
+ qulab-2.9.10.dist-info/entry_points.txt,sha256=b0v1GXOwmxY-nCCsPN_rHZZvY9CtTbWqrGj8u1m8yHo,45
105
+ qulab-2.9.10.dist-info/top_level.txt,sha256=3T886LbAsbvjonu_TDdmgxKYUn939BVTRPxPl9r4cEg,6
106
+ qulab-2.9.10.dist-info/RECORD,,
File without changes