portacode 1.4.13.dev9__py3-none-any.whl → 1.4.13.dev10__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.
portacode/_version.py CHANGED
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '1.4.13.dev9'
32
- __version_tuple__ = version_tuple = (1, 4, 13, 'dev9')
31
+ __version__ = version = '1.4.13.dev10'
32
+ __version_tuple__ = version_tuple = (1, 4, 13, 'dev10')
33
33
 
34
34
  __commit_id__ = commit_id = None
@@ -198,9 +198,6 @@ def _get_cgroup_cpu_percent() -> Optional[float]:
198
198
  usage = _read_cgroup_cpu_usage()
199
199
  if usage is None:
200
200
  return None
201
- limit_cpus = _read_cgroup_cpu_limit()
202
- if limit_cpus is None or limit_cpus <= 0:
203
- return None
204
201
  now = time.monotonic()
205
202
  global _last_cgroup_usage, _last_cgroup_time
206
203
  prev_usage = _last_cgroup_usage
@@ -214,8 +211,13 @@ def _get_cgroup_cpu_percent() -> Optional[float]:
214
211
  if delta_time <= 0 or delta_usage < 0:
215
212
  return None
216
213
  cpu_ratio = (delta_usage / 1_000_000) / delta_time
217
- percent = (cpu_ratio / limit_cpus) * 100.0
218
- return min(percent, 100.0)
214
+ limit_cpus = _read_cgroup_cpu_limit()
215
+ if limit_cpus and limit_cpus > 0:
216
+ percent = (cpu_ratio / limit_cpus) * 100.0
217
+ else:
218
+ cpu_count = psutil.cpu_count(logical=True) or 1
219
+ percent = (cpu_ratio / cpu_count) * 100.0
220
+ return max(0.0, min(percent, 100.0))
219
221
 
220
222
 
221
223
  def _run_probe_command(cmd: list[str]) -> str | None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: portacode
3
- Version: 1.4.13.dev9
3
+ Version: 1.4.13.dev10
4
4
  Summary: Portacode CLI client and SDK
5
5
  Home-page: https://github.com/portacode/portacode
6
6
  Author: Meena Erian
@@ -1,7 +1,7 @@
1
1
  portacode/README.md,sha256=4dKtpvR8LNgZPVz37GmkQCMWIr_u25Ao63iW56s7Ke4,775
2
2
  portacode/__init__.py,sha256=oB3sV1wXr-um-RXio73UG8E5Xx6cF2ZVJveqjNmC-vQ,1086
3
3
  portacode/__main__.py,sha256=jmHTGC1hzmo9iKJLv-SSYe9BSIbPPZ2IOpecI03PlTs,296
4
- portacode/_version.py,sha256=ZSjwVSR47mg9NxQs9KfKq7HWjbxgX3-fWsuoIrDnPQc,719
4
+ portacode/_version.py,sha256=U2EKSWYRJkwX2iDCL-xl_a57oBp4wmZQrD95MJrxg_s,721
5
5
  portacode/cli.py,sha256=mGLKoZ-T2FBF7IA9wUq0zyG0X9__-A1ao7gajjcVRH8,21828
6
6
  portacode/data.py,sha256=5-s291bv8J354myaHm1Y7CQZTZyRzMU3TGe5U4hb-FA,1591
7
7
  portacode/keypair.py,sha256=0OO4vHDcF1XMxCDqce61xFTlFwlTcmqe5HyGsXFEt7s,5838
@@ -25,7 +25,7 @@ portacode/connection/handlers/project_state_handlers.py,sha256=v6ZefGW9i7n1aZLq2
25
25
  portacode/connection/handlers/proxmox_infra.py,sha256=v2IftCXnNO8ta8dWfdXf_eRBAeFO6YxkFTCSuTrp5ss,61134
26
26
  portacode/connection/handlers/registry.py,sha256=qXGE60sYEWg6ZtVQzFcZ5YI2XWR6lMgw4hAL9x5qR1I,6181
27
27
  portacode/connection/handlers/session.py,sha256=uNGfiO_1B9-_yjJKkpvmbiJhIl6b-UXlT86UTfd6WYE,42219
28
- portacode/connection/handlers/system_handlers.py,sha256=N3sxNqoWS7KKhAk1nwhPpkCfQv1GbVKenv2NwAYeK34,13477
28
+ portacode/connection/handlers/system_handlers.py,sha256=mH3kxmOBInnnHtwwNHYjvU80U3Ok5TzpsGyIbSRA4QE,13579
29
29
  portacode/connection/handlers/tab_factory.py,sha256=yn93h6GASjD1VpvW1oqpax3EpoT0r7r97zFXxML1wdA,16173
30
30
  portacode/connection/handlers/terminal_handlers.py,sha256=HRwHW1GiqG1NtHVEqXHKaYkFfQEzCDDH6YIlHcb4XD8,11866
31
31
  portacode/connection/handlers/test_proxmox_infra.py,sha256=d6iBB4pwAqWWdEGRayLxDEexqCElbGZDJlCB4bXba24,682
@@ -65,7 +65,7 @@ portacode/utils/__init__.py,sha256=NgBlWTuNJESfIYJzP_3adI1yJQJR0XJLRpSdVNaBAN0,3
65
65
  portacode/utils/diff_apply.py,sha256=4Oi7ft3VUCKmiUE4VM-OeqO7Gk6H7PF3WnN4WHXtjxI,15157
66
66
  portacode/utils/diff_renderer.py,sha256=S76StnQ2DLfsz4Gg0m07UwPfRp8270PuzbNaQq-rmYk,13850
67
67
  portacode/utils/ntp_clock.py,sha256=VqCnWCTehCufE43W23oB-WUdAZGeCcLxkmIOPwInYHc,2499
68
- portacode-1.4.13.dev9.dist-info/licenses/LICENSE,sha256=2FGbCnUDgRYuQTkB1O1dUUpu5CVAjK1j4_p6ack9Z54,1066
68
+ portacode-1.4.13.dev10.dist-info/licenses/LICENSE,sha256=2FGbCnUDgRYuQTkB1O1dUUpu5CVAjK1j4_p6ack9Z54,1066
69
69
  test_modules/README.md,sha256=Do_agkm9WhSzueXjRAkV_xEj6Emy5zB3N3VKY5Roce8,9274
70
70
  test_modules/__init__.py,sha256=1LcbHodIHsB0g-g4NGjSn6AMuCoGbymvXPYLOb6Z7F0,53
71
71
  test_modules/test_device_online.py,sha256=QtYq0Dq9vME8Gp2O4fGSheqVf8LUtpsSKosXXk56gGM,1654
@@ -91,8 +91,8 @@ testing_framework/core/playwright_manager.py,sha256=Tw46qwxIhOFkS48C2IWIQHHNpEe-
91
91
  testing_framework/core/runner.py,sha256=j2QwNJmAxVBmJvcbVS7DgPJUKPNzqfLmt_4NNdaKmZU,19297
92
92
  testing_framework/core/shared_cli_manager.py,sha256=BESSNtyQb7BOlaOvZmm04T8Uezjms4KCBs2MzTxvzYQ,8790
93
93
  testing_framework/core/test_discovery.py,sha256=2FZ9fJ8Dp5dloA-fkgXoJ_gCMC_nYPBnA3Hs2xlagzM,4928
94
- portacode-1.4.13.dev9.dist-info/METADATA,sha256=XrvTrxRde9mNvinPiBvLoJX-dzUZKdqJmY1QY4gbxCc,13051
95
- portacode-1.4.13.dev9.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
96
- portacode-1.4.13.dev9.dist-info/entry_points.txt,sha256=lLUUL-BM6_wwe44Xv0__5NQ1BnAz6jWjSMFvZdWW3zU,48
97
- portacode-1.4.13.dev9.dist-info/top_level.txt,sha256=TGhTYUxfW8SyVZc_zGgzjzc24gGT7nSw8Qf73liVRKM,41
98
- portacode-1.4.13.dev9.dist-info/RECORD,,
94
+ portacode-1.4.13.dev10.dist-info/METADATA,sha256=Wyj8cxL1Yfo287OncA94KT2rzqpDN4-QE67BBuB9agM,13052
95
+ portacode-1.4.13.dev10.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
96
+ portacode-1.4.13.dev10.dist-info/entry_points.txt,sha256=lLUUL-BM6_wwe44Xv0__5NQ1BnAz6jWjSMFvZdWW3zU,48
97
+ portacode-1.4.13.dev10.dist-info/top_level.txt,sha256=TGhTYUxfW8SyVZc_zGgzjzc24gGT7nSw8Qf73liVRKM,41
98
+ portacode-1.4.13.dev10.dist-info/RECORD,,