MultiPyVu 3.1.0__tar.gz → 3.1.1__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 (56) hide show
  1. {multipyvu-3.1.0/src/MultiPyVu.egg-info → multipyvu-3.1.1}/PKG-INFO +9 -2
  2. {multipyvu-3.1.0 → multipyvu-3.1.1}/README.md +8 -1
  3. {multipyvu-3.1.0 → multipyvu-3.1.1}/setup.py +3 -2
  4. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/__version.py +1 -1
  5. multipyvu-3.1.1/src/MultiPyVu/logging_config.yaml +42 -0
  6. multipyvu-3.1.1/src/MultiPyVu/scripts/helper_scripts.py +118 -0
  7. {multipyvu-3.1.0 → multipyvu-3.1.1/src/MultiPyVu.egg-info}/PKG-INFO +9 -2
  8. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu.egg-info/SOURCES.txt +2 -0
  9. {multipyvu-3.1.0 → multipyvu-3.1.1}/LICENSE +0 -0
  10. {multipyvu-3.1.0 → multipyvu-3.1.1}/pyproject.toml +0 -0
  11. {multipyvu-3.1.0 → multipyvu-3.1.1}/setup.cfg +0 -0
  12. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/BRT.py +0 -0
  13. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/CommandChamber.py +0 -0
  14. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/CommandField.py +0 -0
  15. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/CommandMultiVu.py +0 -0
  16. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/CommandSdo.py +0 -0
  17. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/CommandTemperature.py +0 -0
  18. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/CommandWaitFor.py +0 -0
  19. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/Command_factory.py +0 -0
  20. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/ICommand.py +0 -0
  21. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/IEventManager.py +0 -0
  22. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/IServer.py +0 -0
  23. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuClient.py +0 -0
  24. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuClient_base.py +0 -0
  25. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuDataFile/MultiVuDataFile.py +0 -0
  26. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuDataFile/__init__.py +0 -0
  27. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuDataFile/__version.py +0 -0
  28. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuDataFile/is_pathname_valid.py +0 -0
  29. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/MultiVuServer.py +0 -0
  30. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/ParseInputs.py +0 -0
  31. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/SocketMessage.py +0 -0
  32. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/SocketMessageClient.py +0 -0
  33. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/SocketMessageServer.py +0 -0
  34. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/__init__.py +0 -0
  35. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/__main__.py +0 -0
  36. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/check_windows_esc.py +0 -0
  37. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/exceptions.py +0 -0
  38. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/font/Play-Bold.ttf +0 -0
  39. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/font/Play-Regular.ttf +0 -0
  40. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/generate_sdo_objects.py +0 -0
  41. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/gui/Controller.py +0 -0
  42. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/gui/IController.py +0 -0
  43. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/gui/IView.py +0 -0
  44. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/gui/ViewFactory.py +0 -0
  45. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/gui/ViewTk.py +0 -0
  46. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/gui/__init__.py +0 -0
  47. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/images/Q.png +0 -0
  48. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/images/QD_logo.jpg +0 -0
  49. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/instrument.py +0 -0
  50. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/logging_config.py +0 -0
  51. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/project_vars.py +0 -0
  52. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/scripts/whats_my_ip_address.cmd +0 -0
  53. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu/sdo_object.py +0 -0
  54. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu.egg-info/dependency_links.txt +0 -0
  55. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu.egg-info/requires.txt +0 -0
  56. {multipyvu-3.1.0 → multipyvu-3.1.1}/src/MultiPyVu.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: MultiPyVu
3
- Version: 3.1.0
3
+ Version: 3.1.1
4
4
  Summary: Control MultiVu using Python
5
5
  Author-email: Damon D Jackson <djackson@qdusa.com>
6
6
  Maintainer-email: "Quantum Design, Inc." <apps@qdusa.com>
@@ -436,17 +436,24 @@ client = mpv.Client(port=6000)
436
436
  - A log file named QdMultiVu.log shows the traffic between the server and client which can also be useful during troubleshooting.
437
437
 
438
438
  ## Changelog<a class="anchor" id="changelog"></a>
439
+ **3.1.1**
440
+ - October 2024
441
+ - Updated the installer to include missing files.
442
+
439
443
  **3.1.0**
440
444
  - October 2024
441
445
  - Log the version number when the Client connects to the Server.
442
446
  - Check that the Server and Client are running the same version.
443
447
  - Increase the number of backup logs to 5.
444
448
  - Bugfix to allow Client to run on Linux or Mac systems.
445
- - Corrected a bug that prevented the Server from recognizing PPMS and MPMS3 MultiVu flavors
446
449
  - Limit server to hosting only one client at a time.
447
450
  - Add the ability to call -quit, -is_running, -status, -get_ip from the command line using python -m MultiPyVu
448
451
  - Miscellaneous bug fixes and refactoring.
449
452
 
453
+ **2.2.0**
454
+ - January 2024
455
+ - Corrected a bug that prevented the Server from recognizing PPMS and MPMS3 MultiVu flavors
456
+
450
457
  **2.1.4**
451
458
  - October 2023
452
459
  - Import full module as MultiPyVu. Instead of loading the three sub-modules as:
@@ -390,17 +390,24 @@ client = mpv.Client(port=6000)
390
390
  - A log file named QdMultiVu.log shows the traffic between the server and client which can also be useful during troubleshooting.
391
391
 
392
392
  ## Changelog<a class="anchor" id="changelog"></a>
393
+ **3.1.1**
394
+ - October 2024
395
+ - Updated the installer to include missing files.
396
+
393
397
  **3.1.0**
394
398
  - October 2024
395
399
  - Log the version number when the Client connects to the Server.
396
400
  - Check that the Server and Client are running the same version.
397
401
  - Increase the number of backup logs to 5.
398
402
  - Bugfix to allow Client to run on Linux or Mac systems.
399
- - Corrected a bug that prevented the Server from recognizing PPMS and MPMS3 MultiVu flavors
400
403
  - Limit server to hosting only one client at a time.
401
404
  - Add the ability to call -quit, -is_running, -status, -get_ip from the command line using python -m MultiPyVu
402
405
  - Miscellaneous bug fixes and refactoring.
403
406
 
407
+ **2.2.0**
408
+ - January 2024
409
+ - Corrected a bug that prevented the Server from recognizing PPMS and MPMS3 MultiVu flavors
410
+
404
411
  **2.1.4**
405
412
  - October 2023
406
413
  - Import full module as MultiPyVu. Instead of loading the three sub-modules as:
@@ -46,8 +46,9 @@ setup(
46
46
  "images/*.jpg",
47
47
  "images/*.png",
48
48
  "font/*.ttf",
49
- "scripts/*.cmd",
50
- "MultiVuDataFile/*.py"
49
+ "scripts/*",
50
+ "MultiVuDataFile/*.py",
51
+ "logging_config.yaml"
51
52
  ]
52
53
  },
53
54
  python_requires=">=3.8",
@@ -1,2 +1,2 @@
1
1
  # -*- coding: utf-8 -*-
2
- __version__ = "3.1.0"
2
+ __version__ = "3.1.1"
@@ -0,0 +1,42 @@
1
+ version: 1
2
+ disable_existing_loggers: True
3
+ formatters:
4
+ show_name:
5
+ format: '%(name)s - %(message)s'
6
+ no_name:
7
+ format: '%(message)s'
8
+ debug:
9
+ format: '%(asctime)-27s %(name)-20s %(levelname)-8s %(message)s'
10
+ gui:
11
+ format: '%(asctime)s - %(message)s'
12
+ datefmt: '%m-%d %H:%M'
13
+ handlers:
14
+ console:
15
+ class: logging.StreamHandler
16
+ level: INFO
17
+ formatter: show_name
18
+ stream: ext://sys.stdout
19
+ file:
20
+ class: logging.handlers.RotatingFileHandler
21
+ level: DEBUG
22
+ formatter: debug
23
+ filename: debug
24
+ maxBytes: 4194304 # 2^22
25
+ backupCount: 5
26
+ loggers:
27
+ MultiVuServer:
28
+ level: DEBUG
29
+ handlers: [console, file]
30
+ text_widget: text_widget
31
+ propagate: False
32
+ MultiVuClient:
33
+ level: DEBUG
34
+ handlers: [console, file]
35
+ propagate: False
36
+ UnitTest:
37
+ level: DEBUG
38
+ handlers: [console, file]
39
+ propagate: False
40
+ root:
41
+ level: WARNING
42
+ handlers: [console]
@@ -0,0 +1,118 @@
1
+ """
2
+ A few helpful scripts used in the MultiPyVu module
3
+ """
4
+
5
+ from os import path
6
+ from sys import platform
7
+ import subprocess
8
+ import re
9
+
10
+ from MultiPyVu.MultiVuClient import Client
11
+
12
+
13
+ def absolute_path(filename: str) -> str:
14
+ """
15
+ Finds the absolute path of a file based on its location
16
+ relative to the gui module
17
+
18
+ Parameters:
19
+ -----------
20
+ filename: str
21
+ The file location based on its relative path from the gui module
22
+ """
23
+ abs_path = path.abspath(
24
+ path.join(path.dirname(
25
+ __file__), './'))
26
+ return path.join(abs_path, filename)
27
+
28
+
29
+ def get_ip():
30
+ """
31
+ The IP address for the computer
32
+
33
+ Returns:
34
+ --------
35
+ String with the IP address
36
+ """
37
+ ip_output_str = ''
38
+ search_str = r'([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3})'
39
+ if platform == 'win32':
40
+ ip_addr_script = 'whats_my_ip_address.cmd'
41
+ ip_addr_script = absolute_path(ip_addr_script)
42
+ proc = subprocess.run([ip_addr_script],
43
+ capture_output=True,
44
+ text=True)
45
+ if proc.returncode != 0:
46
+ print(proc.stderr)
47
+ raise Exception(proc.stderr)
48
+ ip_result = re.findall(search_str, proc.stdout)
49
+ if len(ip_result) == 1:
50
+ ip_address = ip_result[0]
51
+ else:
52
+ # using this suggestion:
53
+ # https://apple.stackexchange.com/questions/20547/how-do-i-find-my-ip-address-from-the-command-line
54
+ ifconfig_proc = subprocess.Popen(["ifconfig"],
55
+ stdout=subprocess.PIPE,
56
+ text=True)
57
+ grep_proc = subprocess.Popen(["grep", "inet"],
58
+ stdin=ifconfig_proc.stdout,
59
+ stdout=subprocess.PIPE,
60
+ text=True)
61
+ ip_output_str, err = grep_proc.communicate()
62
+ if err is not None:
63
+ print(err)
64
+ raise Exception(grep_proc.stderr)
65
+ ip_result = re.findall(search_str, ip_output_str)
66
+ if '127.0.0.1' in ip_result:
67
+ ip_result.remove('127.0.0.1')
68
+ if len(ip_result) >= 1:
69
+ ip_address = ip_result[0]
70
+ return ip_address
71
+
72
+
73
+ def run_status(ip: str, port: int):
74
+ """
75
+ Queries the server for its status.
76
+ """
77
+ ip_address = ip
78
+ if ip_address == '0.0.0.0':
79
+ ip_address = 'localhost'
80
+
81
+ client = Client(host=ip_address,
82
+ port=port)
83
+ response = client.get_server_status()
84
+ print(f'Server status: {response}')
85
+
86
+
87
+ def is_running(ip: str, port: int):
88
+ """
89
+ Queries the server to see if it is running
90
+ """
91
+ ip_address = ip
92
+ if ip_address == '0.0.0.0':
93
+ ip_address = 'localhost'
94
+
95
+ client = Client(host=ip_address,
96
+ port=port)
97
+ response = client.is_server_running()
98
+ if response:
99
+ print(f'Server is running at {client.address}')
100
+ else:
101
+ print(f'Server not running at {client.address}')
102
+
103
+
104
+ def force_quit(ip: str, port: int) -> str:
105
+ """
106
+ Quits the server.
107
+ """
108
+ ip_address = ip
109
+ if ip_address == '0.0.0.0':
110
+ ip_address = 'localhost'
111
+
112
+ client = Client(host=ip_address,
113
+ port=port)
114
+ response = client.force_quit_server()
115
+ if response:
116
+ return response
117
+ else:
118
+ return f'Sent quit command to {client.address}'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: MultiPyVu
3
- Version: 3.1.0
3
+ Version: 3.1.1
4
4
  Summary: Control MultiVu using Python
5
5
  Author-email: Damon D Jackson <djackson@qdusa.com>
6
6
  Maintainer-email: "Quantum Design, Inc." <apps@qdusa.com>
@@ -436,17 +436,24 @@ client = mpv.Client(port=6000)
436
436
  - A log file named QdMultiVu.log shows the traffic between the server and client which can also be useful during troubleshooting.
437
437
 
438
438
  ## Changelog<a class="anchor" id="changelog"></a>
439
+ **3.1.1**
440
+ - October 2024
441
+ - Updated the installer to include missing files.
442
+
439
443
  **3.1.0**
440
444
  - October 2024
441
445
  - Log the version number when the Client connects to the Server.
442
446
  - Check that the Server and Client are running the same version.
443
447
  - Increase the number of backup logs to 5.
444
448
  - Bugfix to allow Client to run on Linux or Mac systems.
445
- - Corrected a bug that prevented the Server from recognizing PPMS and MPMS3 MultiVu flavors
446
449
  - Limit server to hosting only one client at a time.
447
450
  - Add the ability to call -quit, -is_running, -status, -get_ip from the command line using python -m MultiPyVu
448
451
  - Miscellaneous bug fixes and refactoring.
449
452
 
453
+ **2.2.0**
454
+ - January 2024
455
+ - Corrected a bug that prevented the Server from recognizing PPMS and MPMS3 MultiVu flavors
456
+
450
457
  **2.1.4**
451
458
  - October 2023
452
459
  - Import full module as MultiPyVu. Instead of loading the three sub-modules as:
@@ -28,6 +28,7 @@ src/MultiPyVu/exceptions.py
28
28
  src/MultiPyVu/generate_sdo_objects.py
29
29
  src/MultiPyVu/instrument.py
30
30
  src/MultiPyVu/logging_config.py
31
+ src/MultiPyVu/logging_config.yaml
31
32
  src/MultiPyVu/project_vars.py
32
33
  src/MultiPyVu/sdo_object.py
33
34
  src/MultiPyVu.egg-info/PKG-INFO
@@ -49,4 +50,5 @@ src/MultiPyVu/gui/ViewTk.py
49
50
  src/MultiPyVu/gui/__init__.py
50
51
  src/MultiPyVu/images/Q.png
51
52
  src/MultiPyVu/images/QD_logo.jpg
53
+ src/MultiPyVu/scripts/helper_scripts.py
52
54
  src/MultiPyVu/scripts/whats_my_ip_address.cmd
File without changes
File without changes
File without changes