sciveo 0.1.48__tar.gz → 0.1.49__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 (155) hide show
  1. {sciveo-0.1.48 → sciveo-0.1.49}/PKG-INFO +1 -1
  2. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/cli.py +2 -2
  3. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/monitoring/process/memory.py +1 -1
  4. sciveo-0.1.49/sciveo/monitoring/watchdog/memory.py +37 -0
  5. sciveo-0.1.49/sciveo/version.py +2 -0
  6. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo.egg-info/PKG-INFO +1 -1
  7. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo.egg-info/SOURCES.txt +2 -1
  8. sciveo-0.1.48/sciveo/version.py +0 -2
  9. {sciveo-0.1.48 → sciveo-0.1.49}/README.md +0 -0
  10. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/__init__.py +0 -0
  11. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/api/__init__.py +0 -0
  12. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/api/base.py +0 -0
  13. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/api/upload.py +0 -0
  14. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/common/__init__.py +0 -0
  15. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/common/configuration.py +0 -0
  16. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/common/model.py +0 -0
  17. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/common/optimizers.py +0 -0
  18. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/common/sampling.py +0 -0
  19. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/content/__init__.py +0 -0
  20. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/content/dataset.py +0 -0
  21. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/content/experiment.py +0 -0
  22. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/content/project.py +0 -0
  23. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/content/runner.py +0 -0
  24. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/__init__.py +0 -0
  25. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/__init__.py +0 -0
  26. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/base.py +0 -0
  27. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/encoders/__init__.py +0 -0
  28. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/encoders/base.py +0 -0
  29. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/encoders/normalizer.py +0 -0
  30. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/nlp/__init__.py +0 -0
  31. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/nlp/search.py +0 -0
  32. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/time_series/__init__.py +0 -0
  33. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/time_series/dataset.py +0 -0
  34. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/time_series/predictor.py +0 -0
  35. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/time_series/trainer.py +0 -0
  36. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/ml/time_series/window_generator.py +0 -0
  37. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/__init__.py +0 -0
  38. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/base.py +0 -0
  39. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/job_daemon.py +0 -0
  40. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/layouts/__init__.py +0 -0
  41. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/layouts/base.py +0 -0
  42. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/pipeline.py +0 -0
  43. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/postprocessors/__init__.py +0 -0
  44. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/postprocessors/base.py +0 -0
  45. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/postprocessors/default.py +0 -0
  46. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/__init__.py +0 -0
  47. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/audio/__init__.py +0 -0
  48. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/audio/audio.py +0 -0
  49. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/audio/audio_extractor_process.py +0 -0
  50. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/aws.py +0 -0
  51. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/base.py +0 -0
  52. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/file/__init__.py +0 -0
  53. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/file/archive.py +0 -0
  54. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/__init__.py +0 -0
  55. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/album.py +0 -0
  56. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/album_in_image.py +0 -0
  57. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/depth_esimation.py +0 -0
  58. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/embeddings.py +0 -0
  59. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/filters.py +0 -0
  60. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/generators.py +0 -0
  61. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/histogram.py +0 -0
  62. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/mask.py +0 -0
  63. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/object_detection.py +0 -0
  64. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/resize.py +0 -0
  65. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/segmentation.py +0 -0
  66. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/image/watermark.py +0 -0
  67. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/media_info.py +0 -0
  68. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/nlp/__init__.py +0 -0
  69. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/nlp/address.py +0 -0
  70. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/qr.py +0 -0
  71. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/sci/__init__.py +0 -0
  72. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/sci/base.py +0 -0
  73. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/sci/dataset.py +0 -0
  74. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/sci/time_series/__init__.py +0 -0
  75. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/sci/time_series/predictor.py +0 -0
  76. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/sci/time_series/trainer.py +0 -0
  77. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/tpu_base.py +0 -0
  78. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/__init__.py +0 -0
  79. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/generators.py +0 -0
  80. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/motion_detection.py +0 -0
  81. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/resize.py +0 -0
  82. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/video_album.py +0 -0
  83. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/video_frames.py +0 -0
  84. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/processors/video/video_resample.py +0 -0
  85. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/queues.py +0 -0
  86. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/server.py +0 -0
  87. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/web/__init__.py +0 -0
  88. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/pipelines/web/server.py +0 -0
  89. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/tools/__init__.py +0 -0
  90. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/media/tools/nvr.py +0 -0
  91. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/__init__.py +0 -0
  92. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/base.py +0 -0
  93. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/dataset/__init__.py +0 -0
  94. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/dataset/object_detection.py +0 -0
  95. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/evaluation/__init__.py +0 -0
  96. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/evaluation/object_detection.py +0 -0
  97. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/__init__.py +0 -0
  98. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/base.py +0 -0
  99. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/description.py +0 -0
  100. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/embeddings.py +0 -0
  101. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/object_detection.py +0 -0
  102. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/segmentation.py +0 -0
  103. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/tools.py +0 -0
  104. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/images/transformers.py +0 -0
  105. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/nlp/__init__.py +0 -0
  106. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/nlp/embeddings.py +0 -0
  107. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/nlp/tokenizers/__init__.py +0 -0
  108. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/nlp/tokenizers/bpe.py +0 -0
  109. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/video/__init__.py +0 -0
  110. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/ml/video/description.py +0 -0
  111. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/monitoring/__init__.py +0 -0
  112. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/monitoring/monitor.py +0 -0
  113. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/monitoring/start.py +0 -0
  114. {sciveo-0.1.48/sciveo/monitoring/process → sciveo-0.1.49/sciveo/monitoring/watchdog}/__init__.py +0 -0
  115. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/network/__init__.py +0 -0
  116. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/network/camera.py +0 -0
  117. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/network/sniffer.py +0 -0
  118. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/network/tools.py +0 -0
  119. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/__init__.py +0 -0
  120. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/array.py +0 -0
  121. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/aws/__init__.py +0 -0
  122. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/aws/priority_queue.py +0 -0
  123. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/aws/s3.py +0 -0
  124. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/common.py +0 -0
  125. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/complexity.py +0 -0
  126. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/compress.py +0 -0
  127. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/configuration.py +0 -0
  128. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/crypto.py +0 -0
  129. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/daemon.py +0 -0
  130. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/formating.py +0 -0
  131. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/hardware.py +0 -0
  132. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/http.py +0 -0
  133. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/logger.py +0 -0
  134. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/os.py +0 -0
  135. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/queue.py +0 -0
  136. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/random.py +0 -0
  137. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/remote.py +0 -0
  138. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/simple_counter.py +0 -0
  139. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/synchronized.py +0 -0
  140. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo/tools/timers.py +0 -0
  141. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo.egg-info/dependency_links.txt +0 -0
  142. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo.egg-info/entry_points.txt +0 -0
  143. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo.egg-info/requires.txt +0 -0
  144. {sciveo-0.1.48 → sciveo-0.1.49}/sciveo.egg-info/top_level.txt +0 -0
  145. {sciveo-0.1.48 → sciveo-0.1.49}/setup.cfg +0 -0
  146. {sciveo-0.1.48 → sciveo-0.1.49}/setup.py +0 -0
  147. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_complexity.py +0 -0
  148. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_compress.py +0 -0
  149. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_configuration.py +0 -0
  150. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_crypto.py +0 -0
  151. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_ml_datasets.py +0 -0
  152. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_monitoring.py +0 -0
  153. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_runner.py +0 -0
  154. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_sampling.py +0 -0
  155. {sciveo-0.1.48 → sciveo-0.1.49}/test/test_tokenizers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sciveo
3
- Version: 0.1.48
3
+ Version: 0.1.49
4
4
  Description-Content-Type: text/markdown
5
5
  Provides-Extra: mon
6
6
  Provides-Extra: net
@@ -91,10 +91,10 @@ def main():
91
91
  from sciveo.media.pipelines.processors.audio.audio_extractor_process import plot_audio
92
92
  plot_audio(args.width, args.height, args.rate, args.input_path, args.output_path)
93
93
  elif args.command == 'maintenance':
94
- from sciveo.monitoring.process.memory import MemoryMonitorCommandDaemon
94
+ from sciveo.monitoring.watchdog.memory import MemoryWatchDogDaemon
95
95
  daemons = []
96
96
  if args.execute is not None:
97
- daemons.append(MemoryMonitorCommandDaemon(threshold_percent=args.threshold, period=args.period, command=args.execute))
97
+ daemons.append(MemoryWatchDogDaemon(threshold_percent=args.threshold, period=args.period, command=args.execute))
98
98
  for daemon in daemons:
99
99
  daemon.start()
100
100
  while(True):
@@ -20,7 +20,7 @@ from sciveo.tools.logger import *
20
20
  from sciveo.tools.simple_counter import RunCounter
21
21
 
22
22
 
23
- class MemoryMonitorCommandDaemon(DaemonBase):
23
+ class MemoryWatchDogDaemon(DaemonBase):
24
24
  def __init__(self, threshold_percent=90, period=5, command="echo 'Low Memory!'"):
25
25
  super().__init__(period=period)
26
26
  self.threshold_percent = threshold_percent
@@ -0,0 +1,37 @@
1
+ #
2
+ # Pavlin Georgiev, Softel Labs
3
+ #
4
+ # This is a proprietary file and may not be copied,
5
+ # distributed, or modified without express permission
6
+ # from the owner. For licensing inquiries, please
7
+ # contact pavlin@softel.bg.
8
+ #
9
+ # 2025
10
+ #
11
+
12
+
13
+ import psutil
14
+ import subprocess
15
+ import time
16
+ import threading
17
+
18
+ from sciveo.tools.daemon import *
19
+ from sciveo.tools.logger import *
20
+ from sciveo.tools.simple_counter import RunCounter
21
+
22
+
23
+ class MemoryWatchDogDaemon(DaemonBase):
24
+ def __init__(self, threshold_percent=90, period=5, command="echo '⚠️ Low Memory!'"):
25
+ super().__init__(period=period)
26
+ self.threshold_percent = threshold_percent
27
+ self.command = command
28
+ self.used_percent = 0
29
+ self.printer = RunCounter(60, lambda: debug(f"Memory usage: {self.used_percent}%", f"threshold: {self.threshold_percent}%"))
30
+
31
+ def loop(self):
32
+ mem = psutil.virtual_memory()
33
+ self.used_percent = mem.percent
34
+ self.printer.run()
35
+ if self.used_percent > self.threshold_percent:
36
+ warning(f"⚠️ Memory usage {self.used_percent}% exceeded {self.threshold_percent}%, executing command: {self.command}")
37
+ subprocess.run(self.command, shell=True)
@@ -0,0 +1,2 @@
1
+
2
+ __version__ = '0.1.49'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sciveo
3
- Version: 0.1.48
3
+ Version: 0.1.49
4
4
  Description-Content-Type: text/markdown
5
5
  Provides-Extra: mon
6
6
  Provides-Extra: net
@@ -112,8 +112,9 @@ sciveo/ml/video/description.py
112
112
  sciveo/monitoring/__init__.py
113
113
  sciveo/monitoring/monitor.py
114
114
  sciveo/monitoring/start.py
115
- sciveo/monitoring/process/__init__.py
116
115
  sciveo/monitoring/process/memory.py
116
+ sciveo/monitoring/watchdog/__init__.py
117
+ sciveo/monitoring/watchdog/memory.py
117
118
  sciveo/network/__init__.py
118
119
  sciveo/network/camera.py
119
120
  sciveo/network/sniffer.py
@@ -1,2 +0,0 @@
1
-
2
- __version__ = '0.1.48'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes